/** * {@inheritDoc} * The returned ComponentAdapter will be an {@link com.picocontainer.adapters.InstanceAdapter}. */ public MutablePicoContainer addComponent(final Object implOrInstance) { return addComponent(implOrInstance, this.containerProperties); }
private void addContainerComponents(final DefaultPicoContainer temp) { for (Object containerComp : containerComps) { temp.addComponent(containerComp); } }
private void buildComponentMonitor(final DefaultPicoContainer tempContainer) { if (monitorClass == null) { tempContainer.addComponent(ComponentMonitor.class, monitor); } else { tempContainer.addComponent(ComponentMonitor.class, monitorClass); } }
private void buildComponentMonitor(final DefaultPicoContainer tempContainer) { if (monitorClass == null) { tempContainer.addComponent(ComponentMonitor.class, monitor); } else { tempContainer.addComponent(ComponentMonitor.class, monitorClass); } }
private void addContainerComponents(final DefaultPicoContainer temp) { for (Object containerComp : containerComps) { temp.addComponent(containerComp); } }
/** * {@inheritDoc} * The returned ComponentAdapter will be an {@link com.picocontainer.adapters.InstanceAdapter}. */ public MutablePicoContainer addComponent(final Object implOrInstance) { return addComponent(implOrInstance, this.containerProperties); }
private MutablePicoContainer addComponent(final Object implOrInstance, final Properties props) { Class<?> clazz; if (implOrInstance instanceof String) { return addComponent(implOrInstance, implOrInstance); } if (implOrInstance instanceof Class) { clazz = (Class<?>) implOrInstance; } else { clazz = implOrInstance.getClass(); } return addComponent(clazz, implOrInstance, props, null, null, null); }
private MutablePicoContainer addComponent(final Object implOrInstance, final Properties props) { Class<?> clazz; if (implOrInstance instanceof String) { return addComponent(implOrInstance, implOrInstance); } if (implOrInstance instanceof Class) { clazz = (Class<?>) implOrInstance; } else { clazz = implOrInstance.getClass(); } return addComponent(clazz, implOrInstance, props, null, null, null); }
public MutablePicoContainer addComponent(final Object key, final Object implOrInstance, final ConstructorParameters constructorParams, final FieldParameters[] fieldParameters, final MethodParameters[] methodParams) { return this.addComponent(key, implOrInstance, containerProperties, constructorParams, fieldParameters, methodParams); }
public MutablePicoContainer addComponent(final Object key, final Object implOrInstance, final ConstructorParameters constructorParams, final FieldParameters[] fieldParameters, final MethodParameters[] methodParams) { return this.addComponent(key, implOrInstance, containerProperties, constructorParams, fieldParameters, methodParams); }
private ClassLoadingPicoContainer createPicoContainer(final Class<?> clazz, final MutablePicoContainer decoratedPico, final ClassLoader parentClassLoader) { DefaultPicoContainer instantiatingContainer = new DefaultPicoContainer(); instantiatingContainer.addComponent(ClassLoader.class, parentClassLoader); instantiatingContainer.addComponent(MutablePicoContainer.class, decoratedPico); instantiatingContainer.addComponent(ClassLoadingPicoContainer.class, clazz); Object componentInstance = instantiatingContainer.getComponent(ClassLoadingPicoContainer.class); return (ClassLoadingPicoContainer) componentInstance; }
public ClassLoadingPicoContainer build() { DefaultPicoContainer tpc = new TransientPicoContainer(); tpc.addComponent(ClassLoader.class, classLoader); tpc.addComponent("sc", scriptClass); tpc.addComponent(MutablePicoContainer.class, picoBuilder.build()); ClassLoadingPicoContainer pico = (ClassLoadingPicoContainer) tpc.getComponent("sc"); for (URL url : urls) { pico.addClassLoaderURL(url); } return pico; }
private ComponentFactory buildComponentFactory(final DefaultPicoContainer container, final ComponentFactory lastCaf, final Stack<Object> clonedBehaviors) { Object componentFactory = clonedBehaviors.pop(); DefaultPicoContainer tmpContainer = new TransientPicoContainer(container); tmpContainer.addComponent("componentFactory", componentFactory); if (lastCaf != null) { tmpContainer.addComponent(ComponentFactory.class, lastCaf); } ComponentFactory newlastCaf = (ComponentFactory) tmpContainer.getComponent("componentFactory"); if (newlastCaf instanceof Behavior) { ((Behavior) newlastCaf).wrap(lastCaf); } return newlastCaf; }
private ComponentFactory buildComponentFactory(final DefaultPicoContainer container, final ComponentFactory lastCaf, final Stack<Object> clonedBehaviors) { Object componentFactory = clonedBehaviors.pop(); DefaultPicoContainer tmpContainer = new TransientPicoContainer(container); tmpContainer.addComponent("componentFactory", componentFactory); if (lastCaf != null) { tmpContainer.addComponent(ComponentFactory.class, lastCaf); } ComponentFactory newlastCaf = (ComponentFactory) tmpContainer.getComponent("componentFactory"); if (newlastCaf instanceof Behavior) { ((Behavior) newlastCaf).wrap(lastCaf); } return newlastCaf; }
@Override public MutablePicoContainer addComponent(final Object implOrInstance) throws PicoCompositionException { if ((implOrInstance instanceof Class)) { super.addComponent(implOrInstance); addStoredReference(implOrInstance); return this; } else { return this.addComponent(implOrInstance.getClass(), implOrInstance); } }
@Override public MutablePicoContainer addComponent(final Object key, final Object implOrInstance, final Parameter... parameters) throws PicoCompositionException { if (key == null) { throw new NullPointerException("key"); } if (implOrInstance == null) { throw new NullPointerException("implOrInstance"); } super.addComponent(key, implOrInstance, parameters); if (! (implOrInstance instanceof Class)) { instanceRegistrations.add(super.getComponentAdapter(key)); } else { addStoredReference(key); } return this; }
public MutablePicoContainer build() { DefaultPicoContainer tempContainer = new TransientPicoContainer(); tempContainer.addComponent(PicoContainer.class, parentContainer); addContainerComponents(tempContainer); ComponentFactory componentFactory; if (injectors.size() == 1) { componentFactory = injectors.get(0); } else if (injectors.size() == 0) { componentFactory = adaptiveDI(); } else { componentFactory = new CompositeInjection(injectors.toArray(new InjectionType[injectors.size()])); } Stack<Object> clonedBehaviors = (Stack< Object >) behaviors.clone(); while (!clonedBehaviors.empty()) { componentFactory = buildComponentFactory(tempContainer, componentFactory, clonedBehaviors); } tempContainer.addComponent(ComponentFactory.class, componentFactory); buildComponentMonitor(tempContainer); if (lifecycle == null) { tempContainer.addComponent(LifecycleStrategy.class, lifecycleClass); } else { tempContainer.addComponent(LifecycleStrategy.class, lifecycle); } tempContainer.addComponent("mpc", mpcClass); MutablePicoContainer newContainer = (MutablePicoContainer) tempContainer.getComponent("mpc"); addChildToParent(newContainer); return newContainer; }
public MutablePicoContainer build() { DefaultPicoContainer tempContainer = new TransientPicoContainer(); tempContainer.addComponent(PicoContainer.class, parentContainer); addContainerComponents(tempContainer); ComponentFactory componentFactory; if (injectors.size() == 1) { componentFactory = injectors.get(0); } else if (injectors.size() == 0) { componentFactory = adaptiveDI(); } else { componentFactory = new CompositeInjection(injectors.toArray(new InjectionType[injectors.size()])); } Stack<Object> clonedBehaviors = (Stack< Object >) behaviors.clone(); while (!clonedBehaviors.empty()) { componentFactory = buildComponentFactory(tempContainer, componentFactory, clonedBehaviors); } tempContainer.addComponent(ComponentFactory.class, componentFactory); buildComponentMonitor(tempContainer); if (lifecycle == null) { tempContainer.addComponent(LifecycleStrategy.class, lifecycleClass); } else { tempContainer.addComponent(LifecycleStrategy.class, lifecycle); } tempContainer.addComponent("mpc", mpcClass); MutablePicoContainer newContainer = (MutablePicoContainer) tempContainer.getComponent("mpc"); addChildToParent(newContainer); return newContainer; }
public EventListener addListener(final Class<?> listenerClass) { DefaultPicoContainer child = new DefaultPicoContainer(parentContainer); child.addComponent(EventListener.class, listenerClass); EventListener instance = child.getComponent(EventListener.class); return addListener(instance); }
throw new NullPointerException("composition can't be null"); factory.addComponent(composition); factory.addComponent(classLoader);