Module jakarta.cdi

Interface Context

All Known Subinterfaces:
AlterableContext
All Known Implementing Classes:
ClientWindowScopeContext, FlowCDIContext, ViewScopeContext

public interface Context

Provides an operation for obtaining contextual instances with a particular scope of any contextual type. Any instance of Context is called a context object.

AlterableContext was introduced in CDI 1.1 to allow bean instances to be destroyed by the application. Extensions should implement AlterableContext instead of Context.

The context object is responsible for creating and destroying contextual instances by calling operations of Contextual. In particular, the context object is responsible for destroying any contextual instance it creates by passing the instance to Contextual.destroy(Object, CreationalContext) . A destroyed instance must not subsequently be returned by get(). The context object must pass the same instance of CreationalContext to Contextual.destroy() that it passed to Contextual.create() when it created the instance.

A custom context object may be registered with the container using AfterBeanDiscovery.addContext(Context).