*/
public abstract class Injectable {
- private static final SimpleInjector INJECTOR = new SimpleInjector(
- InjectorFactoryBuilder.getInjectorFactory());
+ private final SimpleInjector injector =
+ InjectorFactoryBuilder.getInjector();
/**
* Inheritance style constructor.
*/
protected Injectable() {
- INJECTOR.inject(this);
+ inject();
+ }
+
+
+ /**
+ * Inject references. This can be useful when injection is to be done again after construction
+ * to obtain new references or after zeroing out of the references.
+ */
+ public void inject() {
+ injector.inject(this);
}
+
+
+ /**
+ * Gets the default injector.
+ * @return Injector.
+ */
+ public SimpleInjector getInjector() {
+ return injector;
+ }
}