@Contract public abstract class OperationContext<T> extends Object implements Context<T>
Context for an Operation.
An operation is defined as a unit of work that can be associated with one or more java threads, but where two operations of the same type may not be associated with the same thread at the same time. Examples of such an operation might be a RequestScope or a TenantRequesteOperation. An operation is a more general concept than the normal Java EE request scope, since it does not require a Java EE container
Users of this API generally create a Scope annotation
and extend this class, implementing the Context.getScope()
and making sure the parameterized type is the Scope annotation.
The Scope annotation for an Operation is usually
Proxiable but does not have to be. As with all implementations
of Context the subclass of this class must be in the Singleton
scope. The user code then uses the OperationManager and OperationHandle
to start and stop Operations and to associate and dis-associate
threads with Operations
Classes extending this class may also choose to override the method
Context.supportsNullCreation() which returns false by default
| Constructor and Description |
|---|
OperationContext() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
containsKey(ActiveDescriptor<?> descriptor) |
void |
destroyOne(ActiveDescriptor<?> descriptor) |
<U> U |
findOrCreate(ActiveDescriptor<U> activeDescriptor,
ServiceHandle<?> root) |
boolean |
isActive() |
void |
setOperationManager(SingleOperationManager manager) |
void |
shutdown() |
boolean |
supportsNullCreation() |
String |
toString() |
public <U> U findOrCreate(ActiveDescriptor<U> activeDescriptor, ServiceHandle<?> root)
findOrCreate in interface Context<T>public boolean containsKey(ActiveDescriptor<?> descriptor)
containsKey in interface Context<T>public void destroyOne(ActiveDescriptor<?> descriptor)
destroyOne in interface Context<T>public boolean supportsNullCreation()
supportsNullCreation in interface Context<T>public void setOperationManager(SingleOperationManager manager)
Copyright © 2009-2015 Oracle Corporation. All Rights Reserved.