org.jvnet.hk2.component
Class InjectionManager

java.lang.Object
  extended by org.jvnet.hk2.component.InjectionManager

public class InjectionManager
extends Object

InjectionManager is responsible for injecting resources into a component. Injection targets are identified by the injection resolver type attribute.

Author:
Jerome Dochez

Nested Class Summary
protected  class InjectionManager.InjectClass
           
protected static class InjectionManager.InjectContext
           
protected  class InjectionManager.InjectField
           
protected  class InjectionManager.InjectFields
           
protected  class InjectionManager.InjectMethod
           
protected  class InjectionManager.InjectMethods
           
 
Constructor Summary
InjectionManager()
           
 
Method Summary
protected  boolean allowInjection(Method method, Class<?>[] paramTypes)
          jsr-330 rules are very forgiving.
protected  void asyncDoInject(InjectionManager.InjectContext ic)
          Prototype for the multi-threaded version of inject().
protected  void error_injectionException(InjectionResolver target, Annotation inject, AnnotatedElement injectionPoint, Throwable e)
           
protected  void error_InjectMethodIsNotVoid(Method method)
           
protected  void handleInjectable(Object component, Object value)
           
 void inject(Object component, Class type, InjectionResolver... targets)
          Initializes the component by performing injection.
 void inject(Object component, Inhabitant<?> onBehalfOf, ExecutorService es, InjectionResolver... targets)
          Initializes the component by performing injection.
 void inject(Object component, Inhabitant<?> onBehalfOf, InjectionResolver... targets)
          Initializes the component by performing injection.
 void inject(Object component, InjectionResolver... targets)
          Initializes the component by performing injection.
protected  void syncDoInject(Object component, Inhabitant<?> onBehalfOf, Class type, InjectionResolver... targets)
          Initializes the component by performing injection.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InjectionManager

public InjectionManager()
Method Detail

inject

public void inject(Object component,
                   InjectionResolver... targets)
Initializes the component by performing injection.

Parameters:
component - component instance to inject
targets - the injection resolvers to resolve all injection points
Throws:
ComponentException - if injection failed for some reason.

inject

public void inject(Object component,
                   Inhabitant<?> onBehalfOf,
                   InjectionResolver... targets)
Initializes the component by performing injection.

Parameters:
component - component instance to inject
onBehalfOf - the inhabitant to do injection on behalf of
targets - the injection resolvers to resolve all injection points
Throws:
ComponentException - if injection failed for some reason.

inject

public void inject(Object component,
                   Inhabitant<?> onBehalfOf,
                   ExecutorService es,
                   InjectionResolver... targets)
Initializes the component by performing injection.

Parameters:
component - component instance to inject
onBehalfOf - the inhabitant to do injection on behalf of
es - the ExecutorService to use in order to handle the work load
targets - the injection resolvers to resolve all injection points
Throws:
ComponentException - if injection failed for some reason.

inject

public void inject(Object component,
                   Class type,
                   InjectionResolver... targets)
Initializes the component by performing injection.

Parameters:
component - component instance to inject
type - component class
targets - the injection resolvers to resolve all injection points
Throws:
ComponentException - if injection failed for some reason.

syncDoInject

protected void syncDoInject(Object component,
                            Inhabitant<?> onBehalfOf,
                            Class type,
                            InjectionResolver... targets)
Initializes the component by performing injection.

Parameters:
component - component instance to inject
onBehalfOf - the inhabitant to do injection on behalf of
type - component class
targets - the injection resolvers to resolve all injection points
Throws:
ComponentException - if injection failed for some reason.

asyncDoInject

protected void asyncDoInject(InjectionManager.InjectContext ic)
Prototype for the multi-threaded version of inject().

Parameters:
component -
onBehalfOf -
type -
es -
targets -

handleInjectable

protected void handleInjectable(Object component,
                                Object value)

error_injectionException

protected void error_injectionException(InjectionResolver target,
                                        Annotation inject,
                                        AnnotatedElement injectionPoint,
                                        Throwable e)

allowInjection

protected boolean allowInjection(Method method,
                                 Class<?>[] paramTypes)
jsr-330 rules are very forgiving.


error_InjectMethodIsNotVoid

protected void error_InjectMethodIsNotVoid(Method method)


Copyright © 2011 Oracle Corporation. All Rights Reserved.