001    package org.picocontainer.script.testmodel;
002    
003    import org.picocontainer.ComponentAdapter;
004    import org.picocontainer.Parameter;
005    import org.picocontainer.PicoCompositionException;
006    import org.picocontainer.ComponentMonitor;
007    import org.picocontainer.LifecycleStrategy;
008    import org.picocontainer.injectors.AdaptingInjection;
009    
010    import java.util.Properties;
011    
012    /**
013     * @author Paul Hammant
014     */
015    @SuppressWarnings("serial")
016    public final class TestInjection extends AdaptingInjection {
017    
018        public final StringBuffer sb;
019    
020        public TestInjection(StringBuffer sb) {
021            this.sb = sb;
022        }
023    
024        @SuppressWarnings("unchecked")
025        public ComponentAdapter createComponentAdapter(ComponentMonitor componentMonitor, LifecycleStrategy lifecycleStrategy,
026                        Properties componentProperties, Object componentKey, Class componentImplementation, Parameter... parameters) throws PicoCompositionException {
027            sb.append("called");
028            return super.createComponentAdapter(componentMonitor, lifecycleStrategy,
029                                                componentProperties, componentKey, componentImplementation, parameters);
030        }
031    }