public class JavaEETestInjectorFactory extends Object implements org.wamblee.inject.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 InjectorBuilder.setInjectorFactory(InjectorFactory)
.
Constructor and Description |
---|
JavaEETestInjectorFactory()
Constructs the factory with the default injector factory obtained from
InjectorBuilder.getInjector() . |
JavaEETestInjectorFactory(org.wamblee.inject.InjectorFactory aInjectorFactory)
Constructs the factory.
|
Modifier and Type | Method and Description |
---|---|
JavaEETestInjectorFactory |
addBinding(Binding aBinding)
Adds another custom injection binding.
|
JavaEETestInjectorFactory |
addEntityManagerBinding(javax.persistence.EntityManager aEntityManager)
Adds default entity manager binding.
|
org.wamblee.inject.Injector |
create(Class aClass) |
public JavaEETestInjectorFactory(org.wamblee.inject.InjectorFactory aInjectorFactory)
aInjectorFactory
- Injector factory to delegate to.public JavaEETestInjectorFactory()
InjectorBuilder.getInjector()
.public JavaEETestInjectorFactory addEntityManagerBinding(javax.persistence.EntityManager aEntityManager)
aEntityManager
- Entitymanager object to inject.public JavaEETestInjectorFactory addBinding(Binding aBinding)
aBinding
- Injection binding to use.public org.wamblee.inject.Injector create(Class aClass)
create
in interface org.wamblee.inject.InjectorFactory
Copyright © 2022. All rights reserved.