J Aaron Farr wrote:

Nice to see some good discussion happening about this.  I'm going to try
to split this out into another threads.

As for discovery methods:

On Mon, 2003-09-01 at 02:54, Stephen McConnell wrote:


Frankly I don't think the current ServiceManager interface is a good candidate for dynamic service discovery. It does not provide support for the supply of a selection policy and its exception suite needs to be beefed up a lot.




Not the current ServiceManager interface, no. My point was, given the two roles of the ServiceManager (dependency, discovery), I tended to use it more for discovery.

The ServiceLocator example you gave was along the lines of what I was
thinking.  Another option is to first get jndi exporting of services and
then do all service discovery via the jndi bindings.  The discovery
service itself could then also be a JNDI Context or at least provide
one.  Then you get both JNDI exporting and internal service discovery.


This sounds good.




Any downsides to that?


Not that I can see. One thing we need to be careful about is avoiding the addition of features as opposed to declaring a component (in root or child container) that is a recognized as a "facility" (as distinct from component).




Speaking of Contexts, what about the Avalon Context? Is it providing
dependencies or is it a discovery service?



No discovery. Simply containment context established relative to the contextual dependencies declared by a component.


I like what Merlin now
allows us to do in the Context, but I think it's always been confusing
have two lookup objects (Context and ServiceManager).  Currently I tend
to think of the Context as a Container wide configuration object.


Umm, you have me thinking. In Merlin today a component can import standard context entries or you can construct context values within the component deployment directive. Your comment above about "container-wide" get me to thinking about the possibility for the declaration of context keys and bindings at a container level. This would allow me (assembler) to override the value assigned to something like "urn:avalon:home" within the scope of a particular container.


Steve.

--

Stephen J. McConnell
mailto:[EMAIL PROTECTED]

Sent via James running under Merlin as an NT service.
http://avalon.apache.org/sandbox/merlin




--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to