(no commit message)
[utils] / support / inject / src / main / java / org / wamblee / inject / Injectable.java
index 4f55cc35e2db8cc05da4766bde0424c794629810..a87c236b2cd33c8330bf62893ae42926b4da2004 100644 (file)
@@ -29,13 +29,31 @@ package org.wamblee.inject;
  */
 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;
+    }
 }