Class SessionBeanComponentDescription
- java.lang.Object
-
- org.jboss.as.ee.component.ComponentDescription
-
- org.jboss.as.ejb3.component.EJBComponentDescription
-
- org.jboss.as.ejb3.component.session.SessionBeanComponentDescription
-
- All Implemented Interfaces:
ResourceInjectionTarget
- Direct Known Subclasses:
SingletonComponentDescription,StatefulComponentDescription,StatelessComponentDescription
public abstract class SessionBeanComponentDescription extends EJBComponentDescription
- Author:
- Jaikiran Pai, Richard Opalka
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSessionBeanComponentDescription.SessionBeanType
-
Constructor Summary
Constructors Constructor Description SessionBeanComponentDescription(String componentName, String componentClassName, EjbJarDescription ejbJarDescription, org.jboss.as.server.deployment.DeploymentUnit deploymentUnit, org.jboss.metadata.ejb.spec.SessionBeanMetaData descriptorData)Construct a new instance.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddAsynchronousClass(String viewName)Add a bean class or superclass that has been marked asynchronousvoidaddAsynchronousMethod(org.jboss.invocation.proxy.MethodIdentifier methodIdentifier)Add an asynchronous method.protected voidaddCurrentInvocationContextFactory()Setup the current invocation context interceptor, which will be used during the post-construct lifecycle of the component instanceprotected voidaddCurrentInvocationContextFactory(ViewDescription view)Setup the current invocation context interceptor, which will be used during the invocation on the view (methods)voidaddLocalBusinessInterfaceViews(String... classNames)voidaddLocalBusinessInterfaceViews(Collection<String> classNames)voidaddNoInterfaceView()voidaddRemoteBusinessInterfaceViews(Collection<String> classNames)protected static voidaddTxManagementInterceptorForView(ViewDescription view)Sets up the transaction management interceptor for all methods of the passed view.EJBViewDescriptionaddWebserviceEndpointView()Set<String>getAsynchronousClasses()Set<org.jboss.invocation.proxy.MethodIdentifier>getAsynchronousMethods()Map<String,AccessTimeoutDetails>getBeanLevelAccessTimeout()Returns theAccessTimeoutapplicable for the bean.Map<String,jakarta.ejb.LockType>getBeanLevelLockType()Returns theLockTypeapplicable for the bean.jakarta.ejb.ConcurrencyManagementTypegetConcurrencyManagementType()Returns the concurrency management type for this bean.org.jboss.metadata.ejb.spec.SessionBeanMetaDatagetDescriptorData()StringgetMappedName()Returns the mapped-name of this beanMap<org.jboss.invocation.proxy.MethodIdentifier,AccessTimeoutDetails>getMethodApplicableAccessTimeouts()Map<org.jboss.invocation.proxy.MethodIdentifier,jakarta.ejb.LockType>getMethodApplicableLockTypes()protected abstract ViewConfiguratorgetSessionBeanObjectViewConfigurator()abstract SessionBeanComponentDescription.SessionBeanTypegetSessionBeanType()Returns the type of the session beanbooleanhasNoInterfaceView()booleanisSession()booleanisSingleton()booleanisStateful()booleanisStateless()voidsetAccessTimeout(AccessTimeoutDetails accessTimeout, org.jboss.invocation.proxy.MethodIdentifier method)Sets theAccessTimeoutfor the specific bean methodvoidsetBeanLevelAccessTimeout(String className, AccessTimeoutDetails accessTimeout)Sets theAccessTimeoutapplicable for the bean.voidsetBeanLevelLockType(String className, jakarta.ejb.LockType locktype)Sets theLockTypeapplicable for the bean.voidsetConcurrencyManagementType(jakarta.ejb.ConcurrencyManagementType concurrencyManagementType)voidsetLockType(jakarta.ejb.LockType lockType, org.jboss.invocation.proxy.MethodIdentifier method)Sets theLockTypefor the specific bean methodvoidsetMappedName(String mappedName)Sets the mapped-name for this beanprotected voidsetupViewInterceptors(EJBViewDescription view)-
Methods inherited from class org.jboss.as.ejb3.component.EJBComponentDescription
addDeclaredRoles, addEjbLocalObjectView, addEjbObjectView, addEJBSuspendHandlerDependency, addLocalHome, addRemoteHome, addRemoteTransactionsDependency, addScheduleMethod, addTransactionManagerDependencies, excludeClassLevelContainerInterceptors, excludeDefaultContainerInterceptors, getAllContainerInterceptors, getAnnotationMethodPermissions, getClassLevelContainerInterceptors, getDeclaredRoles, getDefaultContainerInterceptors, getDefinedSecurityDomain, getDescriptorMethodPermissions, getEJBClassName, getEjbHomeView, getEjbLocalHomeView, getEjbLocalView, getEJBName, getEjbRemoteView, getElytronInterceptorFactories, getMethodLevelContainerInterceptors, getResolvedSecurityDomain, getRunAs, getRunAsPrincipal, getScheduleMethods, getSecurityDomainServiceName, getSecurityRoleLinks, getSecurityRoles, getServerInterceptorCache, getShutDownInterceptorFactory, getTimeoutMethod, getTimerMethods, getTimerServiceResource, getTransactionAttributes, getTransactionManagementType, getTransactionTimeouts, hasBeanLevelSecurityMetadata, isEntity, isExcludeClassLevelContainerInterceptors, isExcludeDefaultContainerInterceptors, isExcludeDefaultContainerInterceptors, isExposedViaIiop, isMessageDriven, isMissingMethodPermissionsDeniedAccess, isOutflowSecurityDomainsConfigured, isSecurityRequired, linkSecurityRoles, registerView, registerView, requiresJacc, requiresLegacyCompliantPrincipalPropagation, setClassLevelContainerInterceptors, setDeclaredRoles, setDefaultContainerInterceptors, setDefaultSecurityDomain, setDefinedSecurityDomain, setExcludeDefaultContainerInterceptors, setExposedViaIiop, setLegacyCompliantPrincipalPropagation, setMethodContainerInterceptors, setMissingMethodPermissionsDenyAccess, setOutflowSecurityDomainsConfigured, setRequiresJacc, setRunAs, setRunAsPrincipal, setSecurityDomainServiceName, setSecurityRequired, setSecurityRoles, setServerInterceptorCache, setTimeoutMethod, setTimerServiceResource, setTransactionManagementType, setupClientViewInterceptors, setupRemoteView, setupSecurityInterceptors, toString
-
Methods inherited from class org.jboss.as.ee.component.ComponentDescription
addClassInterceptor, addDependency, addInterceptorMethodOverride, addMethodInterceptor, addResourceInjection, createConfiguration, excludeClassInterceptors, excludeDefaultInterceptors, getAllInterceptors, getApplicationName, getBeanDeploymentArchiveId, getBindingConfigurations, getClassInterceptor, getClassInterceptors, getComponentClassName, getComponentName, getConfigurators, getContextServiceName, getCreateServiceName, getDefaultInterceptors, getDependencies, getDeploymentDescriptorEnvironment, getMethodInterceptors, getModuleDescription, getModuleName, getNamingMode, getResourceInjections, getServiceName, getStartServiceName, getViews, isCDIInterceptorEnabled, isExcludeClassInterceptors, isExcludeDefaultInterceptors, isExcludeDefaultInterceptors, isIgnoreLifecycleInterceptors, isIntercepted, isOptional, isPassivationApplicable, isTimerServiceApplicable, isTimerServiceRequired, mergeInterceptorConfig, setBeanDeploymentArchiveId, setClassInterceptors, setContextServiceName, setDefaultInterceptors, setDeploymentDescriptorEnvironment, setExcludeDefaultInterceptors, setIgnoreLifecycleInterceptors, setMethodInterceptors, setNamingMode
-
-
-
-
Constructor Detail
-
SessionBeanComponentDescription
public SessionBeanComponentDescription(String componentName, String componentClassName, EjbJarDescription ejbJarDescription, org.jboss.as.server.deployment.DeploymentUnit deploymentUnit, org.jboss.metadata.ejb.spec.SessionBeanMetaData descriptorData)
Construct a new instance.- Parameters:
componentName- the component namecomponentClassName- the component instance class nameejbJarDescription- the module description
-
-
Method Detail
-
addLocalBusinessInterfaceViews
public void addLocalBusinessInterfaceViews(Collection<String> classNames)
-
addLocalBusinessInterfaceViews
public void addLocalBusinessInterfaceViews(String... classNames)
-
addNoInterfaceView
public void addNoInterfaceView()
-
addWebserviceEndpointView
public EJBViewDescription addWebserviceEndpointView()
-
addRemoteBusinessInterfaceViews
public void addRemoteBusinessInterfaceViews(Collection<String> classNames)
-
hasNoInterfaceView
public boolean hasNoInterfaceView()
-
setBeanLevelLockType
public void setBeanLevelLockType(String className, jakarta.ejb.LockType locktype)
Sets theLockTypeapplicable for the bean.- Parameters:
className- The class that has the annotationlocktype- The lock type applicable for the bean
-
getBeanLevelLockType
public Map<String,jakarta.ejb.LockType> getBeanLevelLockType()
Returns theLockTypeapplicable for the bean.- Returns:
-
setLockType
public void setLockType(jakarta.ejb.LockType lockType, org.jboss.invocation.proxy.MethodIdentifier method)Sets theLockTypefor the specific bean method- Parameters:
lockType- The applicable lock type for the methodmethod- The method
-
getMethodApplicableLockTypes
public Map<org.jboss.invocation.proxy.MethodIdentifier,jakarta.ejb.LockType> getMethodApplicableLockTypes()
-
getBeanLevelAccessTimeout
public Map<String,AccessTimeoutDetails> getBeanLevelAccessTimeout()
Returns theAccessTimeoutapplicable for the bean.- Returns:
-
setBeanLevelAccessTimeout
public void setBeanLevelAccessTimeout(String className, AccessTimeoutDetails accessTimeout)
Sets theAccessTimeoutapplicable for the bean.- Parameters:
accessTimeout- The access timeout applicable for the class
-
setAccessTimeout
public void setAccessTimeout(AccessTimeoutDetails accessTimeout, org.jboss.invocation.proxy.MethodIdentifier method)
Sets theAccessTimeoutfor the specific bean method- Parameters:
accessTimeout- The applicable access timeout for the methodmethod- The method
-
getMethodApplicableAccessTimeouts
public Map<org.jboss.invocation.proxy.MethodIdentifier,AccessTimeoutDetails> getMethodApplicableAccessTimeouts()
-
getConcurrencyManagementType
public jakarta.ejb.ConcurrencyManagementType getConcurrencyManagementType()
Returns the concurrency management type for this bean. This method returns null if the concurrency management type hasn't explicitly been set on thisSessionBeanComponentDescription- Returns:
-
setConcurrencyManagementType
public void setConcurrencyManagementType(jakarta.ejb.ConcurrencyManagementType concurrencyManagementType)
-
getMappedName
public String getMappedName()
Returns the mapped-name of this bean- Returns:
-
setMappedName
public void setMappedName(String mappedName)
Sets the mapped-name for this bean- Parameters:
mappedName-
-
addAsynchronousMethod
public void addAsynchronousMethod(org.jboss.invocation.proxy.MethodIdentifier methodIdentifier)
Add an asynchronous method.- Parameters:
methodIdentifier- The identifier for an async method
-
getAsynchronousMethods
public Set<org.jboss.invocation.proxy.MethodIdentifier> getAsynchronousMethods()
- Returns:
- The identifier of all async methods
-
addAsynchronousClass
public void addAsynchronousClass(String viewName)
Add a bean class or superclass that has been marked asynchronous- Parameters:
viewName- The view name
-
getAsynchronousClasses
public Set<String> getAsynchronousClasses()
- Returns:
- The class name of all asynchronous classes
-
getSessionBeanType
public abstract SessionBeanComponentDescription.SessionBeanType getSessionBeanType()
Returns the type of the session bean- Returns:
-
setupViewInterceptors
protected void setupViewInterceptors(EJBViewDescription view)
- Overrides:
setupViewInterceptorsin classEJBComponentDescription
-
getSessionBeanObjectViewConfigurator
protected abstract ViewConfigurator getSessionBeanObjectViewConfigurator()
-
addTxManagementInterceptorForView
protected static void addTxManagementInterceptorForView(ViewDescription view)
Sets up the transaction management interceptor for all methods of the passed view.- Parameters:
view- The EJB bean view
-
addCurrentInvocationContextFactory
protected void addCurrentInvocationContextFactory()
Description copied from class:EJBComponentDescriptionSetup the current invocation context interceptor, which will be used during the post-construct lifecycle of the component instance- Specified by:
addCurrentInvocationContextFactoryin classEJBComponentDescription
-
addCurrentInvocationContextFactory
protected void addCurrentInvocationContextFactory(ViewDescription view)
Description copied from class:EJBComponentDescriptionSetup the current invocation context interceptor, which will be used during the invocation on the view (methods)- Specified by:
addCurrentInvocationContextFactoryin classEJBComponentDescription- Parameters:
view- The view for which the interceptor has to be setup
-
isSession
public boolean isSession()
- Overrides:
isSessionin classEJBComponentDescription
-
isSingleton
public boolean isSingleton()
- Overrides:
isSingletonin classEJBComponentDescription
-
isStateful
public boolean isStateful()
- Overrides:
isStatefulin classEJBComponentDescription
-
isStateless
public boolean isStateless()
- Overrides:
isStatelessin classEJBComponentDescription
-
getDescriptorData
public org.jboss.metadata.ejb.spec.SessionBeanMetaData getDescriptorData()
- Overrides:
getDescriptorDatain classEJBComponentDescription
-
-