ru.bitel.bgbilling.kernel.event

## Class PoolEventPublisher<E extends Event>

- java.lang.Object
- - ru.bitel.bgbilling.kernel.event.PoolEventPublisher<E>

- Type Parameters:
    `E` -
  All Implemented Interfaces:
    java.lang.Runnable
  Direct Known Subclasses:
    PoolQueueEventPublisher, PoolTopicEventPublisher

      public abstract class PoolEventPublisher<E extends Event>
      extends java.lang.Object
      implements java.lang.Runnable

  Author:
    amir
  See Also:
    `PoolEvent}, {@link EventProcessor#newPoolEventPublisher(Class, int)}`

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected MessageHandler` | `messageHandler`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()`
    `protected void` | `finalize()`
    `void` | `publish(E e)`
    `protected abstract void` | `publish(EventProcessor eventProcessor, java.lang.Class<E> clazz, java.util.List<E> list)`
    `void` | `publishAfterCommit(ru.bitel.common.worker.CommitableHandler context, E e)` Публикует событие при вызове commit у context
    `void` | `publishAfterCommit(E e)` Публикует событие при вызове commit текущего ThreadContext.
    `void` | `run()`
    `void` | `setMessageHandler(MessageHandler messageHandler)`

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

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

- - ### Field Detail

    - #### messageHandler

          protected MessageHandler messageHandler

  - ### Method Detail

    - #### setMessageHandler

          public void setMessageHandler(MessageHandler messageHandler)

    - #### publish

          public void publish(E e)
                       throws ru.bitel.bgbilling.common.BGException

      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### run

          public void run()

      Specified by:
        `run` in interface `java.lang.Runnable`

    - #### publish

          protected abstract void publish(EventProcessor eventProcessor,
                                          java.lang.Class<E> clazz,
                                          java.util.List<E> list)
                                   throws ru.bitel.bgbilling.common.BGException

      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### close

          public void close()

    - #### finalize

          protected void finalize()
                           throws java.lang.Throwable

      Overrides:
        `finalize` in class `java.lang.Object`
      Throws:
        `java.lang.Throwable`

    - #### publishAfterCommit

          public void publishAfterCommit(ru.bitel.common.worker.CommitableHandler context,
                                         E e)

      Публикует событие при вызове commit у context
      Parameters:
        `context` -
        `e` -

    - #### publishAfterCommit

          public void publishAfterCommit(E e)

      Публикует событие при вызове commit текущего ThreadContext.
      Parameters:
        `e` -