org.wamblee.test.inject
Class JavaEETestInjectorFactory

java.lang.Object
  extended by org.wamblee.test.inject.JavaEETestInjectorFactory
All Implemented Interfaces:
InjectorFactory

public class JavaEETestInjectorFactory
extends java.lang.Object
implements InjectorFactory

The test injector factory provides dependency injection of a contextual entity manager using the support/inject mini framework. It supports dependency injection of fields annoted with @PersistenceContext. It only supports one persistence context at the moment. This injector can be easily used together with JpaBuilder.getContextualEntityManager() for obtaining an entity manager in unit test.

The reason it is needed is because standard injection mechanisms (such as weld CDI) do not support entity manager injection in a Java SE environment out of the box.

To use it, construct the factory using one of the available constructors and set InjectorFactoryBuilder.setInjectorFactory(InjectorFactory.

Author:
Erik Brakkee

Constructor Summary
JavaEETestInjectorFactory(javax.persistence.EntityManager aEntityManager)
          Constructs the factory with the default injector factory obtained from InjectorFactoryBuilder.getInjector().
JavaEETestInjectorFactory(javax.persistence.EntityManager aEntityManager, InjectorFactory aInjectorFactory)
          Constructs the factory.
 
Method Summary
 Injector create(java.lang.Class aClass)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JavaEETestInjectorFactory

public JavaEETestInjectorFactory(javax.persistence.EntityManager aEntityManager,
                                 InjectorFactory aInjectorFactory)
Constructs the factory.

Parameters:
aEntityManager - Contextual entity manager to inject.
aInjectorFactory - Injector factory to delegate to.

JavaEETestInjectorFactory

public JavaEETestInjectorFactory(javax.persistence.EntityManager aEntityManager)
Constructs the factory with the default injector factory obtained from InjectorFactoryBuilder.getInjector().

Parameters:
aEntityManager - Contextual entity manager to inject.
Method Detail

create

public Injector create(java.lang.Class aClass)
Specified by:
create in interface InjectorFactory


Copyright © 2010. All Rights Reserved.