ru.bitel.common.model

## Class LoggingAbstractManager<B extends Id>

- java.lang.Object
- - ru.bitel.common.dao.AbstractDao<B>
  - - ru.bitel.common.dao.AbstractIdDao<B>
    - - ru.bitel.common.model.LoggingAbstractManager<B>

- Type Parameters:
    `B` - для корректного логирования B необходимо, чтобы в нем явно были реализованы методы equals и toString, в противном случае логироваться будет каждый "чих", при этом в логах будет неинформативное нечто.
  All Implemented Interfaces:
    java.lang.AutoCloseable
  Direct Known Subclasses:
    NumerationPoolManager, UserCardCopyManager, UserCardManager

      public abstract class LoggingAbstractManager<B extends Id>
      extends ru.bitel.common.dao.AbstractIdDao<B>

  Суть менеджера - в автоматическом логировании изменяемых сущностей. Эталонные реализации (примеры) использования смотреть в NumerationPoolManager (для бездоговорной сущности) и UserCardManager (для договорной сущности).
  Author:
    pechenie

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class ru.bitel.common.dao.AbstractDao

      `ru.bitel.common.dao.AbstractDao.ResultSetIterator`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected int` | `userId`

    - ### Fields inherited from class ru.bitel.common.dao.AbstractDao

      `cacheFilter, cacheJoin, cacheOrderBy, cachePaged, cachePS, cacheWhat, con, getByIdPS, logger, mid, moduleId, orderByPattern, SQL_CALC_FOUND_ROWS, SQL_DELETE, SQL_EQ, SQL_EQCS, SQL_FROM, SQL_GROUP, SQL_IN, SQL_INSERT, SQL_LIMIT, SQL_ORDER, SQL_SELECT, SQL_SET, SQL_UPDATE, SQL_WHERE, tableName`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `LoggingAbstractManager(java.sql.Connection con, int mid, java.lang.String tableName, java.util.Date date, int userId)`
    `LoggingAbstractManager(java.sql.Connection con, int mid, java.lang.String tableName, int userId)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `delete(int id)` Удаляет объект по его ID.
    `java.util.List<LogEntry>` | `logListByCid(int cid)`
    `java.util.List<LogEntry>` | `logListByOid(int oid)`
    `void` | `update(B b)` Для обновления вызывать этот метод.

    - ### Methods inherited from class ru.bitel.common.dao.AbstractIdDao

      `get, getAndDelete, getAndUpdate`

    - ### Methods inherited from class ru.bitel.common.dao.AbstractDao

      `close, delete, deleteImpl, eq, get, getById, getFromRS, getImpl, getListFromRS, getSQLOrder, getSQLOrder, getTableName, list, list, listImpl, listImpl, listImplPS, listImplPS, processException, recycle, setStatementParam, updateImpl`

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

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

- - ### Field Detail

    - #### userId

          protected int userId

  - ### Constructor Detail

    - #### LoggingAbstractManager

          public LoggingAbstractManager(java.sql.Connection con,
                                        int mid,
                                        java.lang.String tableName,
                                        int userId)

    - #### LoggingAbstractManager

          public LoggingAbstractManager(java.sql.Connection con,
                                        int mid,
                                        java.lang.String tableName,
                                        java.util.Date date,
                                        int userId)

  - ### Method Detail

    - #### delete

          public int delete(int id)
                     throws ru.bitel.bgbilling.common.BGException

      Description copied from class: `ru.bitel.common.dao.AbstractIdDao`
      Удаляет объект по его ID.
      Overrides:
        `delete` in class `ru.bitel.common.dao.AbstractIdDao<B extends Id>`
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### update

          public void update(B b)
                      throws ru.bitel.bgbilling.common.BGException

      Description copied from class: `ru.bitel.common.dao.AbstractDao`
      Для обновления вызывать этот метод.
      Он в свою очередь вызавет updateImpl у конкретного наследника.
      Overrides:
        `update` in class `ru.bitel.common.dao.AbstractDao<B extends Id>`
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### logListByCid

          public java.util.List<LogEntry> logListByCid(int cid)
                                                throws ru.bitel.bgbilling.common.BGException

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

    - #### logListByOid

          public java.util.List<LogEntry> logListByOid(int oid)
                                                throws ru.bitel.bgbilling.common.BGException

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