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) class
LogManager.Lock
(package private) class
LogManager.LogDomain
(package private) class
LogManager.LoggerFacade
-
Field Summary
Fields Modifier and Type Field Description (package private) java.util.concurrent.atomic.AtomicBoolean
closed
private LogConfiguration
config
(package private) LogManager.Lock
lock
private static java.lang.String
LOGGER_FACTORY_CLASS_NAME
(package private) org.osgi.framework.BundleContext
scrContext
-
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.Object
addingService(org.osgi.framework.ServiceReference<java.lang.Object> reference)
void
bundleChanged(org.osgi.framework.BundleEvent event)
void
close()
(package private) LogManager.LoggerFacade
createLoggerFacade(LogManager.LogDomain logDomain, java.lang.String name)
(package private) <T> T
getLogger(org.osgi.framework.Bundle bundle, java.lang.String name, java.lang.Class<T> type)
void
init()
Initializes the log manager.void
removedService(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:
addingService
in interfaceorg.osgi.util.tracker.ServiceTrackerCustomizer<java.lang.Object,java.lang.Object>
- Overrides:
addingService
in 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:
removedService
in interfaceorg.osgi.util.tracker.ServiceTrackerCustomizer<java.lang.Object,java.lang.Object>
- Overrides:
removedService
in 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:
bundleChanged
in interfaceorg.osgi.framework.BundleListener
-
close
public void close()
- Overrides:
close
in classorg.osgi.util.tracker.ServiceTracker<java.lang.Object,java.lang.Object>
-
createLoggerFacade
LogManager.LoggerFacade createLoggerFacade(LogManager.LogDomain logDomain, java.lang.String name)
-
-