Class EjbDescriptor

  • All Implemented Interfaces:
    com.sun.enterprise.deployment.EjbDescriptor, com.sun.enterprise.deployment.JndiNameEnvironment, com.sun.enterprise.deployment.NamedDescriptor, com.sun.enterprise.deployment.types.EjbReferenceContainer, com.sun.enterprise.deployment.types.MessageDestinationReferenceContainer, com.sun.enterprise.deployment.types.ResourceEnvReferenceContainer, com.sun.enterprise.deployment.types.ResourceReferenceContainer, com.sun.enterprise.deployment.types.ServiceReferenceContainer, com.sun.enterprise.deployment.WritableJndiNameEnvironment, Serializable
    Direct Known Subclasses:
    DummyEjbDescriptor, EjbEntityDescriptor, EjbMessageBeanDescriptor, EjbSessionDescriptor

    public abstract class EjbDescriptor
    extends com.sun.enterprise.deployment.CommonResourceDescriptor
    implements com.sun.enterprise.deployment.EjbDescriptor
    This abstract class encapsulates the meta-information describing Entity, Session and MessageDriven EJBs.
    Author:
    Danny Coward, Sanjeev Krishnan
    See Also:
    Serialized Form
    • Field Detail

      • transactionType

        protected String transactionType
      • usesDefaultTransaction

        protected boolean usesDefaultTransaction
      • usesCallerIdentity

        protected Boolean usesCallerIdentity
      • securityIdentityDescription

        protected String securityIdentityDescription
      • isDistributedTxScope

        protected boolean isDistributedTxScope
      • runAsIdentity

        protected com.sun.enterprise.deployment.RunAsIdentityDescriptor runAsIdentity
    • Constructor Detail

      • EjbDescriptor

        protected EjbDescriptor()
        Default constructor.
    • Method Detail

      • getIASEjbExtraDescriptors

        public IASEjbExtraDescriptors getIASEjbExtraDescriptors()
        returns the extra iAS specific info (not in the RI DID) in the iAS DTD. no setter. You have to modify some fields of the returned object to change it. TODO: check if we need to clone it in the Copy Constructor...
      • getEjbTypeForDisplay

        public abstract String getEjbTypeForDisplay()
        Specified by:
        getEjbTypeForDisplay in interface com.sun.enterprise.deployment.EjbDescriptor
      • addEjbDescriptor

        public void addEjbDescriptor​(EjbDescriptor other)
      • setType

        public abstract void setType​(String type)
      • getHomeClassName

        public String getHomeClassName()
        Returns the classname of the Home interface of this ejb.
        Specified by:
        getHomeClassName in interface com.sun.enterprise.deployment.EjbDescriptor
      • setHomeClassName

        public void setHomeClassName​(String homeClassName)
        Sets the classname of the Home interface of this ejb.
      • setRemoteClassName

        public void setRemoteClassName​(String remoteClassName)
        Sets the classname of the Remote interface of this ejb.
      • getRemoteClassName

        public String getRemoteClassName()
        Returns the classname of the Remote interface of this ejb.
        Specified by:
        getRemoteClassName in interface com.sun.enterprise.deployment.EjbDescriptor
      • setLocalHomeClassName

        public void setLocalHomeClassName​(String localHomeClassName)
        Sets the classname for the local home interface of this ejb
        Parameters:
        localHomeClassName - fully qualified class name for the interface
      • getLocalHomeClassName

        public String getLocalHomeClassName()
        Specified by:
        getLocalHomeClassName in interface com.sun.enterprise.deployment.EjbDescriptor
        Returns:
        the fully qualified class name for the local home interface of this ejb
      • setLocalClassName

        public void setLocalClassName​(String localClassName)
        Sets the classname for the local interface of this ejb
        Parameters:
        localClassName - fully qualified class name for the interface
      • getLocalClassName

        public String getLocalClassName()
        Specified by:
        getLocalClassName in interface com.sun.enterprise.deployment.EjbDescriptor
        Returns:
        the fully qualified class name for the local interface of this ejb
      • addNoInterfaceLocalBeanClass

        public void addNoInterfaceLocalBeanClass​(String className)
        Add a classname for a no-interface view of the local ejb
        Parameters:
        className - fully qualified class name for the interface
      • getNoInterfaceLocalBeanClasses

        public Set<String> getNoInterfaceLocalBeanClasses()
        Returns:
        all the public classes of this no-interface local ejb
      • addRemoteBusinessClassName

        public void addRemoteBusinessClassName​(String className)
      • addLocalBusinessClassName

        public void addLocalBusinessClassName​(String className)
      • getRemoteBusinessClassNames

        public Set<String> getRemoteBusinessClassNames()
        Returns the set of remote business interface names for this ejb. If the bean does not expose a remote business view, return a set of size 0.
        Specified by:
        getRemoteBusinessClassNames in interface com.sun.enterprise.deployment.EjbDescriptor
      • getLocalBusinessClassNames

        public Set<String> getLocalBusinessClassNames()
        Returns the set of local business interface names for this ejb. If the bean does not expose a local business view, return a set of size 0.
        Specified by:
        getLocalBusinessClassNames in interface com.sun.enterprise.deployment.EjbDescriptor
      • setWebServiceEndpointInterfaceName

        public void setWebServiceEndpointInterfaceName​(String name)
        Specified by:
        setWebServiceEndpointInterfaceName in interface com.sun.enterprise.deployment.EjbDescriptor
      • getWebServiceEndpointInterfaceName

        public String getWebServiceEndpointInterfaceName()
        Specified by:
        getWebServiceEndpointInterfaceName in interface com.sun.enterprise.deployment.EjbDescriptor
      • getJndiName

        public String getJndiName()
        Specified by:
        getJndiName in interface com.sun.enterprise.deployment.NamedDescriptor
      • setJndiName

        public void setJndiName​(String jndiName)
        Specified by:
        setJndiName in interface com.sun.enterprise.deployment.NamedDescriptor
      • getMappedName

        public String getMappedName()
      • setMappedName

        public void setMappedName​(String mappedName)
      • setLocalBean

        public void setLocalBean​(boolean localBean)
        Marks this ejb as a LocalBean.
      • isLocalInterfacesSupported

        public boolean isLocalInterfacesSupported()
        Specified by:
        isLocalInterfacesSupported in interface com.sun.enterprise.deployment.EjbDescriptor
        Returns:
        true if the EJB described has a LocalHome/Local interface
      • isLocalBusinessInterfacesSupported

        public boolean isLocalBusinessInterfacesSupported()
        Specified by:
        isLocalBusinessInterfacesSupported in interface com.sun.enterprise.deployment.EjbDescriptor
        Returns:
        true if the EJB has 1 or more local business interfaces
      • isRemoteInterfacesSupported

        public boolean isRemoteInterfacesSupported()
        Specified by:
        isRemoteInterfacesSupported in interface com.sun.enterprise.deployment.EjbDescriptor
        Returns:
        true if the EJB has a RemoteHome/Remote interface
      • isRemoteBusinessInterfacesSupported

        public boolean isRemoteBusinessInterfacesSupported()
        Specified by:
        isRemoteBusinessInterfacesSupported in interface com.sun.enterprise.deployment.EjbDescriptor
        Returns:
        true if the EJB has 1 or more remote business interfaces
      • hasWebServiceEndpointInterface

        public boolean hasWebServiceEndpointInterface()
        Specified by:
        hasWebServiceEndpointInterface in interface com.sun.enterprise.deployment.EjbDescriptor
        Returns:
        true if this is an EJB that implements a web service endpoint.
      • isLocalBean

        public boolean isLocalBean()
        Specified by:
        isLocalBean in interface com.sun.enterprise.deployment.EjbDescriptor
        Returns:
        true if this is an EJB provides a no interface Local view.
      • setEjbClassName

        public void setEjbClassName​(String ejbClassName)
        Sets the classname of the ejb.
      • getEjbClassName

        public String getEjbClassName()
        Returns the classname of the ejb.
        Specified by:
        getEjbClassName in interface com.sun.enterprise.deployment.EjbDescriptor
      • getEjbImplClassName

        public String getEjbImplClassName()
        IASRI 4725194 Returns the Execution class ,which is same as the user-specified class in case of Message,Session and Bean Managed Persistence Entity Beans but is different for Container Mananged Persistence Entity Bean Therefore,the implementation in the base class is to return getEjbClassName() and the method is redefined in IASEjbCMPDescriptor.
        Specified by:
        getEjbImplClassName in interface com.sun.enterprise.deployment.EjbDescriptor
      • setRemoteHomeImplClassName

        public void setRemoteHomeImplClassName​(String name)
        Sets the remote home implementation classname of the ejb.
      • getRemoteHomeImplClassName

        public String getRemoteHomeImplClassName()
        Returns the classname of the remote home impl.
      • setLocalHomeImplClassName

        public void setLocalHomeImplClassName​(String name)
        Sets the Local home implementation classname of the ejb.
      • getLocalHomeImplClassName

        public String getLocalHomeImplClassName()
        Returns the classname of the Local home impl.
      • setEJBLocalObjectImplClassName

        public void setEJBLocalObjectImplClassName​(String name)
        Sets the EJBLocalObject implementation classname of the ejb.
      • getEJBLocalObjectImplClassName

        public String getEJBLocalObjectImplClassName()
        Returns the classname of the EJBLocalObject impl.
      • setEJBObjectImplClassName

        public void setEJBObjectImplClassName​(String name)
        Sets the EJBObject implementation classname of the ejb.
      • getEJBObjectImplClassName

        public String getEJBObjectImplClassName()
        Returns the classname of the EJBObject impl.
      • getTransactionType

        public String getTransactionType()
        The transaction type of this ejb.
        Specified by:
        getTransactionType in interface com.sun.enterprise.deployment.EjbDescriptor
      • setTransactionType

        public abstract void setTransactionType​(String transactionType)
        Set the transaction type of this ejb.
      • getPossibleTransactionAttributes

        public Vector getPossibleTransactionAttributes()
        Returns the set of transaction attributes that can be assigned to methods of this ejb when in CMT mode. Elements are of type ContainerTransaction
      • isTimedObject

        public boolean isTimedObject()
      • getEjbTimeoutMethod

        public com.sun.enterprise.deployment.MethodDescriptor getEjbTimeoutMethod()
      • setEjbTimeoutMethod

        public void setEjbTimeoutMethod​(com.sun.enterprise.deployment.MethodDescriptor method)
      • addScheduledTimerDescriptor

        public void addScheduledTimerDescriptor​(ScheduledTimerDescriptor scheduleDescriptor)
      • addScheduledTimerDescriptorFromDD

        public void addScheduledTimerDescriptorFromDD​(ScheduledTimerDescriptor scheduleDescriptor)
        Special method for overrides because more than one schedule can be specified on a single method
      • hasScheduledTimerMethodFromDD

        public boolean hasScheduledTimerMethodFromDD​(Method timerMethod)
      • getAroundInvokeDescriptors

        public Set<com.sun.enterprise.deployment.LifecycleCallbackDescriptor> getAroundInvokeDescriptors()
      • addAroundInvokeDescriptor

        public void addAroundInvokeDescriptor​(com.sun.enterprise.deployment.LifecycleCallbackDescriptor aroundInvokeDesc)
      • getAroundInvokeDescriptorByClass

        public com.sun.enterprise.deployment.LifecycleCallbackDescriptor getAroundInvokeDescriptorByClass​(String className)
      • hasAroundInvokeMethod

        public boolean hasAroundInvokeMethod()
      • getAroundTimeoutDescriptors

        public Set<com.sun.enterprise.deployment.LifecycleCallbackDescriptor> getAroundTimeoutDescriptors()
      • addAroundTimeoutDescriptor

        public void addAroundTimeoutDescriptor​(com.sun.enterprise.deployment.LifecycleCallbackDescriptor aroundTimeoutDesc)
      • getAroundTimeoutDescriptorByClass

        public com.sun.enterprise.deployment.LifecycleCallbackDescriptor getAroundTimeoutDescriptorByClass​(String className)
      • hasAroundTimeoutMethod

        public boolean hasAroundTimeoutMethod()
      • addFrameworkInterceptor

        public void addFrameworkInterceptor​(com.sun.enterprise.deployment.InterceptorDescriptor interceptor)
        Specified by:
        addFrameworkInterceptor in interface com.sun.enterprise.deployment.EjbDescriptor
      • getFrameworkInterceptors

        public List<com.sun.enterprise.deployment.InterceptorDescriptor> getFrameworkInterceptors()
      • applyDefaultClassToLifecycleMethods

        public void applyDefaultClassToLifecycleMethods()
        Since ejb-class is optional, in some cases the lifecycle-class for AroundInvoke, PostConstruct, etc. methods on the bean-class is not known at processing time and must be applied lazily. As such, this method should only be called if the ejb-class has been set on this EjbDescriptor.
      • getLifecycleCallbackDescriptors

        public Set<com.sun.enterprise.deployment.LifecycleCallbackDescriptor> getLifecycleCallbackDescriptors()
      • applyInterceptors

        public void applyInterceptors​(InterceptorBindingTranslator bindingTranslator)
        Derive all interceptors that are applicable to this bean.
      • hasInterceptorClass

        public boolean hasInterceptorClass​(String interceptorClassName)
        Specified by:
        hasInterceptorClass in interface com.sun.enterprise.deployment.EjbDescriptor
      • addInterceptorClass

        public void addInterceptorClass​(com.sun.enterprise.deployment.EjbInterceptor interceptor)
        Specified by:
        addInterceptorClass in interface com.sun.enterprise.deployment.EjbDescriptor
      • appendToInterceptorChain

        public void appendToInterceptorChain​(List<com.sun.enterprise.deployment.EjbInterceptor> chain)
        Specified by:
        appendToInterceptorChain in interface com.sun.enterprise.deployment.EjbDescriptor
      • getInterceptorClasses

        public Set<com.sun.enterprise.deployment.EjbInterceptor> getInterceptorClasses()
        Return an unordered set of interceptor descriptors for this bean. This list does not include interceptor info for the bean class itself, even if the bean class declares AroundInvoke methods and/or callbacks.
      • getInterceptorClassNames

        public Set<String> getInterceptorClassNames()
        Return an unordered set of the names of all interceptor classes for this bean. This list does not include the name of the bean class itself, even if the bean class declares AroundInvoke methods and/or callbacks.
      • getMethodInterceptorsMap

        public Map<com.sun.enterprise.deployment.MethodDescriptor,​List<com.sun.enterprise.deployment.EjbInterceptor>> getMethodInterceptorsMap()
      • getInterceptorChain

        public List<com.sun.enterprise.deployment.EjbInterceptor> getInterceptorChain()
      • getAroundInvokeInterceptors

        public List<com.sun.enterprise.deployment.EjbInterceptor> getAroundInvokeInterceptors​(com.sun.enterprise.deployment.MethodDescriptor businessMethod)
        Return the ordered list of interceptor info for AroundInvoke behavior of a particular business method. This list *does* include the info on any bean class interceptor. If present, this would always be the last element in the list because of the precedence defined by the spec.
      • getAroundTimeoutInterceptors

        public List<com.sun.enterprise.deployment.EjbInterceptor> getAroundTimeoutInterceptors​(com.sun.enterprise.deployment.MethodDescriptor businessMethod)
        Return the ordered list of interceptor info for AroundTimeout behavior of a particular business method. This list *does* include the info on any bean class interceptor. If present, this would always be the last element in the list because of the precedence defined by the spec.
      • addMethodLevelChain

        public void addMethodLevelChain​(List<com.sun.enterprise.deployment.EjbInterceptor> chain,
                                        Method m,
                                        boolean aroundInvoke)
        Specified by:
        addMethodLevelChain in interface com.sun.enterprise.deployment.EjbDescriptor
      • getCallbackInterceptors

        public List<com.sun.enterprise.deployment.EjbInterceptor> getCallbackInterceptors​(com.sun.enterprise.deployment.LifecycleCallbackDescriptor.CallbackType type)
        Return the ordered list of interceptor info for a particular callback event type. This list *does* include the info on any bean class callback. If present, this would always be the last element in the list because of the precedence defined by the spec.
      • isDistributedTransactionScope

        public boolean isDistributedTransactionScope()
        Gets the transaction scope of this ejb.
        Returns:
        true if bean has distributed tx scope (default).
      • setDistributedTransactionScope

        public void setDistributedTransactionScope​(boolean scope)
        Set the transaction scope of this ejb.
      • setUsesCallerIdentity

        public void setUsesCallerIdentity​(boolean flag)
        Set the usesCallerIdentity flag
        Specified by:
        setUsesCallerIdentity in interface com.sun.enterprise.deployment.EjbDescriptor
      • getUsesCallerIdentity

        public Boolean getUsesCallerIdentity()
        Get the usesCallerIdentity flag
        Specified by:
        getUsesCallerIdentity in interface com.sun.enterprise.deployment.EjbDescriptor
        Returns:
        Boolean.TRUE if this bean uses caller identity null if this is called before validator visit
      • getSecurityIdentityDescription

        public String getSecurityIdentityDescription()
        Get the description field of security-identity
      • setSecurityIdentityDescription

        public void setSecurityIdentityDescription​(String s)
        Set the description field of security-identity
      • setRunAsIdentity

        public void setRunAsIdentity​(com.sun.enterprise.deployment.RunAsIdentityDescriptor desc)
        Specified by:
        setRunAsIdentity in interface com.sun.enterprise.deployment.EjbDescriptor
      • getRunAsIdentity

        public com.sun.enterprise.deployment.RunAsIdentityDescriptor getRunAsIdentity()
        Specified by:
        getRunAsIdentity in interface com.sun.enterprise.deployment.EjbDescriptor
      • setUsesDefaultTransaction

        public void setUsesDefaultTransaction()
        Have default method transaction if isBoundsChecking is on.
      • isUsesDefaultTransaction

        public boolean isUsesDefaultTransaction()
        Returns:
        a state to indicate whether default method transaction is used if isBoundsChecking is on.
      • getMethodContainerTransactions

        public Hashtable getMethodContainerTransactions()
        Return a copy of the mapping held internally of method descriptors to container transaction objects.
      • setContainerTransactionFor

        public void setContainerTransactionFor​(com.sun.enterprise.deployment.MethodDescriptor methodDescriptor,
                                               ContainerTransaction containerTransaction)
        Sets the container transaction for the given method descriptor. Throws an Illegal argument if this ejb has transaction type BEAN_TRANSACTION_TYPE.
      • setMethodContainerTransactions

        public void setMethodContainerTransactions​(Hashtable methodContainerTransactions)
        Sets the container transactions for all the method descriptors of this ejb. The Hashtable is keyed by method descriptor and the values are the corresponding container transaction objects.. Throws an Illegal argument if this ejb has transaction type BEAN_TRANSACTION_TYPE.
      • getContainerTransactionFor

        public ContainerTransaction getContainerTransactionFor​(com.sun.enterprise.deployment.MethodDescriptor methodDescriptor)
        Fetches the assigned container transaction object for the given method object or null.
      • getContainerTransaction

        public ContainerTransaction getContainerTransaction()
        returns a ContainerTransaction if all the transactional methods on the ejb descriptor have the same transaction type else return null
      • getIORConfigurationDescriptors

        public Set<com.sun.enterprise.deployment.EjbIORConfigurationDescriptor> getIORConfigurationDescriptors()
        Specified by:
        getIORConfigurationDescriptors in interface com.sun.enterprise.deployment.EjbDescriptor
      • addIORConfigurationDescriptor

        public void addIORConfigurationDescriptor​(com.sun.enterprise.deployment.EjbIORConfigurationDescriptor val)
      • getPermissionedRoles

        public Set<org.glassfish.security.common.Role> getPermissionedRoles()
        Specified by:
        getPermissionedRoles in interface com.sun.enterprise.deployment.EjbDescriptor
      • getPermissionedMethodsByPermission

        public Map getPermissionedMethodsByPermission()
        Returns:
        the Map of MethodPermission (keys) that have been assigned to MethodDescriptors (elements)
      • addPermissionedMethod

        public void addPermissionedMethod​(com.sun.enterprise.deployment.MethodPermission mp,
                                          com.sun.enterprise.deployment.MethodDescriptor md)
        Add a new method permission to a method or a set of methods
        Specified by:
        addPermissionedMethod in interface com.sun.enterprise.deployment.EjbDescriptor
        Parameters:
        mp - is the new method permission to assign
        md - describe the method or set of methods this permission apply to
      • getMethodPermissionsFromDD

        public HashMap getMethodPermissionsFromDD()
        Get a record of all the Method Permissions exactly as they were in the`DD
        Specified by:
        getMethodPermissionsFromDD in interface com.sun.enterprise.deployment.EjbDescriptor
      • removePermissionedMethod

        public void removePermissionedMethod​(com.sun.enterprise.deployment.MethodPermission mp,
                                             com.sun.enterprise.deployment.MethodDescriptor md)
        Remove a method permission from a method or a set of methods
        Parameters:
        mp - is the method permission to remove
        md - describe the method or set of methods this permission apply to
      • getStyledPermissionedMethodsByPermission

        public Map getStyledPermissionedMethodsByPermission()
        Returns:
        a map of permission to style 1 or 2 method descriptors
      • getUncheckedMethodDescriptors

        public Set getUncheckedMethodDescriptors()
        Returns:
        a Set of method descriptors for all the methods associated with an unchecked method permission
      • getExcludedMethodDescriptors

        public Set getExcludedMethodDescriptors()
        Returns:
        a Set of method descriptors for all the methoda assoicated with an excluded method permission
      • getMethodPermissionsFor

        public Set getMethodPermissionsFor​(com.sun.enterprise.deployment.MethodDescriptor methodDescriptor)
        Specified by:
        getMethodPermissionsFor in interface com.sun.enterprise.deployment.EjbDescriptor
        Returns:
        the set of method permission assigned to a ejb method descriptor.
      • getEjbReferenceDescriptors

        public final Set<com.sun.enterprise.deployment.types.EjbReference> getEjbReferenceDescriptors()
        Return the set of ejb references this ejb declares.
        Specified by:
        getEjbReferenceDescriptors in interface com.sun.enterprise.deployment.types.EjbReferenceContainer
        Specified by:
        getEjbReferenceDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • addEjbReferenceDescriptor

        public final void addEjbReferenceDescriptor​(com.sun.enterprise.deployment.types.EjbReference ejbReference)
        Adds a reference to another ejb to me.
        Specified by:
        addEjbReferenceDescriptor in interface com.sun.enterprise.deployment.types.EjbReferenceContainer
        Specified by:
        addEjbReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • removeEjbReferenceDescriptor

        public final void removeEjbReferenceDescriptor​(com.sun.enterprise.deployment.types.EjbReference ejbReference)
        Specified by:
        removeEjbReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • getPostConstructDescriptors

        public final Set<com.sun.enterprise.deployment.LifecycleCallbackDescriptor> getPostConstructDescriptors()
        Specified by:
        getPostConstructDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • addPostConstructDescriptor

        public final void addPostConstructDescriptor​(com.sun.enterprise.deployment.LifecycleCallbackDescriptor postConstructDesc)
        Specified by:
        addPostConstructDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • getPostConstructDescriptorByClass

        public final com.sun.enterprise.deployment.LifecycleCallbackDescriptor getPostConstructDescriptorByClass​(String className)
        Specified by:
        getPostConstructDescriptorByClass in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • getPreDestroyDescriptors

        public final Set<com.sun.enterprise.deployment.LifecycleCallbackDescriptor> getPreDestroyDescriptors()
        Specified by:
        getPreDestroyDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • addPreDestroyDescriptor

        public final void addPreDestroyDescriptor​(com.sun.enterprise.deployment.LifecycleCallbackDescriptor preDestroyDesc)
        Specified by:
        addPreDestroyDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • getPreDestroyDescriptorByClass

        public final com.sun.enterprise.deployment.LifecycleCallbackDescriptor getPreDestroyDescriptorByClass​(String className)
        Specified by:
        getPreDestroyDescriptorByClass in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • getServiceReferenceDescriptors

        public final Set<com.sun.enterprise.deployment.ServiceReferenceDescriptor> getServiceReferenceDescriptors()
        Specified by:
        getServiceReferenceDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
        Specified by:
        getServiceReferenceDescriptors in interface com.sun.enterprise.deployment.types.ServiceReferenceContainer
      • addServiceReferenceDescriptor

        public final void addServiceReferenceDescriptor​(com.sun.enterprise.deployment.ServiceReferenceDescriptor serviceRef)
        Specified by:
        addServiceReferenceDescriptor in interface com.sun.enterprise.deployment.types.ServiceReferenceContainer
        Specified by:
        addServiceReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • removeServiceReferenceDescriptor

        public final void removeServiceReferenceDescriptor​(com.sun.enterprise.deployment.ServiceReferenceDescriptor serviceRef)
        Specified by:
        removeServiceReferenceDescriptor in interface com.sun.enterprise.deployment.types.ServiceReferenceContainer
        Specified by:
        removeServiceReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • getServiceReferenceByName

        public final com.sun.enterprise.deployment.ServiceReferenceDescriptor getServiceReferenceByName​(String name)
        Looks up an service reference with the given name. Throws an IllegalArgumentException if it is not found.
        Specified by:
        getServiceReferenceByName in interface com.sun.enterprise.deployment.JndiNameEnvironment
        Specified by:
        getServiceReferenceByName in interface com.sun.enterprise.deployment.types.ServiceReferenceContainer
      • getMessageDestinationReferenceDescriptors

        public final Set<com.sun.enterprise.deployment.MessageDestinationReferenceDescriptor> getMessageDestinationReferenceDescriptors()
        Specified by:
        getMessageDestinationReferenceDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
        Specified by:
        getMessageDestinationReferenceDescriptors in interface com.sun.enterprise.deployment.types.MessageDestinationReferenceContainer
      • addMessageDestinationReferenceDescriptor

        public final void addMessageDestinationReferenceDescriptor​(com.sun.enterprise.deployment.MessageDestinationReferenceDescriptor messageDestRef)
        Specified by:
        addMessageDestinationReferenceDescriptor in interface com.sun.enterprise.deployment.types.MessageDestinationReferenceContainer
        Specified by:
        addMessageDestinationReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • removeMessageDestinationReferenceDescriptor

        public final void removeMessageDestinationReferenceDescriptor​(com.sun.enterprise.deployment.MessageDestinationReferenceDescriptor msgDestRef)
        Specified by:
        removeMessageDestinationReferenceDescriptor in interface com.sun.enterprise.deployment.types.MessageDestinationReferenceContainer
        Specified by:
        removeMessageDestinationReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • getMessageDestinationReferenceByName

        public final com.sun.enterprise.deployment.MessageDestinationReferenceDescriptor getMessageDestinationReferenceByName​(String name)
        Looks up an message destination reference with the given name. Throws an IllegalArgumentException if it is not found.
        Specified by:
        getMessageDestinationReferenceByName in interface com.sun.enterprise.deployment.JndiNameEnvironment
        Specified by:
        getMessageDestinationReferenceByName in interface com.sun.enterprise.deployment.types.MessageDestinationReferenceContainer
      • getResourceDescriptors

        public final Set<com.sun.enterprise.deployment.ResourceDescriptor> getResourceDescriptors​(org.glassfish.deployment.common.JavaEEResourceType type)
        Specified by:
        getResourceDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
        Overrides:
        getResourceDescriptors in class com.sun.enterprise.deployment.CommonResourceDescriptor
      • addResourceDescriptor

        public final void addResourceDescriptor​(com.sun.enterprise.deployment.ResourceDescriptor descriptor)
        Specified by:
        addResourceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
        Overrides:
        addResourceDescriptor in class com.sun.enterprise.deployment.CommonResourceDescriptor
      • removeResourceDescriptor

        public final void removeResourceDescriptor​(com.sun.enterprise.deployment.ResourceDescriptor descriptor)
        Specified by:
        removeResourceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
        Overrides:
        removeResourceDescriptor in class com.sun.enterprise.deployment.CommonResourceDescriptor
      • getAllResourcesDescriptors

        public final Set<com.sun.enterprise.deployment.ResourceDescriptor> getAllResourcesDescriptors()
        Specified by:
        getAllResourcesDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
        Overrides:
        getAllResourcesDescriptors in class com.sun.enterprise.deployment.CommonResourceDescriptor
      • getAllResourcesDescriptors

        public final Set<com.sun.enterprise.deployment.ResourceDescriptor> getAllResourcesDescriptors​(Class givenClazz)
        Specified by:
        getAllResourcesDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
        Overrides:
        getAllResourcesDescriptors in class com.sun.enterprise.deployment.CommonResourceDescriptor
      • getResourceEnvReferenceDescriptors

        public final Set<com.sun.enterprise.deployment.ResourceEnvReferenceDescriptor> getResourceEnvReferenceDescriptors()
        Return the set of resource environment references this ejb declares.
        Specified by:
        getResourceEnvReferenceDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
        Specified by:
        getResourceEnvReferenceDescriptors in interface com.sun.enterprise.deployment.types.ResourceEnvReferenceContainer
      • addResourceEnvReferenceDescriptor

        public final void addResourceEnvReferenceDescriptor​(com.sun.enterprise.deployment.ResourceEnvReferenceDescriptor resourceEnvReference)
        Specified by:
        addResourceEnvReferenceDescriptor in interface com.sun.enterprise.deployment.types.ResourceEnvReferenceContainer
        Specified by:
        addResourceEnvReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • removeResourceEnvReferenceDescriptor

        public final void removeResourceEnvReferenceDescriptor​(com.sun.enterprise.deployment.ResourceEnvReferenceDescriptor resourceEnvReference)
        Specified by:
        removeResourceEnvReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • getResourceEnvReferenceByName

        public final com.sun.enterprise.deployment.ResourceEnvReferenceDescriptor getResourceEnvReferenceByName​(String name)
        Specified by:
        getResourceEnvReferenceByName in interface com.sun.enterprise.deployment.JndiNameEnvironment
        Specified by:
        getResourceEnvReferenceByName in interface com.sun.enterprise.deployment.types.ResourceEnvReferenceContainer
      • getResourceReferenceDescriptors

        public final Set<com.sun.enterprise.deployment.ResourceReferenceDescriptor> getResourceReferenceDescriptors()
        Return the set of resource references this ejb declares.
        Specified by:
        getResourceReferenceDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
        Specified by:
        getResourceReferenceDescriptors in interface com.sun.enterprise.deployment.types.ResourceReferenceContainer
      • addResourceReferenceDescriptor

        public final void addResourceReferenceDescriptor​(com.sun.enterprise.deployment.ResourceReferenceDescriptor resourceReference)
        Adds a resource reference to me.
        Specified by:
        addResourceReferenceDescriptor in interface com.sun.enterprise.deployment.types.ResourceReferenceContainer
        Specified by:
        addResourceReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • removeResourceReferenceDescriptor

        public final void removeResourceReferenceDescriptor​(com.sun.enterprise.deployment.ResourceReferenceDescriptor resourceReference)
        Removes the given resource reference from me.
        Specified by:
        removeResourceReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • getEnvironmentPropertyByName

        public final com.sun.enterprise.deployment.EnvironmentProperty getEnvironmentPropertyByName​(String name)
        Returns the environment property object searching on the supplied key. throws an illegal argument exception if no such environment property exists.
        Specified by:
        getEnvironmentPropertyByName in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • getEnvironmentProperties

        public final Set<com.sun.enterprise.deployment.EnvironmentProperty> getEnvironmentProperties()
        Return a copy of the structure holding the environment properties.
        Specified by:
        getEnvironmentProperties in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • addEnvironmentProperty

        public final void addEnvironmentProperty​(com.sun.enterprise.deployment.EnvironmentProperty environmentProperty)
        Add the supplied environment property to the ejb descriptor's list.
        Specified by:
        addEnvironmentProperty in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • removeEnvironmentProperty

        public final void removeEnvironmentProperty​(com.sun.enterprise.deployment.EnvironmentProperty environmentProperty)
        Removes the given environment property from me.
        Specified by:
        removeEnvironmentProperty in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • getEntityManagerFactoryReferenceDescriptors

        public final Set<com.sun.enterprise.deployment.EntityManagerFactoryReferenceDescriptor> getEntityManagerFactoryReferenceDescriptors()
        Specified by:
        getEntityManagerFactoryReferenceDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • getEntityManagerFactoryReferenceByName

        public final com.sun.enterprise.deployment.EntityManagerFactoryReferenceDescriptor getEntityManagerFactoryReferenceByName​(String name)
        Return the entity manager factory reference descriptor corresponding to the given name.
        Specified by:
        getEntityManagerFactoryReferenceByName in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • addEntityManagerFactoryReferenceDescriptor

        public final void addEntityManagerFactoryReferenceDescriptor​(com.sun.enterprise.deployment.EntityManagerFactoryReferenceDescriptor reference)
        Specified by:
        addEntityManagerFactoryReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • getEntityManagerReferenceDescriptors

        public final Set<com.sun.enterprise.deployment.EntityManagerReferenceDescriptor> getEntityManagerReferenceDescriptors()
        Specified by:
        getEntityManagerReferenceDescriptors in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • getEntityManagerReferenceByName

        public final com.sun.enterprise.deployment.EntityManagerReferenceDescriptor getEntityManagerReferenceByName​(String name)
        Return the entity manager factory reference descriptor corresponding to the given name.
        Specified by:
        getEntityManagerReferenceByName in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • addEntityManagerReferenceDescriptor

        public final void addEntityManagerReferenceDescriptor​(com.sun.enterprise.deployment.EntityManagerReferenceDescriptor reference)
        Specified by:
        addEntityManagerReferenceDescriptor in interface com.sun.enterprise.deployment.WritableJndiNameEnvironment
      • getInjectableResourcesByClass

        public final List<com.sun.enterprise.deployment.InjectionCapable> getInjectableResourcesByClass​(String className)
        Specified by:
        getInjectableResourcesByClass in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • getInjectionInfoByClass

        public final com.sun.enterprise.deployment.InjectionInfo getInjectionInfoByClass​(Class clazz)
        Specified by:
        getInjectionInfoByClass in interface com.sun.enterprise.deployment.JndiNameEnvironment
      • hasPostConstructMethod

        public boolean hasPostConstructMethod()
      • hasPreDestroyMethod

        public boolean hasPreDestroyMethod()
      • getResourceReferenceDescriptors

        public Set<com.sun.enterprise.deployment.ResourceReferenceDescriptor> getResourceReferenceDescriptors​(boolean resolved)
        Return the set of resource references this ejb declares that have been resolved.
      • getResourceReferenceByName

        public com.sun.enterprise.deployment.ResourceReferenceDescriptor getResourceReferenceByName​(String name)
        Return the resource object corresponding to the supplied name or throw an illegal argument exception.
        Specified by:
        getResourceReferenceByName in interface com.sun.enterprise.deployment.types.ResourceReferenceContainer
      • hasResolvedResourceReferences

        public boolean hasResolvedResourceReferences()
        Returns true if this ejb descriptor has resource references that are resolved.
      • getEjbReference

        public com.sun.enterprise.deployment.types.EjbReference getEjbReference​(String name)
        Return a reference to another ejb by the same name or throw an IllegalArgumentException.
        Specified by:
        getEjbReference in interface com.sun.enterprise.deployment.types.EjbReferenceContainer
      • getRoleReferences

        public Set<com.sun.enterprise.deployment.RoleReference> getRoleReferences()
        Return a copy of the role references set.
      • addRoleReference

        public void addRoleReference​(com.sun.enterprise.deployment.RoleReference roleReference)
        Adds a role reference.
        Specified by:
        addRoleReference in interface com.sun.enterprise.deployment.EjbDescriptor
      • removeRoleReference

        public void removeRoleReference​(com.sun.enterprise.deployment.RoleReference roleReference)
        Removes a role reference.
      • getRoleReferenceByName

        public com.sun.enterprise.deployment.RoleReference getRoleReferenceByName​(String roleReferenceName)
        Returns a matching role reference by name or throw an IllegalArgumentException.
        Specified by:
        getRoleReferenceByName in interface com.sun.enterprise.deployment.EjbDescriptor
      • getEjbBundleDescriptor

        public EjbBundleDescriptorImpl getEjbBundleDescriptor()
        Gets the containing ejb bundle descriptor..
        Specified by:
        getEjbBundleDescriptor in interface com.sun.enterprise.deployment.EjbDescriptor
      • notifyNewModule

        public void notifyNewModule​(com.sun.enterprise.deployment.WebBundleDescriptor wbd)
        Called by WebArchivist to notify this EjbDescriptor that it has been associated with a web bundle.
        Specified by:
        notifyNewModule in interface com.sun.enterprise.deployment.EjbDescriptor
      • getApplication

        public com.sun.enterprise.deployment.Application getApplication()
        Gets the application to which this ejb descriptor belongs.
        Specified by:
        getApplication in interface com.sun.enterprise.deployment.EjbDescriptor
      • getMethodDescriptors

        public Set getMethodDescriptors()
        Returns the full set of method descriptors I have (from all the methods on my home and remote interfaces).
        Specified by:
        getMethodDescriptors in interface com.sun.enterprise.deployment.EjbDescriptor
      • getTxBusinessMethodDescriptors

        public Set getTxBusinessMethodDescriptors()
        Returns the full set of transactional business method descriptors I have.
      • getSecurityBusinessMethodDescriptors

        public Set getSecurityBusinessMethodDescriptors()
        Returns the full set of security business method descriptors I have.
        Specified by:
        getSecurityBusinessMethodDescriptors in interface com.sun.enterprise.deployment.EjbDescriptor
      • getClientBusinessMethodDescriptors

        public Set getClientBusinessMethodDescriptors()
        Returns the set of local/remote/no-interface view business method descriptors I have.
      • addAllInterfaceMethodsIn

        protected void addAllInterfaceMethodsIn​(Collection methodDescriptors,
                                                Class c,
                                                String methodIntf)
      • getBusinessMethodDescriptorFor

        public com.sun.enterprise.deployment.MethodDescriptor getBusinessMethodDescriptorFor​(Method m,
                                                                                             String methodIntf)
        Returns:
        the MethodDescriptor for the given Method object
      • getTransactionMethodDescriptors

        public Collection getTransactionMethodDescriptors()
        Returns:
        the collection of MethodDescriptors to which ContainerTransactions may be assigned.
      • getTransactionMethods

        protected Collection getTransactionMethods​(ClassLoader classLoader)
        Returns:
        a collection of MethodDescriptor for methods which may have a associated transaction attribute
      • getOptionalLocalBusinessMethods

        public Set<Method> getOptionalLocalBusinessMethods()
        Return the set of method objects representing no-interface view
      • getContainerFactoryQualifier

        public abstract String getContainerFactoryQualifier()
      • getMethods

        public Vector getMethods()
        Return the set of method objects on my home and remote interfaces.
      • getMethods

        public Vector getMethods​(ClassLoader classLoader)
        Return the ejb method objects, i.e. the methods on the home and remote interfaces.
      • getFields

        public Vector getFields()
        Return a Vector of the Field objetcs of this ejb.
      • getFieldDescriptors

        public Vector getFieldDescriptors()
      • removeEjbReferencer

        public void removeEjbReferencer​(com.sun.enterprise.deployment.EjbReferenceDescriptor ref)
        Specified by:
        removeEjbReferencer in interface com.sun.enterprise.deployment.EjbDescriptor
      • addEjbReferencer

        public void addEjbReferencer​(com.sun.enterprise.deployment.EjbReferenceDescriptor ref)
        Specified by:
        addEjbReferencer in interface com.sun.enterprise.deployment.EjbDescriptor
      • getAllEjbReferencers

        public Set getAllEjbReferencers()
      • setUniqueId

        public void setUniqueId​(long id)
        Specified by:
        setUniqueId in interface com.sun.enterprise.deployment.EjbDescriptor
      • getUniqueId

        public long getUniqueId()
        Specified by:
        getUniqueId in interface com.sun.enterprise.deployment.EjbDescriptor
      • print

        public void print​(StringBuffer toStringBuffer)
        Returns a formatted String of the attributes of this object.
        Overrides:
        print in class org.glassfish.deployment.common.Descriptor
      • visit

        public void visit​(org.glassfish.deployment.common.DescriptorVisitor aVisitor)
        visit the descriptor and all sub descriptors with a DOL visitor implementation
        Overrides:
        visit in class org.glassfish.deployment.common.Descriptor
        Parameters:
        aVisitor - a visitor to traverse the descriptors
      • visit

        public void visit​(EjbVisitor aVisitor)
        visit the descriptor and all sub descriptors with a DOL visitor implementation
        Parameters:
        aVisitor - a visitor to traverse the descriptors
      • allMechanismsRequireSSL

        public boolean allMechanismsRequireSSL()
        This method determines if all the mechanisms defined in the CSIV2 CompoundSecMechList structure require protected invocations.
        Specified by:
        allMechanismsRequireSSL in interface com.sun.enterprise.deployment.EjbDescriptor