Details
-
New Feature
-
Status: Open
-
Major
-
Resolution: Unresolved
-
1.0
-
None
Description
Implement a strategy-based ObjectProvider. Basically, the provider would choose different strategy objects (that implement the service interface) based on information obtained at runtime during the method invocation. One example would be a strategy-based provider which chose its strategy object based on the type of object passed in as one of the method parameters (similar to HiveMind's strategy support). For example, suppose I have a service interface like:
public interface Renderer { public void render(Shape shape); }
and I want to provide different implementations for Circle, Rectangle, Triangle, etc., then I would provide a mapping from those types to implementation objects that also implement Renderer. Proxy would create a dynamic proxy that would choose which implementation object to use at runtime based on the type of shape passed in to the render method.