Package org.apache.catalina.deploy
Class NamingResourcesImpl
- java.lang.Object
-
- org.apache.catalina.util.LifecycleBase
-
- org.apache.catalina.util.LifecycleMBeanBase
-
- org.apache.catalina.deploy.NamingResourcesImpl
-
- All Implemented Interfaces:
java.io.Serializable
,javax.management.MBeanRegistration
,JmxEnabled
,Lifecycle
,NamingResources
public class NamingResourcesImpl extends LifecycleMBeanBase implements java.io.Serializable, NamingResources
Holds and manages the naming resources defined in the Jakarta EE Naming Context and their associated JNDI context.- Author:
- Remy Maucherat
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.catalina.Lifecycle
Lifecycle.SingleUse
-
-
Field Summary
Fields Modifier and Type Field Description protected java.beans.PropertyChangeSupport
support
The property change support for this component.-
Fields inherited from interface org.apache.catalina.Lifecycle
AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
-
-
Constructor Summary
Constructors Constructor Description NamingResourcesImpl()
Create a new NamingResources instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addEjb(ContextEjb ejb)
Add an EJB resource reference for this web application.void
addEnvironment(ContextEnvironment environment)
Add an environment entry for this web application.void
addLocalEjb(ContextLocalEjb ejb)
Add a local EJB resource reference for this web application.void
addMessageDestinationRef(MessageDestinationRef mdr)
Add a message destination reference for this web application.void
addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Add a property change listener to this component.void
addResource(ContextResource resource)
Add a resource reference for this web application.void
addResourceEnvRef(ContextResourceEnvRef resource)
Add a resource environment reference for this web application.void
addResourceLink(ContextResourceLink resourceLink)
Add a resource link for this web application.void
addService(ContextService service)
Add a web service reference for this web application.protected void
destroyInternal()
Sub-classes wishing to perform additional clean-up should override this method, ensuring that super.destroyInternal() is the last call in the overriding method.ContextEjb
findEjb(java.lang.String name)
ContextEjb[]
findEjbs()
ContextEnvironment
findEnvironment(java.lang.String name)
ContextEnvironment[]
findEnvironments()
ContextLocalEjb
findLocalEjb(java.lang.String name)
ContextLocalEjb[]
findLocalEjbs()
MessageDestinationRef
findMessageDestinationRef(java.lang.String name)
MessageDestinationRef[]
findMessageDestinationRefs()
ContextResource
findResource(java.lang.String name)
ContextResourceEnvRef
findResourceEnvRef(java.lang.String name)
ContextResourceEnvRef[]
findResourceEnvRefs()
ContextResourceLink
findResourceLink(java.lang.String name)
ContextResourceLink[]
findResourceLinks()
ContextResource[]
findResources()
ContextService
findService(java.lang.String name)
ContextService[]
findServices()
java.lang.Object
getContainer()
protected java.lang.String
getDomainInternal()
Method implemented by sub-classes to identify the domain in which MBeans should be registered.protected java.lang.String
getObjectNameKeyProperties()
Allow sub-classes to specify the key properties component of theObjectName
that will be used to register this component.ContextTransaction
getTransaction()
protected void
initInternal()
Sub-classes wishing to perform additional initialization should override this method, ensuring that super.initInternal() is the first call in the overriding method.void
removeEjb(java.lang.String name)
Remove any EJB resource reference with the specified name.void
removeEnvironment(java.lang.String name)
Remove any environment entry with the specified name.void
removeLocalEjb(java.lang.String name)
Remove any local EJB resource reference with the specified name.void
removeMessageDestinationRef(java.lang.String name)
Remove any message destination reference with the specified name.void
removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Remove a property change listener from this component.void
removeResource(java.lang.String name)
Remove any resource reference with the specified name.void
removeResourceEnvRef(java.lang.String name)
Remove any resource environment reference with the specified name.void
removeResourceLink(java.lang.String name)
Remove any resource link with the specified name.void
removeService(java.lang.String name)
Remove any web service reference with the specified name.void
setContainer(java.lang.Object container)
Set the container with which the naming resources are associated.void
setTransaction(ContextTransaction transaction)
Set the transaction object.protected void
startInternal()
Sub-classes must ensure that the state is changed toLifecycleState.STARTING
during the execution of this method.protected void
stopInternal()
Sub-classes must ensure that the state is changed toLifecycleState.STOPPING
during the execution of this method.-
Methods inherited from class org.apache.catalina.util.LifecycleMBeanBase
getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister, unregister
-
Methods inherited from class org.apache.catalina.util.LifecycleBase
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stop
-
-
-
-
Method Detail
-
getContainer
public java.lang.Object getContainer()
- Specified by:
getContainer
in interfaceNamingResources
- Returns:
- the container with which the naming resources are associated.
-
setContainer
public void setContainer(java.lang.Object container)
Set the container with which the naming resources are associated.- Parameters:
container
- the associated with the resources
-
setTransaction
public void setTransaction(ContextTransaction transaction)
Set the transaction object.- Parameters:
transaction
- the transaction descriptor
-
getTransaction
public ContextTransaction getTransaction()
- Returns:
- the transaction object.
-
addEjb
public void addEjb(ContextEjb ejb)
Add an EJB resource reference for this web application.- Parameters:
ejb
- New EJB resource reference
-
addEnvironment
public void addEnvironment(ContextEnvironment environment)
Add an environment entry for this web application.- Specified by:
addEnvironment
in interfaceNamingResources
- Parameters:
environment
- New environment entry
-
addLocalEjb
public void addLocalEjb(ContextLocalEjb ejb)
Add a local EJB resource reference for this web application.- Parameters:
ejb
- New EJB resource reference
-
addMessageDestinationRef
public void addMessageDestinationRef(MessageDestinationRef mdr)
Add a message destination reference for this web application.- Parameters:
mdr
- New message destination reference
-
addPropertyChangeListener
public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Add a property change listener to this component.- Parameters:
listener
- The listener to add
-
addResource
public void addResource(ContextResource resource)
Add a resource reference for this web application.- Specified by:
addResource
in interfaceNamingResources
- Parameters:
resource
- New resource reference
-
addResourceEnvRef
public void addResourceEnvRef(ContextResourceEnvRef resource)
Add a resource environment reference for this web application.- Parameters:
resource
- The resource
-
addResourceLink
public void addResourceLink(ContextResourceLink resourceLink)
Add a resource link for this web application.- Specified by:
addResourceLink
in interfaceNamingResources
- Parameters:
resourceLink
- New resource link
-
addService
public void addService(ContextService service)
Add a web service reference for this web application.- Parameters:
service
- New web service reference
-
findEjb
public ContextEjb findEjb(java.lang.String name)
- Parameters:
name
- Name of the desired EJB resource reference- Returns:
- the EJB resource reference with the specified name, if any;
otherwise, return
null
.
-
findEjbs
public ContextEjb[] findEjbs()
- Returns:
- the defined EJB resource references for this application. If there are none, a zero-length array is returned.
-
findEnvironment
public ContextEnvironment findEnvironment(java.lang.String name)
- Parameters:
name
- Name of the desired environment entry- Returns:
- the environment entry with the specified name, if any;
otherwise, return
null
.
-
findEnvironments
public ContextEnvironment[] findEnvironments()
- Returns:
- the set of defined environment entries for this web application. If none have been defined, a zero-length array is returned.
-
findLocalEjb
public ContextLocalEjb findLocalEjb(java.lang.String name)
- Parameters:
name
- Name of the desired EJB resource reference- Returns:
- the local EJB resource reference with the specified name, if any;
otherwise, return
null
.
-
findLocalEjbs
public ContextLocalEjb[] findLocalEjbs()
- Returns:
- the defined local EJB resource references for this application. If there are none, a zero-length array is returned.
-
findMessageDestinationRef
public MessageDestinationRef findMessageDestinationRef(java.lang.String name)
- Parameters:
name
- Name of the desired message destination reference- Returns:
- the message destination reference with the specified name,
if any; otherwise, return
null
.
-
findMessageDestinationRefs
public MessageDestinationRef[] findMessageDestinationRefs()
- Returns:
- the defined message destination references for this application. If there are none, a zero-length array is returned.
-
findResource
public ContextResource findResource(java.lang.String name)
- Parameters:
name
- Name of the desired resource reference- Returns:
- the resource reference with the specified name, if any;
otherwise return
null
.
-
findResourceLink
public ContextResourceLink findResourceLink(java.lang.String name)
- Parameters:
name
- Name of the desired resource link- Returns:
- the resource link with the specified name, if any;
otherwise return
null
.
-
findResourceLinks
public ContextResourceLink[] findResourceLinks()
- Returns:
- the defined resource links for this application. If none have been defined, a zero-length array is returned.
-
findResources
public ContextResource[] findResources()
- Returns:
- the defined resource references for this application. If none have been defined, a zero-length array is returned.
-
findResourceEnvRef
public ContextResourceEnvRef findResourceEnvRef(java.lang.String name)
- Parameters:
name
- Name of the desired resource environment reference- Returns:
- the resource environment reference type for the specified
name, if any; otherwise return
null
.
-
findResourceEnvRefs
public ContextResourceEnvRef[] findResourceEnvRefs()
- Returns:
- the set of resource environment reference names for this web application. If none have been specified, a zero-length array is returned.
-
findService
public ContextService findService(java.lang.String name)
- Parameters:
name
- Name of the desired web service- Returns:
- the web service reference for the specified
name, if any; otherwise return
null
.
-
findServices
public ContextService[] findServices()
- Returns:
- the defined web service references for this application. If none have been defined, a zero-length array is returned.
-
removeEjb
public void removeEjb(java.lang.String name)
Remove any EJB resource reference with the specified name.- Parameters:
name
- Name of the EJB resource reference to remove
-
removeEnvironment
public void removeEnvironment(java.lang.String name)
Remove any environment entry with the specified name.- Specified by:
removeEnvironment
in interfaceNamingResources
- Parameters:
name
- Name of the environment entry to remove
-
removeLocalEjb
public void removeLocalEjb(java.lang.String name)
Remove any local EJB resource reference with the specified name.- Parameters:
name
- Name of the EJB resource reference to remove
-
removeMessageDestinationRef
public void removeMessageDestinationRef(java.lang.String name)
Remove any message destination reference with the specified name.- Parameters:
name
- Name of the message destination resource reference to remove
-
removePropertyChangeListener
public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Remove a property change listener from this component.- Parameters:
listener
- The listener to remove
-
removeResource
public void removeResource(java.lang.String name)
Remove any resource reference with the specified name.- Specified by:
removeResource
in interfaceNamingResources
- Parameters:
name
- Name of the resource reference to remove
-
removeResourceEnvRef
public void removeResourceEnvRef(java.lang.String name)
Remove any resource environment reference with the specified name.- Parameters:
name
- Name of the resource environment reference to remove
-
removeResourceLink
public void removeResourceLink(java.lang.String name)
Remove any resource link with the specified name.- Specified by:
removeResourceLink
in interfaceNamingResources
- Parameters:
name
- Name of the resource link to remove
-
removeService
public void removeService(java.lang.String name)
Remove any web service reference with the specified name.- Parameters:
name
- Name of the web service reference to remove
-
initInternal
protected void initInternal() throws LifecycleException
Description copied from class:LifecycleMBeanBase
Sub-classes wishing to perform additional initialization should override this method, ensuring that super.initInternal() is the first call in the overriding method.- Overrides:
initInternal
in classLifecycleMBeanBase
- Throws:
LifecycleException
- If the initialisation fails
-
startInternal
protected void startInternal() throws LifecycleException
Description copied from class:LifecycleBase
Sub-classes must ensure that the state is changed toLifecycleState.STARTING
during the execution of this method. Changing state will trigger theLifecycle.START_EVENT
event. If a component fails to start it may either throw aLifecycleException
which will cause it's parent to fail to start or it can place itself in the error state in which caseLifecycleBase.stop()
will be called on the failed component but the parent component will continue to start normally.- Specified by:
startInternal
in classLifecycleBase
- Throws:
LifecycleException
- Start error occurred
-
stopInternal
protected void stopInternal() throws LifecycleException
Description copied from class:LifecycleBase
Sub-classes must ensure that the state is changed toLifecycleState.STOPPING
during the execution of this method. Changing state will trigger theLifecycle.STOP_EVENT
event.- Specified by:
stopInternal
in classLifecycleBase
- Throws:
LifecycleException
- Stop error occurred
-
destroyInternal
protected void destroyInternal() throws LifecycleException
Description copied from class:LifecycleMBeanBase
Sub-classes wishing to perform additional clean-up should override this method, ensuring that super.destroyInternal() is the last call in the overriding method.- Overrides:
destroyInternal
in classLifecycleMBeanBase
- Throws:
LifecycleException
- If the destruction fails
-
getDomainInternal
protected java.lang.String getDomainInternal()
Description copied from class:LifecycleMBeanBase
Method implemented by sub-classes to identify the domain in which MBeans should be registered.- Specified by:
getDomainInternal
in classLifecycleMBeanBase
- Returns:
- The name of the domain to use to register MBeans.
-
getObjectNameKeyProperties
protected java.lang.String getObjectNameKeyProperties()
Description copied from class:LifecycleMBeanBase
Allow sub-classes to specify the key properties component of theObjectName
that will be used to register this component.- Specified by:
getObjectNameKeyProperties
in classLifecycleMBeanBase
- Returns:
- The string representation of the key properties component of the
desired
ObjectName
-
-