Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [higgins-dev] adding args (extending APIs)

I was talking to Duane yesterday about this.  He wondered if it would work to change behavior of a method by updating settings.  For example, one could say (in the settings) "always dereference <these> attributes when reading them", at some point that setting could be changed, then all reads after that setting-change happened would behave differently.


If we like this approach, there are some things to consider.  For example; how do we update settings?  Right now, IContext isn't even configurable.  However, if it were, I suppose one would call IConfigurableComponent.configure().  But I doubt implementations of that call are smart enough to do a "diff" between the old maps and the new maps.  More likely, the component would be completely reconfigured (or some exception might be thrown).



>>> "Jim Sermersheim" <jimse@xxxxxxxxxx> 06/09/08 8:00 PM >>>

So, this bug wants to make it possible for an IdAS consumer to specify whether attribute values (which are references) be auto-dereferenced when read.


I've identified a few methods where this behavior is applicable.  It's not hard to add another argument to those existing methods (but that would break anyone currently calling those methods).  It's also not hard to add overloaded versions of those methods.


But this kind of brings back the old topic of API extensibility.  Do we want to change or overload methods as we come up with new arguments/behaviors?  Or should we do something else (along the lines of what has been discussed at http://wiki.eclipse.org/IdAS_API_Extensibility)?


Jim


Back to the top