Annotation Type ManagedThreadFactoryDefinition
-
@Repeatable(List.class) @Retention(RUNTIME) @Target(TYPE) public @interface ManagedThreadFactoryDefinition
Defines a
ManagedThreadFactoryto be registered in JNDI by the container under the JNDI name that is specified in thename()attribute.Application components can refer to this JNDI name in the
lookupattribute of aResourceannotation,@ManagedThreadFactoryDefinition( name = "java:global/concurrent/MyThreadFactory", context = "java:global/concurrent/MyThreadFactoryContext", priority = 4) @ContextServiceDefinition( name = "java:global/concurrent/MyThreadFactoryContext", propagated = APPLICATION) public class MyServlet extends HttpServlet { @Resource(lookup = "java:global/concurrent/MyThreadFactory", name = "java:module/concurrent/env/MyThreadFactoryRef") ManagedThreadFactory myThreadFactory;Resource environment references in a deployment descriptor can similarly specify the
lookup-name,<resource-env-ref> <resource-env-ref-name>java:module/env/concurrent/MyThreadFactoryRef</resource-env-ref-name> <resource-env-ref-type>jakarta.enterprise.concurrent.ManagedThreadFactory</resource-env-ref-type> <lookup-name>java:global/concurrent/MyThreadFactory</lookup-name> </resource-env-ref>You can also define aManagedThreadFactorywith the<managed-thread-factory>deployment descriptor element. For example,<managed-thread-factory> <name>java:global/concurrent/MyThreadFactory</name> <context-service-ref>java:global/concurrent/MyThreadFactoryContext</context-service-ref> <priority>4</priority> </managed-thread-factory>If amanaged-thread-factoryandManagedThreadFactoryDefinitionhave the same name, their attributes are merged to define a singleManagedThreadFactorydefinition, with each attribute that is specified in themanaged-thread-factorydeployment descriptor entry taking precedence over the corresponding attribute of the annotation.- Since:
- 3.0
-
-
Required Element Summary
Required Elements Modifier and Type Required Element Description StringnameJNDI name of theManagedThreadFactoryinstance.
-
-
-
Element Detail
-
name
String name
JNDI name of theManagedThreadFactoryinstance. The JNDI name must be in a valid Jakarta EE namespace, such as,- java:comp
- java:module
- java:app
- java:global
- Returns:
ManagedThreadFactoryJNDI name.
-
-
-
context
String context
Determines how context is applied to threads from this thread factory.The name can be the name of a
ContextServiceDefinitionor the name of acontext-servicedeployment descriptor element or the JNDI name of the Jakarta EE defaultContextServiceinstance,java:comp/DefaultContextService.The name of the
ContextServicemust be no more granular than the name of thisManagedThreadFactoryDefinition. For example, if thisManagedThreadFactoryDefinitionhas a name injava:app, theContextServicecan be injava:apporjava:global, but not injava:modulewhich would be ambiguous as to which module'sContextServicedefinition should be used.The default value,
java:comp/DefaultContextService, is the JNDI name of the Jakarta EE defaultContextService.- Returns:
- instructions for capturing and propagating or clearing context.
- Default:
- "java:comp/DefaultContextService"
-
-
-
priority
int priority
Priority for threads created by this thread factory.
The default is
Thread.NORM_PRIORITY.- Returns:
- the priority for new threads.
- Default:
- 5
-
-