public class GuiceComponentInjector extends Injector implements IComponentInstantiationListener, IBehaviorInstantiationListener
Add this to your application in its Application.init()
method like so:
getComponentInstantiationListeners().add(new GuiceComponentInjector(this));
There are different constructors for this object depending on how you want to wire things. See the javadoc for the constructors for more information.
Only Wicket Component
s and Behavior
s are automatically injected, other classes
such as Session
, Model
, and any other POJO can be injected by calling
Injector.get().inject(this)
in their constructor.
Constructor and Description |
---|
GuiceComponentInjector(Application app)
Creates a new Wicket GuiceComponentInjector instance.
|
GuiceComponentInjector(Application app,
com.google.inject.Injector injector)
Constructor
|
GuiceComponentInjector(Application app,
com.google.inject.Injector injector,
boolean wrapInProxies)
Creates a new Wicket GuiceComponentInjector instance, using the provided Guice
Injector instance. |
GuiceComponentInjector(Application app,
com.google.inject.Module... modules)
Creates a new Wicket GuiceComponentInjector instance, using the supplied Guice
Module
instances to create a new Guice Injector instance internally. |
Modifier and Type | Method and Description |
---|---|
void |
inject(Object object)
Injects the specified object.
|
void |
onInstantiation(Behavior behavior)
Called when a behavior instance is created
|
void |
onInstantiation(Component component)
Called for every component that is instantiated.
|
public GuiceComponentInjector(Application app)
Internally this will create a new Guice Injector
instance, with no Module
instances. This is only useful if your beans have appropriate ImplementedBy
annotations on them so that they can be automatically picked up with no extra configuration
code.
app
- public GuiceComponentInjector(Application app, com.google.inject.Module... modules)
Module
instances to create a new Guice Injector
instance internally.app
- modules
- public GuiceComponentInjector(Application app, com.google.inject.Injector injector)
app
- injector
- public GuiceComponentInjector(Application app, com.google.inject.Injector injector, boolean wrapInProxies)
Injector
instance.app
- injector
- wrapInProxies
- whether or not wicket should wrap dependencies with specialized proxies that can
be safely serialized. in most cases this should be set to true.public void inject(Object object)
Injector
Injector.inject(Object, IFieldValueFactory)
with some IFieldValueFactory
inject
in class Injector
Injector.inject(Object, IFieldValueFactory)
public void onInstantiation(Component component)
IComponentInstantiationListener
onInstantiation
in interface IComponentInstantiationListener
component
- the component that is being instantiated.public void onInstantiation(Behavior behavior)
IBehaviorInstantiationListener
onInstantiation
in interface IBehaviorInstantiationListener
Copyright © 2006–2022 Apache Software Foundation. All rights reserved.