ru.bitel.oss.kernel.entity.server.bean

## Class EntityAttrMultiListDao

- java.lang.Object
- - ru.bitel.oss.kernel.entity.server.bean.EntityAttrMultiListDao

-     public class EntityAttrMultiListDao
      extends java.lang.Object

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected java.sql.Connection` | `con`
    `protected java.sql.PreparedStatement` | `deletePS`
    `protected AbstractEntityAttrDao<?>` | `entityAttrDao`
    `protected java.sql.PreparedStatement` | `insertHistoryPS`
    `protected java.sql.PreparedStatement` | `insertPS`
    `protected java.sql.PreparedStatement` | `selectPS`
    `protected ru.bitel.oss.kernel.entity.server.bean.EntityAttrDaoSupport` | `support`
    `protected java.sql.PreparedStatement` | `updatePS`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EntityAttrMultiListDao(java.sql.Connection con, AbstractEntityAttrDao<?> entityAttrDao, java.lang.String table, java.lang.String listValueTable)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected java.lang.String` | `beanIdName()`
    `protected boolean` | `checkEntitySpecAttrDelete(int entitySpecAttrId)`
    `boolean` | `delete(int entityId, EntitySpecAttr sa)`
    `protected boolean` | `deleteImpl(int entityId, int entitySpecAttrId)`
    `EntityAttrMultiList` | `get(int entityId, int attrSpecId)`
    `protected java.sql.PreparedStatement` | `getDeletePS(int entityId, int entitySpecAttrId)`
    `protected java.sql.PreparedStatement` | `getInsertHistiryPS()`
    `protected java.sql.PreparedStatement` | `getInsertPS(int entityId, int entitySpecAttrId)`
    `protected java.sql.PreparedStatement` | `getSelectPS(int entityId, int entitySpecAttrId)`
    `protected java.sql.PreparedStatement` | `getUpdatePS(int entityId, int entitySpecAttrId)`
    `protected java.lang.String` | `idName()`
    `void` | `insert(int entityId, EntityAttr attr)` Вызывается при updateEntityAttributes, после удаления всех атрибутов (т.е. при перезаписи всех атрибутов, например, при сохранении устройства Inet)
    `protected void` | `insertHistory(int cid, A attr)`
    `protected java.lang.String` | `typeName()`
    `boolean` | `update(int entityId, EntitySpecAttr sa, EntityAttr a)` Вызывается при обновлении одного атрибута.
    `protected boolean` | `updateImpl(int entityId, EntityAttrMultiList attr)`
    `protected java.lang.String` | `valueName()`

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

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

- - ### Field Detail

    - #### con

          protected final java.sql.Connection con

    - #### entityAttrDao

          protected final AbstractEntityAttrDao<?> entityAttrDao

    - #### support

          protected final ru.bitel.oss.kernel.entity.server.bean.EntityAttrDaoSupport support

    - #### selectPS

          protected java.sql.PreparedStatement selectPS

    - #### insertPS

          protected java.sql.PreparedStatement insertPS

    - #### updatePS

          protected java.sql.PreparedStatement updatePS

    - #### deletePS

          protected java.sql.PreparedStatement deletePS

    - #### insertHistoryPS

          protected java.sql.PreparedStatement insertHistoryPS

  - ### Constructor Detail

    - #### EntityAttrMultiListDao

          public EntityAttrMultiListDao(java.sql.Connection con,
                                        AbstractEntityAttrDao<?> entityAttrDao,
                                        java.lang.String table,
                                        java.lang.String listValueTable)

  - ### Method Detail

    - #### getSelectPS

          protected java.sql.PreparedStatement getSelectPS(int entityId,
                                                           int entitySpecAttrId)
                                                    throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getInsertPS

          protected java.sql.PreparedStatement getInsertPS(int entityId,
                                                           int entitySpecAttrId)
                                                    throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getUpdatePS

          protected java.sql.PreparedStatement getUpdatePS(int entityId,
                                                           int entitySpecAttrId)
                                                    throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### get

          public EntityAttrMultiList get(int entityId,
                                         int attrSpecId)
                                  throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### insert

          public void insert(int entityId,
                             EntityAttr attr)
                      throws java.sql.SQLException,
                             ru.bitel.bgbilling.common.BGException

      Вызывается при updateEntityAttributes, после удаления всех атрибутов (т.е. при перезаписи всех атрибутов, например, при сохранении устройства Inet)
      Throws:
        `java.sql.SQLException`
        `ru.bitel.bgbilling.common.BGException`

    - #### updateImpl

          protected boolean updateImpl(int entityId,
                                       EntityAttrMultiList attr)
                                throws java.sql.SQLException,
                                       ru.bitel.bgbilling.common.BGException

      Throws:
        `java.sql.SQLException`
        `ru.bitel.bgbilling.common.BGException`

    - #### deleteImpl

          protected boolean deleteImpl(int entityId,
                                       int entitySpecAttrId)
                                throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### idName

          protected java.lang.String idName()

    - #### valueName

          protected java.lang.String valueName()

    - #### beanIdName

          protected java.lang.String beanIdName()

    - #### typeName

          protected java.lang.String typeName()

    - #### update

          public boolean update(int entityId,
                                EntitySpecAttr sa,
                                EntityAttr a)
                         throws java.sql.SQLException,
                                ru.bitel.bgbilling.common.BGException

      Вызывается при обновлении одного атрибута. Здесь может быть удаление атрибута, если он на самом деле пустой
      Parameters:
        `entityId` -
        `sa` -
        `a` -
      Returns:
      Throws:
        `java.sql.SQLException`
        `ru.bitel.bgbilling.common.BGException`

    - #### checkEntitySpecAttrDelete

          protected boolean checkEntitySpecAttrDelete(int entitySpecAttrId)
                                               throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getDeletePS

          protected java.sql.PreparedStatement getDeletePS(int entityId,
                                                           int entitySpecAttrId)
                                                    throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### delete

          public final boolean delete(int entityId,
                                      EntitySpecAttr sa)
                               throws ru.bitel.bgbilling.common.BGException

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

    - #### getInsertHistiryPS

          protected java.sql.PreparedStatement getInsertHistiryPS()
                                                           throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### insertHistory

          protected void insertHistory(int cid,
                                       A attr)
                                throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`