com.caucho.ejb.inject
Class SessionBeanImpl<X,T>

java.lang.Object
  extended by com.caucho.ejb.inject.SessionBeanImpl<X,T>
All Implemented Interfaces:
InjectEnvironmentBean, ScopeAdapterBean<T>, EjbGeneratedBean, Contextual<T>, Bean<T>, PassivationCapable
Direct Known Subclasses:
StatefulBeanImpl, StatelessBeanImpl

@Module
public class SessionBeanImpl<X,T>
extends java.lang.Object
implements ScopeAdapterBean<T>, Bean<T>, PassivationCapable, EjbGeneratedBean, InjectEnvironmentBean

Internal implementation for a Bean


Constructor Summary
SessionBeanImpl(AbstractSessionContext<X,T> context, ManagedBeanImpl<X> bean, java.util.Set<java.lang.reflect.Type> apiList, AnnotatedType<X> extAnnType)
           
 
Method Summary
 T create(CreationalContext<T> env)
          Creates a new instance for the Contextual's type.
 void destroy(T instance, CreationalContext<T> cxt)
          Destroys an instance for the Contextual's type.
protected  ManagedBeanImpl<X> getBean()
           
 java.lang.Class<?> getBeanClass()
          Returns the bean class.
 InjectManager getCdiManager()
           
 java.lang.String getId()
           
 java.util.Set<InjectionPoint> getInjectionPoints()
          Returns the injection points.
 java.lang.String getName()
          Returns the bean's name or null if the bean does not have a primary name.
 java.util.Set<java.lang.annotation.Annotation> getQualifiers()
          Returns the bean's qualifier annotations.
 java.lang.Class<? extends java.lang.annotation.Annotation> getScope()
          Returns the bean's scope type.
 T getScopeAdapter(Bean<?> topBean, CreationalContextImpl<T> context)
           
 java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>> getStereotypes()
          Returns the stereotypes that the bean uses for priority
 java.util.Set<java.lang.reflect.Type> getTypes()
          Returns the types that the bean exports for bindings.
 boolean isAlternative()
          True for a disabled alternative.
 boolean isNullable()
          Returns true if the bean can be null
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SessionBeanImpl

public SessionBeanImpl(AbstractSessionContext<X,T> context,
                       ManagedBeanImpl<X> bean,
                       java.util.Set<java.lang.reflect.Type> apiList,
                       AnnotatedType<X> extAnnType)
Method Detail

getCdiManager

public InjectManager getCdiManager()
Specified by:
getCdiManager in interface InjectEnvironmentBean

getBean

protected ManagedBeanImpl<X> getBean()

getTypes

public java.util.Set<java.lang.reflect.Type> getTypes()
Description copied from interface: Bean
Returns the types that the bean exports for bindings.

Specified by:
getTypes in interface Bean<T>

getScopeAdapter

public T getScopeAdapter(Bean<?> topBean,
                         CreationalContextImpl<T> context)
Specified by:
getScopeAdapter in interface ScopeAdapterBean<T>

create

public T create(CreationalContext<T> env)
Description copied from interface: Contextual
Creates a new instance for the Contextual's type. If the instance already exists in the CreationalContext, create will return it instead of creating a new instance.
  1. create an instance of the bean
  2. create interceptor and decorator stacks
  3. inject dependencies
  4. set any XML-configured values
  5. call @PostConstruct

Specified by:
create in interface Contextual<T>
Parameters:
env - the creation context used to support circular references.
Returns:
the new instance

destroy

public void destroy(T instance,
                    CreationalContext<T> cxt)
Description copied from interface: Contextual
Destroys an instance for the Contextual's type.
  1. Call any @Disposal method
  2. Call @PreDestroy methods
  3. Destroy dependent objects

Specified by:
destroy in interface Contextual<T>
Parameters:
instance - the instance to destroy

getInjectionPoints

public java.util.Set<InjectionPoint> getInjectionPoints()
Returns the injection points.

Specified by:
getInjectionPoints in interface Bean<T>

getBeanClass

public java.lang.Class<?> getBeanClass()
Description copied from interface: Bean
Returns the bean class.

Specified by:
getBeanClass in interface Bean<T>

getName

public java.lang.String getName()
Description copied from interface: Bean
Returns the bean's name or null if the bean does not have a primary name.

Specified by:
getName in interface Bean<T>

getQualifiers

public java.util.Set<java.lang.annotation.Annotation> getQualifiers()
Description copied from interface: Bean
Returns the bean's qualifier annotations.

Specified by:
getQualifiers in interface Bean<T>

getScope

public java.lang.Class<? extends java.lang.annotation.Annotation> getScope()
Description copied from interface: Bean
Returns the bean's scope type.

Specified by:
getScope in interface Bean<T>

getStereotypes

public java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>> getStereotypes()
Description copied from interface: Bean
Returns the stereotypes that the bean uses for priority

Specified by:
getStereotypes in interface Bean<T>

isAlternative

public boolean isAlternative()
Description copied from interface: Bean
True for a disabled alternative.

Specified by:
isAlternative in interface Bean<T>

isNullable

public boolean isNullable()
Description copied from interface: Bean
Returns true if the bean can be null

Specified by:
isNullable in interface Bean<T>

getId

public java.lang.String getId()
Specified by:
getId in interface PassivationCapable

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object