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.