com.caucho.config.inject
Class InstanceBeanImpl<T>

java.lang.Object
  extended by com.caucho.config.inject.InstanceBeanImpl<T>
All Implemented Interfaces:
Contextual<T>, Bean<T>

public class InstanceBeanImpl<T>
extends java.lang.Object
implements Bean<T>

Internal implementation for a Bean


Method Summary
 T create(CreationalContext<T> env)
          Creates a new instance for the Contextual's type.
 void destroy(T instance, CreationalContext<T> env)
          Destroys an instance for the Contextual's type.
 java.lang.Class getBeanClass()
          Returns the bean class.
 java.util.Set<InjectionPoint> getInjectionPoints()
          Returns the set of injection points, for validation.
 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 binding annotations.
 java.lang.Class<? extends java.lang.annotation.Annotation> getScope()
          Returns the bean's scope type.
 java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>> getStereotypes()
          Returns the bean's stereotype annotations.
 java.util.Set<java.lang.reflect.Type> getTypes()
          Returns the types that the bean exports for bindings.
 boolean isAlternative()
          Returns true if the bean can be null
 boolean isNullable()
          Returns true if the bean can be null
 boolean isPassivationCapable()
          Returns true if the bean is serializable
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getBeanClass

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

Specified by:
getBeanClass in interface Bean<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> env)
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

getQualifiers

public java.util.Set<java.lang.annotation.Annotation> getQualifiers()
Returns the bean's binding annotations.

Specified by:
getQualifiers in interface Bean<T>

getStereotypes

public java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>> getStereotypes()
Returns the bean's stereotype annotations.

Specified by:
getStereotypes in interface Bean<T>

getInjectionPoints

public java.util.Set<InjectionPoint> getInjectionPoints()
Returns the set of injection points, for validation.

Specified by:
getInjectionPoints in interface Bean<T>

getName

public java.lang.String getName()
Returns the bean's name or null if the bean does not have a primary name.

Specified by:
getName in interface Bean<T>

isNullable

public boolean isNullable()
Returns true if the bean can be null

Specified by:
isNullable in interface Bean<T>

isAlternative

public boolean isAlternative()
Returns true if the bean can be null

Specified by:
isAlternative in interface Bean<T>

isPassivationCapable

public boolean isPassivationCapable()
Returns true if the bean is serializable


getScope

public java.lang.Class<? extends java.lang.annotation.Annotation> getScope()
Returns the bean's scope type.

Specified by:
getScope in interface Bean<T>

getTypes

public java.util.Set<java.lang.reflect.Type> getTypes()
Returns the types that the bean exports for bindings.

Specified by:
getTypes in interface Bean<T>

toString

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