X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=wicket%2Fjoe%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fwicket%2Finject%2FComponentInstantiationInjector.java;h=d4bb39dc5c2e501a1d7fc35932068fa9569f93f8;hb=HEAD;hp=d361ebc3c7e864771ce4e584a3cb7334cde66542;hpb=faef41a7706fe470b864efde1713c2d72998c7ad;p=utils diff --git a/wicket/joe/src/main/java/org/wamblee/wicket/inject/ComponentInstantiationInjector.java b/wicket/joe/src/main/java/org/wamblee/wicket/inject/ComponentInstantiationInjector.java index d361ebc3..d4bb39dc 100644 --- a/wicket/joe/src/main/java/org/wamblee/wicket/inject/ComponentInstantiationInjector.java +++ b/wicket/joe/src/main/java/org/wamblee/wicket/inject/ComponentInstantiationInjector.java @@ -17,32 +17,48 @@ package org.wamblee.wicket.inject; import org.apache.wicket.Component; import org.apache.wicket.application.IComponentInstantiationListener; -import org.wamblee.inject.InjectorFactoryBuilder; +import org.apache.wicket.protocol.http.WebApplication; +import org.wamblee.inject.InjectorBuilder; import org.wamblee.inject.SimpleInjector; /** - * Component instantiation listener that injects references into a component - * using the injector mini-framework. Together with an implementation of the - * mini-framework, Contexts and Depenency Injection support can be provided. - * - * + *

+ * Component instantiation listener that injects references into a component + * using the injector mini-framework. Together with an implementation of the + * mini-framework, Contexts and Dependency Injection support can be provided or + * for standard Java EE injection into components. Or, other injection + * frameworks can be used. + *

+ *

+ *

+ * To use this injector override {@link WebApplication#init()} and add the + * listener: + *

+ *

+ *

+ * @Override
+ * protected void init() {
+ *     super.init();
+ *     addComponentInstantiationListener(new ComponentInstantiationInjector());
+ * }
+ * 
+ * * @author Erik Brakkee */ -public class ComponentInstantiationInjector implements - IComponentInstantiationListener { - - private SimpleInjector injector; - +public class ComponentInstantiationInjector implements IComponentInstantiationListener { + + private SimpleInjector injector; + /** - * Constructs the component instantiation listener. + * Constructs the component instantiation listener. */ - public ComponentInstantiationInjector() { - injector = new SimpleInjector(InjectorFactoryBuilder.getInjectorFactory()); + public ComponentInstantiationInjector() { + injector = new SimpleInjector(InjectorBuilder.getInjectorFactory()); } - + @Override public void onInstantiation(Component aComponent) { injector.inject(aComponent); + aComponent.add(new InjectionBehavior(aComponent)); } - }