Interface ContextSelector
- All Known Subinterfaces:
NamedContextSelector
- All Known Implementing Classes:
AsyncLoggerContextSelector
,BasicAsyncLoggerContextSelector
,BasicContextSelector
,BundleContextSelector
,ClassLoaderContextSelector
,JndiContextSelector
public interface ContextSelector
Interface used to locate a LoggerContext.
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetContext
(String fqcn, ClassLoader loader, boolean currentContext) Returns the LoggerContext.getContext
(String fqcn, ClassLoader loader, boolean currentContext, URI configLocation) Returns the LoggerContext.default LoggerContext
getContext
(String fqcn, ClassLoader loader, Map.Entry<String, Object> entry, boolean currentContext) Returns the LoggerContext.default LoggerContext
getContext
(String fqcn, ClassLoader loader, Map.Entry<String, Object> entry, boolean currentContext, URI configLocation) Returns the LoggerContext.Returns a List of all the available LoggerContexts.default boolean
hasContext
(String fqcn, ClassLoader loader, boolean currentContext) Checks to see if a LoggerContext is installed.default boolean
Determines whether or not this ContextSelector depends on the callers classloader.void
removeContext
(LoggerContext context) Remove any references to the LoggerContext.default void
shutdown
(String fqcn, ClassLoader loader, boolean currentContext, boolean allContexts) Shuts down the LoggerContext.
-
Field Details
-
DEFAULT_STOP_TIMEOUT
static final long DEFAULT_STOP_TIMEOUT- See Also:
-
-
Method Details
-
shutdown
Shuts down the LoggerContext.- Parameters:
fqcn
- The fully qualified class name of the caller.loader
- The ClassLoader to use or null.currentContext
- If true returns the current Context, if false returns the Context appropriateallContexts
- if true all LoggerContexts that can be located will be shutdown.- Since:
- 2.13.0
-
hasContext
Checks to see if a LoggerContext is installed. The default implementation returns false.- Parameters:
fqcn
- The fully qualified class name of the caller.loader
- The ClassLoader to use or null.currentContext
- If true returns the current Context, if false returns the Context appropriate for the caller if a more appropriate Context can be determined.- Returns:
- true if a LoggerContext has been installed, false otherwise.
- Since:
- 2.13.0
-
getContext
Returns the LoggerContext.- Parameters:
fqcn
- The fully qualified class name of the caller.loader
- ClassLoader to use or null.currentContext
- If true returns the current Context, if false returns the Context appropriate for the caller if a more appropriate Context can be determined.- Returns:
- The LoggerContext.
-
getContext
default LoggerContext getContext(String fqcn, ClassLoader loader, Map.Entry<String, Object> entry, boolean currentContext) Returns the LoggerContext.- Parameters:
fqcn
- The fully qualified class name of the caller.loader
- ClassLoader to use or null.entry
- An entry for the external Context map.currentContext
- If true returns the current Context, if false returns the Context appropriate for the caller if a more appropriate Context can be determined.- Returns:
- The LoggerContext.
-
getContext
LoggerContext getContext(String fqcn, ClassLoader loader, boolean currentContext, URI configLocation) Returns the LoggerContext.- Parameters:
fqcn
- The fully qualified class name of the caller.loader
- ClassLoader to use or null.currentContext
- If true returns the current Context, if false returns the Context appropriate for the caller if a more appropriate Context can be determined.configLocation
- The location of the configuration for the LoggerContext.- Returns:
- The LoggerContext.
-
getContext
default LoggerContext getContext(String fqcn, ClassLoader loader, Map.Entry<String, Object> entry, boolean currentContext, URI configLocation) Returns the LoggerContext.- Parameters:
fqcn
- The fully qualified class name of the caller.loader
- ClassLoader to use or null.currentContext
- If true returns the current Context, if false returns the Context appropriate for the caller if a more appropriate Context can be determined.configLocation
- The location of the configuration for the LoggerContext.- Returns:
- The LoggerContext.
-
getLoggerContexts
List<LoggerContext> getLoggerContexts()Returns a List of all the available LoggerContexts.- Returns:
- The List of LoggerContexts.
-
removeContext
Remove any references to the LoggerContext.- Parameters:
context
- The context to remove.
-
isClassLoaderDependent
default boolean isClassLoaderDependent()Determines whether or not this ContextSelector depends on the callers classloader. This method should be overridden by implementations, however a default method is provided which always returnstrue
to preserve the old behavior.- Returns:
- true if the class loader is required.
- Since:
- 2.15.0
-