public class ContextBeanFactoryReference extends Object implements BeanFactoryReference
As per BeanFactoryReference contract, release
may be called
more than once, with subsequent calls not doing anything. However, calling
getFactory
after a release
call will cause an exception.
ConfigurableApplicationContext.close()
Constructor and Description |
---|
ContextBeanFactoryReference(ApplicationContext applicationContext)
Create a new ContextBeanFactoryReference for the given context.
|
Modifier and Type | Method and Description |
---|---|
BeanFactory |
getFactory()
Return the
BeanFactory instance held by this reference. |
void |
release()
Indicate that the
BeanFactory instance referred to by this object is not
needed any longer by the client code which obtained the BeanFactoryReference . |
public ContextBeanFactoryReference(ApplicationContext applicationContext)
applicationContext
- the ApplicationContext to wrappublic BeanFactory getFactory()
BeanFactoryReference
BeanFactory
instance held by this reference.getFactory
in interface BeanFactoryReference
public void release()
BeanFactoryReference
BeanFactory
instance referred to by this object is not
needed any longer by the client code which obtained the BeanFactoryReference
.
Depending on the actual implementation of BeanFactoryLocator
, and
the actual type of BeanFactory
, this may possibly not actually
do anything; alternately in the case of a 'closeable' BeanFactory
or derived class (such as ApplicationContext
)
may 'close' it, or may 'close' it once no more references remain.
In an EJB usage scenario this would normally be called from
ejbRemove()
and ejbPassivate()
.
This is safe to call multiple times.
release
in interface BeanFactoryReference
BeanFactoryLocator
,
ContextBeanFactoryReference
,
ConfigurableApplicationContext.close()