@Override public boolean isDependent() { return getScope().equals(Dependent.class); }
if (bean != null && bean.getScope().equals(Dependent.class))
@Override public void destroy(T instance, CreationalContext<T> creationalContext) { if (getScope().equals(Dependent.class) && creationalContext instanceof CreationalContextImpl && ((CreationalContextImpl<T>)creationalContext).containsDependent(this, instance)) { // we just have to call release, because release will destroy us since we are @Dependent creationalContext.release(); return; } try { Producer<T> producer = getProducer(); if (producer instanceof InjectionTarget) { InjectionTarget<T> injectionTarget = (InjectionTarget<T>)producer; injectionTarget.preDestroy(instance); } producer.dispose(instance); //Destroy dependent instances creationalContext.release(); } catch(Exception e) { getLogger().log(Level.SEVERE, WebBeansLoggerFacade.constructMessage(OWBLogConst.FATAL_0001, this), e); } }
injectionTarget.postConstruct(instance); if (getScope().equals(Dependent.class) && instance != null)
if (aob.getScope().equals(Dependent.class)) { creationalContext.addDependent(aob, instance);
if (aob.getScope().equals(Dependent.class)) { creationalContext.addDependent(aob, instance);