Class EJBInjectionEnricher
java.lang.Object
org.jboss.arquillian.testenricher.ejb.EJBInjectionEnricher
- All Implemented Interfaces:
TestEnricher
Enricher that provide EJB class and setter method injection.
- Version:
- $Revision: $
- Author:
- Aslak Knutsen
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected StringattemptToGet31LookupField(jakarta.ejb.EJB annotation) protected ContextvoidgetFieldsWithAnnotation(Class<?> clazz, Class<? extends Annotation> annotation) Obtains all field in the specified class which contain the specified annotationprotected String[]getJndiNamesForAnonymousEJB(Class<?> fieldType) protected voidinjectClass(Object testCase) protected ObjectObject[]protected String[]resolveJNDINames(Class<?> fieldType, String mappedName, String beanName, String lookup) Resolves the JNDI name of the given field.
-
Constructor Details
-
EJBInjectionEnricher
public EJBInjectionEnricher()
-
-
Method Details
-
enrich
- Specified by:
enrichin interfaceTestEnricher
-
resolve
- Specified by:
resolvein interfaceTestEnricher
-
getFieldsWithAnnotation
protected List<Field> getFieldsWithAnnotation(Class<?> clazz, Class<? extends Annotation> annotation) throws IllegalArgumentException Obtains all field in the specified class which contain the specified annotation- Throws:
IllegalArgumentException- If either argument is not specified
-
injectClass
-
attemptToGet31LookupField
protected String attemptToGet31LookupField(jakarta.ejb.EJB annotation) throws IllegalAccessException, InvocationTargetException -
resolveJNDINames
protected String[] resolveJNDINames(Class<?> fieldType, String mappedName, String beanName, String lookup) Resolves the JNDI name of the given field.If mappedName, lookup or beanName are specified, they're used to resolve JNDI name. Otherwise, default policy applies.
If more than one of the mappedName, lookup and beanName
EJBannotation attributes is specified at the same time, anIllegalStateExceptionwill be thrown.- Parameters:
fieldType- annotated field which JNDI name should be resolved.mappedName- Value ofEJB's mappedName attribute.beanName- Value ofEJB's beanName attribute.lookup- Value ofEJB's lookup attribute.- Returns:
- possible JNDI names which should be looked up to access the proper object.
-
getJndiNamesForAnonymousEJB
-
lookupEJB
- Throws:
Exception
-
createContext
- Throws:
Exception
-