Package dyntabs.scope

Class TabScopeExtension

java.lang.Object
dyntabs.scope.TabScopeExtension
All Implemented Interfaces:
jakarta.enterprise.inject.spi.Extension

public class TabScopeExtension extends Object implements jakarta.enterprise.inject.spi.Extension
CDI Extension that registers the @TabScoped scope in the CDI container.

CDI Extensions are a mechanism for extending CDI functionality. This extension is automatically loaded at application startup (registered in META-INF/services/jakarta.enterprise.inject.spi.Extension).

What it does:

  1. beforeBeanDiscovery(jakarta.enterprise.inject.spi.BeforeBeanDiscovery) - adds @TabScoped as a new scope type
  2. afterBeanDiscovery(jakarta.enterprise.inject.spi.AfterBeanDiscovery) - registers TabContext as the Context implementation

After registration, the CDI container knows how to manage @TabScoped beans.

Author:
DynTabs
See Also:
  • Constructor Details

    • TabScopeExtension

      public TabScopeExtension()
  • Method Details

    • beforeBeanDiscovery

      public void beforeBeanDiscovery(@Observes jakarta.enterprise.inject.spi.BeforeBeanDiscovery bbd)
      Called before the CDI container discovers beans. Registers @TabScoped as a new scope type.
      Parameters:
      bbd - BeforeBeanDiscovery event
    • afterBeanDiscovery

      public void afterBeanDiscovery(@Observes jakarta.enterprise.inject.spi.AfterBeanDiscovery abd)
      Called after the CDI container finishes bean discovery. Registers TabContext as the Context implementation for @TabScoped.
      Parameters:
      abd - AfterBeanDiscovery event