Class AbstractSessionWebSingleton

  • All Implemented Interfaces:
    com.helger.scope.IScopeDestructionAware, IWebSingleton

    @MustImplementEqualsAndHashcode
    public abstract class AbstractSessionWebSingleton
    extends com.helger.scope.singleton.AbstractSingleton
    implements IWebSingleton
    This is the base class for singleton objects that reside in the session web scope.
    Author:
    Philip Helger
    See Also:
    EWebScope.SESSION
    • Constructor Detail

      • AbstractSessionWebSingleton

        protected AbstractSessionWebSingleton()
    • Method Detail

      • getSessionSingleton

        @Nonnull
        public static final <T extends AbstractSessionWebSingleton> T getSessionSingleton​(@Nonnull
                                                                                          Class<T> aClass)
        Get the singleton object in the current session web scope, using the passed class. If the singleton is not yet instantiated, a new instance is created.
        Type Parameters:
        T - The type to be returned
        Parameters:
        aClass - The class to be used. May not be null. The class must be public as needs to have a public no-argument constructor.
        Returns:
        The singleton object and never null.
      • getSessionSingletonIfInstantiated

        @Nullable
        public static final <T extends AbstractSessionWebSingleton> T getSessionSingletonIfInstantiated​(@Nonnull
                                                                                                        Class<T> aClass)
        Get the singleton object if it is already instantiated inside the current session web scope or null if it is not instantiated.
        Type Parameters:
        T - The type to be returned
        Parameters:
        aClass - The class to be checked. May not be null.
        Returns:
        The singleton for the specified class is already instantiated, null otherwise.
      • isSessionSingletonInstantiated

        public static final boolean isSessionSingletonInstantiated​(@Nonnull
                                                                   Class<? extends AbstractSessionWebSingleton> aClass)
        Check if a singleton is already instantiated inside the current session web scope
        Parameters:
        aClass - The class to be checked. May not be null.
        Returns:
        true if the singleton for the specified class is already instantiated, false otherwise.
      • getAllSessionSingletons

        @Nonnull
        public static final com.helger.commons.collection.impl.ICommonsList<AbstractSessionWebSingleton> getAllSessionSingletons()
        Get all singleton objects registered in the current session web scope.
        Returns:
        A non-null list with all instances of this class in the current session web scope.