Package org.eclipse.sisu.bean
package org.eclipse.sisu.bean
Customizable injection of bean properties, based on http://code.google.com/p/google-guice/wiki/CustomInjections.
For example:
new AbstractModule() {
@Override protected void configure() {
bindListener( Matchers.any(), new BeanListener( new MyBeanBinder() ) );
}
}
MyBeanBinder will be asked to supply a PropertyBinder for each bean type, say Foo.
That PropertyBinder will be asked to supply a PropertyBinding for each property (field or setter) in Foo.
Those PropertyBindings are then used to automatically configure any injected instances of Foo.
-
ClassDescriptionProvides custom
PropertyBinders for beans that contain one or more properties.BeanInjector<B>MembersInjectorthat takesPropertyBindings and applies them to bean instances.Represents the JSR250 lifecycle for a particular bean type.TypeListenerthat listens for bean types and arranges for their properties to be injected.Service that manages the lifecycle of beans.Iterablethat iterates over potential bean properties in a class hierarchy.BeanProperty<T>Represents a bean property such as a field or setter method.BeanPropertybacked by aField.Read-onlyIteratorthat picks out potential bean properties from declared members.BeanPropertybacked by a single-parameter setterMethod.Schedules safe activation of beans even when cyclic dependencies are involved.
Takes advantage of the new Guice ProvisionListener SPI, if available at runtime.Listens to provisioning events in order to determine safe activation points.Iterablethat iterates over declared members of a class hierarchy.Read-onlyIteratorthat uses rollingDeclaredMembers.Views to traverse the different members.Enumimplementation that provides different views of a class's members.Annotates class hierarchies that don't want setter injection.BuildsBeanLifecycles by searching class hierarchies for JSR250 annotations.BeanManagerthat manages JSR250 beans and schedules lifecycle events.GuiceModulethat provides JSR250 lifecycle management by followingPostConstructandPreDestroyannotations.Provides customPropertyBindings for bean properties such as fields or setter methods.Represents a bean property that has been bound by aPropertyBinder.