org.qi4j.api.composite
Class DecoratorMixin

java.lang.Object
  extended by org.qi4j.api.composite.DecoratorMixin
All Implemented Interfaces:
java.lang.reflect.InvocationHandler

public class DecoratorMixin
extends java.lang.Object
implements java.lang.reflect.InvocationHandler

Generic decorator mixin that allows a Composite to wrap any other Composite as long as they share an interface.

Can be used to effectively implement singleton mixins, since the decorated object can be shared between many instances.


Constructor Summary
DecoratorMixin(java.lang.Object delegate)
           
 
Method Summary
 java.lang.Object invoke(java.lang.Object object, java.lang.reflect.Method method, java.lang.Object[] args)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DecoratorMixin

public DecoratorMixin(@Uses
                      java.lang.Object delegate)
Method Detail

invoke

public java.lang.Object invoke(java.lang.Object object,
                               java.lang.reflect.Method method,
                               java.lang.Object[] args)
                        throws java.lang.Throwable
Specified by:
invoke in interface java.lang.reflect.InvocationHandler
Throws:
java.lang.Throwable