From: "Howard M. Lewis Ship" <[EMAIL PROTECTED]> >> 2) The selection of which implementation to use is performed >> late. The selection is based on >> - data in the method arguments >> - the services in the stack calling this one >> - the configuration >> the method parameters. It acts like a big if statement. > Those almost look like AOP method introductions; this doesn't have a parallel in HiveMind per se. Yes hivemind does not seem to allow multiple implementations for the same interface, and choose the one to use each time it is called. This late binding is a key part of this framework.
--- >> The lookup is hidden from callers by a class that simply has >> all the interfaces as methods, performs the lookup and then >> calls the implementation. > I'm not following this; in HiveMind services are represented by interfaces; the implementation of > the interface may be a fabricated proxy or interceptor, or a user-supplied core implementation (or a > fabricated core implementation). Yes, services are represented by interfaces, with an implementation that may be decorated with a fabricated proxy. To achieve this you need a lookup to get the correct implementation class for the interface. (In hivemind this is performed by a set method on the implementation, but that won't work for late binding singletons. --- Stephen --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
