Class AbstractGlobalWebSingleton

  • All Implemented Interfaces:
    com.helger.scope.IScopeDestructionAware, IWebSingleton
    Direct Known Subclasses:
    GlobalDiskFileItemFactory

    public abstract class AbstractGlobalWebSingleton
    extends com.helger.scope.singleton.AbstractSingleton
    implements IWebSingleton
    This is the base class for singleton objects that reside in the global scope. The global scope is identical for web scope and non-web scope applications.
    Author:
    Philip Helger
    See Also:
    EWebScope.GLOBAL
    • Constructor Detail

      • AbstractGlobalWebSingleton

        protected AbstractGlobalWebSingleton()
    • Method Detail

      • getGlobalSingleton

        @Nonnull
        public static final <T extends AbstractGlobalWebSingleton> T getGlobalSingleton​(@Nonnull
                                                                                        Class<T> aClass)
        Get the singleton object in the current global 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.
      • getGlobalSingletonIfInstantiated

        @Nullable
        public static final <T extends AbstractGlobalWebSingleton> T getGlobalSingletonIfInstantiated​(@Nonnull
                                                                                                      Class<T> aClass)
        Get the singleton object if it is already instantiated inside the current global 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.
      • isGlobalSingletonInstantiated

        public static final boolean isGlobalSingletonInstantiated​(@Nonnull
                                                                  Class<? extends AbstractGlobalWebSingleton> aClass)
        Check if a singleton is already instantiated inside the current global 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.
      • getAllGlobalSingletons

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