|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.picocontainer.injectors.AbstractInjectionFactory org.picocontainer.gems.adapters.DelegateAdaptorFactory
public class DelegateAdaptorFactory
Mirrored AdaptorFactory for handling delegate methods.
Constructor Summary | |
---|---|
DelegateAdaptorFactory()
Default constructor. |
Method Summary | ||
---|---|---|
|
createComponentAdapter(ComponentMonitor componentMonitor,
LifecycleStrategy lifecycleStrategy,
Properties componentProperties,
Object componentKey,
Class<T> componentImplementation,
Parameter... parameters)
|
|
static
|
createDelegate(Class<INSTANCE> targetType,
String methodName,
Object... parameters)
Generic-friendly instantiation. |
|
static Properties |
createDelegateProprties(Object targetObject,
String methodName,
Object... parameters)
Use this static factory method as a way of creating all the necessary properties that are required by the adapter. |
Methods inherited from class org.picocontainer.injectors.AbstractInjectionFactory |
---|
accept, verify, wrapLifeCycle |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DelegateAdaptorFactory()
Method Detail |
---|
public <T> ComponentAdapter<T> createComponentAdapter(ComponentMonitor componentMonitor, LifecycleStrategy lifecycleStrategy, Properties componentProperties, Object componentKey, Class<T> componentImplementation, Parameter... parameters) throws PicoCompositionException
PicoCompositionException
public static Properties createDelegateProprties(Object targetObject, String methodName, Object... parameters)
Example:
DelegateAdapterFactory factory = new DelegateAdapterFactory(); HttpServletRequest request = .....; //When object is instantiated will lazily call: request.getSession(false); Properties props = createDelegateProperties(request, "getSession", false); DelegateMethodAdapter adapter = createComponentAdapter(new ConsoleComponentMonitor(), new DefaultLifecycleStrategy(), props, HttpSession.class, HttpSession.class);
targetObject
- the object to be operated on.methodName
- the name of the method to invoke.parameters
- the parameters to supply upon invocation. (Also used to find matching argument).
public static <INSTANCE,RETURN_TYPE> DelegateMethod<INSTANCE,RETURN_TYPE> createDelegate(Class<INSTANCE> targetType, String methodName, Object... parameters)
INSTANCE
- RETURN_TYPE
- targetType
- the type of object being instantiated.methodName
- the method name to invoke when called.parameters
- the method paramters to use.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |