org.jboss.injection
Class InjectionUtil

java.lang.Object
  extended by org.jboss.injection.InjectionUtil

public class InjectionUtil
extends Object

Comment

Version:
$Revision: 76876 $
Author:
Bill Burke

Constructor Summary
InjectionUtil()
           
 
Method Summary
static void collapseXmlMethodInjectors(Set<String> visitedMethods, Class clazz, Map<String,Map<AccessibleObject,Injector>> xmlDefinedInjectors, Map<AccessibleObject,Injector> classInjectors)
          This method will take a set of XML loaded injectors and collapse them based on spec inheritance rules It will remove injectors that should not be used in the injection of the base component class.
static void createInjectors(List<Injector> injectors, ClassLoader classLoader, InjectorFactory<?> factory, Collection<org.jboss.metadata.javaee.spec.ResourceInjectionTargetMetaData> injectionTargets)
          Create and add multiple injectors for injection targets.
static AccessibleObject findInjectionTarget(ClassLoader loader, org.jboss.metadata.javaee.spec.ResourceInjectionTargetMetaData target)
           
static Object getAnnotation(Class<? extends Annotation> annotation, EJBContainer container, Class<?> annotatedClass, boolean isContainer)
           
static Object getAnnotation(Class<? extends Annotation> annotation, EJBContainer container, Field field, boolean isContainer)
           
static Object getAnnotation(Class<? extends Annotation> annotation, EJBContainer container, Method method, boolean isContainer)
           
static String getEncName(Class type)
           
static String getEncName(Field field)
           
static String getEncName(Method method)
           
static Class<?> injectionTarget(String encName, org.jboss.metadata.javaee.spec.ResourceInjectionMetaData ref, InjectionContainer container, Map<String,Map<AccessibleObject,Injector>> classInjectors)
           
static
<X extends org.jboss.metadata.javaee.spec.RemoteEnvironment>
Map<AccessibleObject,Injector>
processAnnotations(InjectionContainer container, Collection<InjectionHandler<X>> handlers, Class<?> clazz)
           
static
<X extends org.jboss.metadata.javaee.spec.RemoteEnvironment>
void
processClassAnnotations(InjectionContainer container, Collection<InjectionHandler<X>> handlers, Class<?> clazz)
           
static
<X extends org.jboss.metadata.javaee.spec.RemoteEnvironment>
void
processFieldAnnotations(InjectionContainer container, Collection<InjectionHandler<X>> handlers, Class<?> clazz, Map<AccessibleObject,Injector> classInjectors)
           
static
<X extends org.jboss.metadata.javaee.spec.RemoteEnvironment>
void
processMethodAnnotations(InjectionContainer container, Collection<InjectionHandler<X>> handlers, Set<String> visitedMethods, Class<?> clazz, Map<AccessibleObject,Injector> classInjectors)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InjectionUtil

public InjectionUtil()
Method Detail

collapseXmlMethodInjectors

public static void collapseXmlMethodInjectors(Set<String> visitedMethods,
                                              Class clazz,
                                              Map<String,Map<AccessibleObject,Injector>> xmlDefinedInjectors,
                                              Map<AccessibleObject,Injector> classInjectors)
This method will take a set of XML loaded injectors and collapse them based on spec inheritance rules It will remove injectors that should not be used in the injection of the base component class.

Parameters:
visitedMethods -
clazz -
xmlDefinedInjectors -
classInjectors -

createInjectors

public static void createInjectors(List<Injector> injectors,
                                   ClassLoader classLoader,
                                   InjectorFactory<?> factory,
                                   Collection<org.jboss.metadata.javaee.spec.ResourceInjectionTargetMetaData> injectionTargets)
Create and add multiple injectors for injection targets.

Parameters:
injectors - the list on which to add injectors
classLoader - the class loader to resolve an injection target
factory - the injector factory
injectionTargets - the injection targets

processMethodAnnotations

public static <X extends org.jboss.metadata.javaee.spec.RemoteEnvironment> void processMethodAnnotations(InjectionContainer container,
                                                                                                         Collection<InjectionHandler<X>> handlers,
                                                                                                         Set<String> visitedMethods,
                                                                                                         Class<?> clazz,
                                                                                                         Map<AccessibleObject,Injector> classInjectors)

processFieldAnnotations

public static <X extends org.jboss.metadata.javaee.spec.RemoteEnvironment> void processFieldAnnotations(InjectionContainer container,
                                                                                                        Collection<InjectionHandler<X>> handlers,
                                                                                                        Class<?> clazz,
                                                                                                        Map<AccessibleObject,Injector> classInjectors)

processClassAnnotations

public static <X extends org.jboss.metadata.javaee.spec.RemoteEnvironment> void processClassAnnotations(InjectionContainer container,
                                                                                                        Collection<InjectionHandler<X>> handlers,
                                                                                                        Class<?> clazz)

processAnnotations

public static <X extends org.jboss.metadata.javaee.spec.RemoteEnvironment> Map<AccessibleObject,Injector> processAnnotations(InjectionContainer container,
                                                                                                                             Collection<InjectionHandler<X>> handlers,
                                                                                                                             Class<?> clazz)

findInjectionTarget

public static AccessibleObject findInjectionTarget(ClassLoader loader,
                                                   org.jboss.metadata.javaee.spec.ResourceInjectionTargetMetaData target)

getEncName

public static String getEncName(Class type)

getEncName

public static String getEncName(Method method)

getEncName

public static String getEncName(Field field)

getAnnotation

public static Object getAnnotation(Class<? extends Annotation> annotation,
                                   EJBContainer container,
                                   Class<?> annotatedClass,
                                   boolean isContainer)

getAnnotation

public static Object getAnnotation(Class<? extends Annotation> annotation,
                                   EJBContainer container,
                                   Method method,
                                   boolean isContainer)

getAnnotation

public static Object getAnnotation(Class<? extends Annotation> annotation,
                                   EJBContainer container,
                                   Field field,
                                   boolean isContainer)

injectionTarget

public static Class<?> injectionTarget(String encName,
                                       org.jboss.metadata.javaee.spec.ResourceInjectionMetaData ref,
                                       InjectionContainer container,
                                       Map<String,Map<AccessibleObject,Injector>> classInjectors)


Copyright © 2010 JBoss, a division of Red Hat, Inc.. All Rights Reserved.