Package org.apache.felix.scr.impl.logger
Class LogManager
- java.lang.Object
-
- org.osgi.util.tracker.ServiceTracker<java.lang.Object,java.lang.Object>
-
- org.apache.felix.scr.impl.logger.LogManager
-
- All Implemented Interfaces:
java.util.EventListener,org.osgi.framework.BundleListener,org.osgi.util.tracker.ServiceTrackerCustomizer<java.lang.Object,java.lang.Object>
- Direct Known Subclasses:
ScrLogManager
class LogManager extends org.osgi.util.tracker.ServiceTracker<java.lang.Object,java.lang.Object> implements org.osgi.framework.BundleListener
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classLogManager.Lock(package private) classLogManager.LogDomain(package private) classLogManager.LoggerFacade
-
Field Summary
Fields Modifier and Type Field Description (package private) java.util.concurrent.atomic.AtomicBooleanclosedprivate LogConfigurationconfig(package private) LogManager.Locklockprivate static java.lang.StringLOGGER_FACTORY_CLASS_NAME(package private) org.osgi.framework.BundleContextscrContext
-
Constructor Summary
Constructors Constructor Description LogManager(org.osgi.framework.BundleContext context, LogConfiguration config)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.ObjectaddingService(org.osgi.framework.ServiceReference<java.lang.Object> reference)voidbundleChanged(org.osgi.framework.BundleEvent event)voidclose()(package private) LogManager.LoggerFacadecreateLoggerFacade(LogManager.LogDomain logDomain, java.lang.String name)(package private) <T> TgetLogger(org.osgi.framework.Bundle bundle, java.lang.String name, java.lang.Class<T> type)voidinit()Initializes the log manager.voidremovedService(org.osgi.framework.ServiceReference<java.lang.Object> reference, java.lang.Object service)
-
-
-
Field Detail
-
LOGGER_FACTORY_CLASS_NAME
private static final java.lang.String LOGGER_FACTORY_CLASS_NAME
- See Also:
- Constant Field Values
-
scrContext
final org.osgi.framework.BundleContext scrContext
-
closed
final java.util.concurrent.atomic.AtomicBoolean closed
-
lock
final LogManager.Lock lock
-
config
private final LogConfiguration config
-
-
Constructor Detail
-
LogManager
LogManager(org.osgi.framework.BundleContext context, LogConfiguration config)
-
-
Method Detail
-
init
public void init()
Initializes the log manager. This internally executes the following:-
Track all bundles for retrieving the log levels of each bundles if the log extension
is (
ds.log.extension) not set or set tofalse(log extension disabled) - Don't track any bundles if log extension is enabled since we don't need the log levels of the respective bundles. For log extension, we use the log level of the SCR bundle itself.
- Start the service tracker to track the OSGi LoggerFactory service
-
Track all bundles for retrieving the log levels of each bundles if the log extension
is (
-
addingService
public java.lang.Object addingService(org.osgi.framework.ServiceReference<java.lang.Object> reference)
- Specified by:
addingServicein interfaceorg.osgi.util.tracker.ServiceTrackerCustomizer<java.lang.Object,java.lang.Object>- Overrides:
addingServicein classorg.osgi.util.tracker.ServiceTracker<java.lang.Object,java.lang.Object>
-
removedService
public void removedService(org.osgi.framework.ServiceReference<java.lang.Object> reference, java.lang.Object service)- Specified by:
removedServicein interfaceorg.osgi.util.tracker.ServiceTrackerCustomizer<java.lang.Object,java.lang.Object>- Overrides:
removedServicein classorg.osgi.util.tracker.ServiceTracker<java.lang.Object,java.lang.Object>
-
getLogger
<T> T getLogger(org.osgi.framework.Bundle bundle, java.lang.String name, java.lang.Class<T> type)
-
bundleChanged
public void bundleChanged(org.osgi.framework.BundleEvent event)
- Specified by:
bundleChangedin interfaceorg.osgi.framework.BundleListener
-
close
public void close()
- Overrides:
closein classorg.osgi.util.tracker.ServiceTracker<java.lang.Object,java.lang.Object>
-
createLoggerFacade
LogManager.LoggerFacade createLoggerFacade(LogManager.LogDomain logDomain, java.lang.String name)
-
-