Class ContainerLifecycleObserver<T>

java.lang.Object
org.jboss.weld.environment.se.ContainerLifecycleObserver<T>
All Implemented Interfaces:
jakarta.enterprise.inject.spi.ObserverMethod<T>, jakarta.enterprise.inject.spi.Prioritized, org.jboss.weld.event.ContainerLifecycleEventObserverMethod<T>

public final class ContainerLifecycleObserver<T> extends Object implements org.jboss.weld.event.ContainerLifecycleEventObserverMethod<T>
Represents a synthetic container lifecycle event observer.

For parameterized container lifecycele events (such as ProcessAnnotatedType and ProcessProducerMethod) it is possible to specify the observed container lifecycle event type, e.g. by means of TypeLiteral. To receive notifications for all observer methods with observed event type of String:

 ContainerLifecycleObserver.processObserverMethod(new TypeLiteral<ProcessObserverMethod<String, ?>>() {
 }.getType()).notify((e) -> System.out.println("String observer"));
 
Author:
Martin Kouba
See Also:
  • Method Details

    • beforeBeanDiscovery

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.BeforeBeanDiscovery> beforeBeanDiscovery()
      Returns:
      a new builder instance
      See Also:
      • BeforeBeanDiscovery
    • beforeBeanDiscovery

      public static ContainerLifecycleObserver<jakarta.enterprise.inject.spi.BeforeBeanDiscovery> beforeBeanDiscovery(Consumer<jakarta.enterprise.inject.spi.BeforeBeanDiscovery> callback)
      Parameters:
      callback -
      Returns:
      a new container lifecycle observer
      See Also:
      • BeforeBeanDiscovery
    • afterBeanDiscovery

      public static ContainerLifecycleObserver.Builder<org.jboss.weld.bootstrap.event.WeldAfterBeanDiscovery> afterBeanDiscovery()
      Returns:
      a new builder instance
      See Also:
      • AfterBeanDiscovery
    • afterBeanDiscovery

      public static ContainerLifecycleObserver<org.jboss.weld.bootstrap.event.WeldAfterBeanDiscovery> afterBeanDiscovery(Consumer<org.jboss.weld.bootstrap.event.WeldAfterBeanDiscovery> callback)
      Parameters:
      callback -
      Returns:
      a new container lifecycle observer
      See Also:
      • AfterBeanDiscovery
    • afterTypeDiscovery

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.AfterTypeDiscovery> afterTypeDiscovery()
      Returns:
      a new builder instance
      See Also:
      • AfterTypeDiscovery
    • afterTypeDiscovery

      public static ContainerLifecycleObserver<jakarta.enterprise.inject.spi.AfterTypeDiscovery> afterTypeDiscovery(Consumer<jakarta.enterprise.inject.spi.AfterTypeDiscovery> callback)
      Parameters:
      callback -
      Returns:
      a new container lifecycle observer
      See Also:
      • AfterTypeDiscovery
    • afterDeploymentValidation

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.AfterDeploymentValidation> afterDeploymentValidation()
      Parameters:
      callback -
      Returns:
      a new builder instance
      See Also:
      • AfterDeploymentValidation
    • afterDeploymentValidation

      public static ContainerLifecycleObserver<jakarta.enterprise.inject.spi.AfterDeploymentValidation> afterDeploymentValidation(Consumer<jakarta.enterprise.inject.spi.AfterDeploymentValidation> callback)
      Parameters:
      callback -
      Returns:
      a new container lifecycle observer
      See Also:
      • AfterDeploymentValidation
    • beforeShutdown

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.BeforeShutdown> beforeShutdown()
      Parameters:
      callback -
      Returns:
      a new builder instance
      See Also:
      • BeforeShutdown
    • beforeShutdown

      public static ContainerLifecycleObserver<jakarta.enterprise.inject.spi.BeforeShutdown> beforeShutdown(Consumer<jakarta.enterprise.inject.spi.BeforeShutdown> callback)
      Parameters:
      callback -
      Returns:
      a new container lifecycle observer
      See Also:
      • BeforeShutdown
    • processAnnotatedType

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessAnnotatedType<?>> processAnnotatedType()
      Returns:
      a new builder instance
      See Also:
      • ProcessAnnotatedType
    • processAnnotatedType

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessAnnotatedType<?>> processAnnotatedType(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessAnnotatedType
    • processSyntheticAnnotatedType

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessSyntheticAnnotatedType<?>> processSyntheticAnnotatedType(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessSyntheticAnnotatedType
    • processInjectionPoint

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessInjectionPoint<?,?>> processInjectionPoint()
      Returns:
      a new builder instance
      See Also:
      • ProcessInjectionPoint
    • processInjectionPoint

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessInjectionPoint<?,?>> processInjectionPoint(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessInjectionPoint
    • processInjectionTarget

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessInjectionTarget<?>> processInjectionTarget()
      Returns:
      a new builder instance
      See Also:
      • ProcessInjectionTarget
    • processInjectionTarget

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessInjectionTarget<?>> processInjectionTarget(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessInjectionTarget
    • processBeanAttributes

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessBeanAttributes<?>> processBeanAttributes()
      Returns:
      a new builder instance
      See Also:
      • ProcessBeanAttributes
    • processBeanAttributes

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessBeanAttributes<?>> processBeanAttributes(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessBeanAttributes
    • processBean

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessBean<?>> processBean()
      Returns:
      a new builder instance
      See Also:
      • ProcessBean
    • processBean

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessBean<?>> processBean(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessBean
    • processManagedBean

      public static ContainerLifecycleObserver.Builder<org.jboss.weld.bootstrap.event.WeldProcessManagedBean<?>> processManagedBean()
      Returns:
      a new builder instance
      See Also:
      • ProcessManagedBean
    • processManagedBean

      public static ContainerLifecycleObserver.Builder<org.jboss.weld.bootstrap.event.WeldProcessManagedBean<?>> processManagedBean(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessManagedBean
    • processSessionBean

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessSessionBean<?>> processSessionBean()
      Returns:
      a new builder instance
      See Also:
      • ProcessSessionBean
    • processSessionBean

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessSessionBean<?>> processSessionBean(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessSessionBean
    • processProducerMethod

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessProducerMethod<?,?>> processProducerMethod()
      Returns:
      a new builder instance
      See Also:
      • ProcessProducerMethod
    • processProducerMethod

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessProducerMethod<?,?>> processProducerMethod(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessProducerMethod
    • processProducerField

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessProducerField<?,?>> processProducerField()
      Returns:
      a new builder instance
      See Also:
      • ProcessProducerField
    • processProducerField

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessProducerField<?,?>> processProducerField(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessProducerField
    • processSyntheticBean

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessSyntheticBean<?>> processSyntheticBean()
      Returns:
      a new builder instance
      See Also:
      • ProcessSyntheticBean
    • processSyntheticBean

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessSyntheticBean<?>> processSyntheticBean(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessManagedBean
    • processProducer

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessProducer<?,?>> processProducer()
      Returns:
      a new builder instance
      See Also:
      • ProcessProducer
    • processProducer

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessProducer<?,?>> processProducer(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessProducer
    • processObserverMethod

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessObserverMethod<?,?>> processObserverMethod()
      Returns:
      a new builder instance
      See Also:
      • ProcessObserverMethod
    • processObserverMethod

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessObserverMethod<?,?>> processObserverMethod(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessObserverMethod
    • processSyntheticObserverMethod

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessSyntheticObserverMethod<?,?>> processSyntheticObserverMethod()
      Returns:
      a new builder instance
      See Also:
      • ProcessSyntheticObserverMethod
    • processSyntheticObserverMethod

      public static ContainerLifecycleObserver.Builder<jakarta.enterprise.inject.spi.ProcessSyntheticObserverMethod<?,?>> processSyntheticObserverMethod(Type observedType)
      Parameters:
      observedType -
      Returns:
      a new builder instance
      See Also:
      • ProcessSyntheticObserverMethod
    • getPriority

      public int getPriority()
      Specified by:
      getPriority in interface jakarta.enterprise.inject.spi.ObserverMethod<T>
      Specified by:
      getPriority in interface jakarta.enterprise.inject.spi.Prioritized
    • getBeanClass

      public Class<?> getBeanClass()
      Specified by:
      getBeanClass in interface jakarta.enterprise.inject.spi.ObserverMethod<T>
    • getObservedType

      public Type getObservedType()
      Specified by:
      getObservedType in interface jakarta.enterprise.inject.spi.ObserverMethod<T>
    • getObservedQualifiers

      public Set<Annotation> getObservedQualifiers()
      Specified by:
      getObservedQualifiers in interface jakarta.enterprise.inject.spi.ObserverMethod<T>
    • getReception

      public jakarta.enterprise.event.Reception getReception()
      Specified by:
      getReception in interface jakarta.enterprise.inject.spi.ObserverMethod<T>
    • getTransactionPhase

      public jakarta.enterprise.event.TransactionPhase getTransactionPhase()
      Specified by:
      getTransactionPhase in interface jakarta.enterprise.inject.spi.ObserverMethod<T>
    • notify

      public void notify(T event)
      Specified by:
      notify in interface jakarta.enterprise.inject.spi.ObserverMethod<T>
    • getRequiredAnnotations

      public Collection<Class<? extends Annotation>> getRequiredAnnotations()
      Specified by:
      getRequiredAnnotations in interface org.jboss.weld.event.ContainerLifecycleEventObserverMethod<T>
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • extensionBuilder

      public static ContainerLifecycleObserver.ExtensionBuilder extensionBuilder()
      A synthetic extension is basically a container for synthetic container lifecycle event observers.
      Returns:
      a builder for a synthetic extension
      See Also: