LogReaderService
Date: 2016-06-25

org.osgi.service.log

## Interface LogReaderService

-     public interface LogReaderService

  Provides methods to retrieve `LogEntry` objects from the log.

  There are two ways to retrieve `LogEntry` objects:

  - The primary way to retrieve `LogEntry` objects is to register a `LogListener` object whose `LogListener.logged` method will be called for each entry added to the log.
  - To retrieve past `LogEntry` objects, the `getLog` method can be called which will return an `Enumeration` of all `LogEntry` objects in the log.
  See Also:
    `LogEntry`, `LogListener`, `LogListener.logged(LogEntry)`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addLogListener(LogListener listener)` Subscribes to `LogEntry` objects.
    `java.util.Enumeration` | `getLog()` Returns an `Enumeration` of all `LogEntry` objects in the log.
    `void` | `removeLogListener(LogListener listener)` Unsubscribes to `LogEntry` objects.

- - ### Method Detail

    - #### addLogListener

          void addLogListener(LogListener listener)

      Subscribes to `LogEntry` objects.

      This method registers a `LogListener` object with the Log Reader Service. The `LogListener.logged(LogEntry)` method will be called for each `LogEntry` object placed into the log.

      When a bundle which registers a `LogListener` object is stopped or otherwise releases the Log Reader Service, the Log Reader Service must remove all of the bundle's listeners.

      If this Log Reader Service's list of listeners already contains a listener `l` such that `(l==listener)`, this method does nothing.

      Parameters:
        `listener` - A `LogListener` object to register; the `LogListener` object is used to receive `LogEntry` objects.
      See Also:
        `LogListener`, `LogEntry`, `LogListener.logged(LogEntry)`

    - #### removeLogListener

          void removeLogListener(LogListener listener)

      Unsubscribes to `LogEntry` objects.

      This method unregisters a `LogListener` object from the Log Reader Service.

      If `listener` is not contained in this Log Reader Service's list of listeners, this method does nothing.

      Parameters:
        `listener` - A `LogListener` object to unregister.
      See Also:
        `LogListener`

    - #### getLog

          java.util.Enumeration getLog()

      Returns an `Enumeration` of all `LogEntry` objects in the log.

      Each element of the enumeration is a `LogEntry` object, ordered with the most recent entry first. Whether the enumeration is of all `LogEntry` objects since the Log Service was started or some recent past is implementation-specific. Also implementation-specific is whether informational and debug `LogEntry` objects are included in the enumeration.

      Returns:
        An `Enumeration` of all `LogEntry` objects in the log.