Hi, > From: Berin Loritsch <[EMAIL PROTECTED]>> > The reason here is that the two work > interfaces are very closely > > related, but nevertheless they are two different interfaces and it would > > be undesirable to merge the two interfaces. My current workaround (with > > Fortress) is to separate the interfaces and to use > > DelegatingTimeProvider as the TimeProvider implementation: > > > > As an FYI, static values do not inherit. They are scoped by the enclosing > interface. So in your example:
Damn I failed to realize this my self: interface extention does not allow constant inheritance because this would result in multiple inheritance issues. > Will get the results you want without having to do all the workaround junk. > The value MutableTimeProvider.ROLE is different than the TimeProvider.ROLE. > > Also, note that by using inheritance, you are essentially saying that all > MutableTimeProviders are TimeProviders and can be used accordingly. You are > not implying that all TimeProviders are MutableTimeProviders, as that would > not be the case. That is the contract you are introducing into your system, > and that should be well understood regardless of what lookup value you use > to get the TimeProvider. > > There is no need to use delegating time providers, etc. > Neeme Praks wrote: I totally went on the wrong premise here. Please disregard my last email on the topic. Thanks for the clarification yet again Berin. Alex --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
