On 9 Oct 2001 02:40:42 GMT, Doug Turner <[EMAIL PROTECTED]> wrote:
>Suppose that the I have an interface that has a flags attribute (long).
> In this interface, I define the first few flags. Then we freeze the
>interface. A month later, I want to add a new flag. Can I?
>
>I am thinking that this change is okay even with a frozen interface -
>adding a new flags is okay - changing existing flags is unthinkable.
I think that as long as the behaviour of the original class remains the
same, this is OK. Its reasonable to require a class which wants the new
functionality these flags give to be updated, though.
However, I don't think that we want "extended" flags, where, for example,
a flag set on a loadgroup would imply different semantics wrt
onstop/onstart. That has the potential to get very confusing ("Class X
will do foo, unless flag x is set, but flag y is not set until after
calling the bar method....")
Implementers _must_ handle flags they don't understand - ie if the only
current values are 0 and 1, a client must handle 3 exactly like 1. I can't
imagine this being a problem, but I guess it should be documented.
>
>thoughts?
>
>
Bradley