Package org.apache.log4j.spi

## Class ComponentBase

- java.lang.Object
- - org.apache.log4j.spi.ComponentBase

- All Implemented Interfaces:
    `Component`
  Direct Known Subclasses:
    `ConnectionSourceSkeleton`, `PluginSkeleton`, `Util`, `XMLSocketNode`

      public class ComponentBase
      extends Object
      implements Component

  Most log4j components derive from this class.
  Author:
    Ceki Gulcu

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected org.apache.log4j.spi.LoggerRepository` | `repository` | Logger repository.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `ComponentBase()` | Construct a new instance.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected ULogger` | `getLogger()` | Return an instance specific logger to be used by the component itself.
    `protected org.apache.log4j.spi.LoggerRepository` | `getLoggerRepository()` | Return the LoggerRepository to which this component is attached.
    `protected ULogger` | `getNonFloodingLogger()` | Frequently called methods in log4j components can invoke this method in order to avoid flooding the output when logging lasting error conditions.
    `protected void` | `resetErrorCount()` | Called by derived classes when they deem that the component has recovered from an erroneous state.
    `void` | `setLoggerRepository​(org.apache.log4j.spi.LoggerRepository repository)` | Set the owning repository.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### repository

          protected org.apache.log4j.spi.LoggerRepository repository

      Logger repository.

  - ### Constructor Detail

    - #### ComponentBase

          protected ComponentBase()

      Construct a new instance.

  - ### Method Detail

    - #### resetErrorCount

          protected void resetErrorCount()

      Called by derived classes when they deem that the component has recovered from an erroneous state.

    - #### setLoggerRepository

          public void setLoggerRepository​(org.apache.log4j.spi.LoggerRepository repository)

      Set the owning repository. The owning repository cannot be set more than once.
      Specified by:
        `setLoggerRepository` in interface `Component`
      Parameters:
        `repository` - repository

    - #### getLoggerRepository

          protected org.apache.log4j.spi.LoggerRepository getLoggerRepository()

      Return the LoggerRepository to which this component is attached.
      Returns:
        Owning LoggerRepository

    - #### getLogger

          protected ULogger getLogger()

      Return an instance specific logger to be used by the component itself. This logger is not intended to be accessed by the end-user, hence the protected keyword.

      In case the repository for this component is not set, this implementations returns a `SimpleULogger` instance.

      Returns:
        A ULogger instance.

    - #### getNonFloodingLogger

          protected ULogger getNonFloodingLogger()

      Frequently called methods in log4j components can invoke this method in order to avoid flooding the output when logging lasting error conditions.
      Returns:
        a regular logger, or a NOPLogger if called too frequently.