Package com.helger.web.scope.singleton
Class AbstractSessionWebSingleton
- java.lang.Object
-
- com.helger.scope.singleton.AbstractSingleton
-
- com.helger.web.scope.singleton.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 Summary
Constructors Modifier Constructor Description protectedAbstractSessionWebSingleton()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static com.helger.commons.collection.impl.ICommonsList<AbstractSessionWebSingleton>getAllSessionSingletons()Get all singleton objects registered in the current session web scope.static <T extends AbstractSessionWebSingleton>
TgetSessionSingleton(Class<T> aClass)Get the singleton object in the current session web scope, using the passed class.static <T extends AbstractSessionWebSingleton>
TgetSessionSingletonIfInstantiated(Class<T> aClass)Get the singleton object if it is already instantiated inside the current session web scope ornullif it is not instantiated.static booleanisSessionSingletonInstantiated(Class<? extends AbstractSessionWebSingleton> aClass)Check if a singleton is already instantiated inside the current session web scope-
Methods inherited from class com.helger.scope.singleton.AbstractSingleton
getAllSingletons, getSingleton, getSingletonIfInstantiated, getSingletonScopeKey, isDestroyed, isInDestruction, isInInstantiation, isInPreDestruction, isInstantiated, isSingletonInstantiated, isUsableObject, onAfterInstantiation, onBeforeDestroy, onBeforeScopeDestruction, onDestroy, onScopeDestruction, readAbstractSingletonFields, setDestroyed, setInDestruction, setInInstantiation, setInPreDestruction, setInstantiated, toString, writeAbstractSingletonFields
-
-
-
-
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 benull. 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 ornullif it is not instantiated.- Type Parameters:
T- The type to be returned- Parameters:
aClass- The class to be checked. May not benull.- Returns:
- The singleton for the specified class is already instantiated,
nullotherwise.
-
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 benull.- Returns:
trueif the singleton for the specified class is already instantiated,falseotherwise.
-
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-
nulllist with all instances of this class in the current session web scope.
-
-