Class BundleLogger

java.lang.Object
org.apache.felix.scr.impl.logger.AbstractLogger
org.apache.felix.scr.impl.logger.BundleLogger

public class BundleLogger extends AbstractLogger
The BundleLogger defines a simple API to enable some logging on behalf of an extended bundle. This avoids that all clients doing logging on behalf of a component bundle need to pass in things like BundleContext.
  • Field Details

    • logServiceTracker

      protected final org.osgi.util.tracker.ServiceTracker<Object,Object> logServiceTracker
    • trackingCount

      protected volatile int trackingCount
  • Constructor Details

    • BundleLogger

      public BundleLogger(org.osgi.framework.BundleContext bundleContext, ScrLogger parent)
  • Method Details

    • log

      public boolean log(int level, String pattern, Throwable ex, Object... arguments)
      Description copied from class: AbstractLogger
      Method to actually emit the log message. If the LogService is available, the message will be logged through the LogService. Otherwise the message is logged to stdout (or stderr in case of LOG_ERROR level messages),
      Overrides:
      log in class AbstractLogger
      Parameters:
      level - The log level to log the message at
      pattern - The java.text.MessageFormat message format string for preparing the message
      ex - An optional Throwable whose stack trace is written,
      arguments - The format arguments for the pattern string.
    • log

      public boolean log(int level, String message, Throwable ex)
      Description copied from class: AbstractLogger
      Method to actually emit the log message. If the LogService is available, the message will be logged through the LogService. Otherwise the message is logged to stdout (or stderr in case of LOG_ERROR level messages),
      Overrides:
      log in class AbstractLogger
      Parameters:
      level - The log level of the messages. This corresponds to the log levels defined by the OSGi LogService.
      message - The message to print
      ex - The Throwable causing the message to be logged.
    • close

      public void close()
      Close the logger