ru.bitel.bgbilling.modules.ipn.server.bean

## Class AddressRangeManager

- java.lang.Object
- - ru.bitel.bgbilling.modules.ipn.server.bean.AddressRangeManager

- Direct Known Subclasses:
    AddressRangeManager

      public class AddressRangeManager
      extends java.lang.Object

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected java.sql.Connection` | `con`
    `protected int` | `mid`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AddressRangeManager(java.sql.Connection con, int mid)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `checkAddress(java.lang.String id, AddressRange address, int zoneId, int sourceId, int iface)`
    `AddressRange` | `clone(AddressRange ar)` Возвращает новый диапазон адресов с адресами и портами, скопированными у аргумента
    `void` | `deleteContractAddressRange(int id)` Удаляет диапазон адресов по его коду
    `void` | `freeConnection()`
    `AddressRange` | `getAddressRange(int id)` Возвращает диапазон адресов по его коду
    `java.lang.Iterable<AddressRange>` | `getAddressRangeIterable()` Возвращает итератор диапазонов адресов
    `java.util.List<AddressRange>` | `getAddressRangeList(java.util.Calendar date)` Возвращает список диапазонов адресов на определенную дату
    `java.util.List<AddressRange>` | `getAddressRangeList(java.util.Calendar date1, java.util.Calendar date2)` Возвращает диапазоны адресов, пересекающиеся с заданным периодом
    `java.util.List<AddressRange>` | `getAddressRangeList(long addr, int port, int mask, java.util.Calendar date1, java.util.Calendar date2, java.lang.String comment, Page page)` Возвращает список диапазонов адресов
    `java.util.List<AddressRange>` | `getAddressRangeListCidSort(java.util.Calendar date, java.lang.String ifaces, Page page)` Возвращает отсортированный список диапазонов адресов на определенную дату определенного источника
    `java.util.List<AddressRange>` | `getContractAddressRange(int cid)` Возвращает диапазоны адресов для данного договора
    `java.util.List<AddressRange>` | `getContractAddressRange(int cid, java.util.Calendar date, int objectId)` Возвращает диапазоны адресов для данного договора на определенную дату
    `java.util.List<AddressRange>` | `getContractAddressRange(int cid, java.util.Date dateFrom, java.util.Date dateTo)` Возвращает диапазоны адресов договора на определенный период
    `java.util.List<AddressRange>` | `getContractNets(int cid, java.util.Calendar date, int objectId)`
    `java.util.List<AddressRange>` | `getContractRanges(int cid, java.util.Calendar date, int objectId)`
    `java.util.List<AddressRange>` | `getObjectAddressRange(int objectId)` Возвращает диапазоны адресов для данного объекта
    `java.util.List<AddressRange>` | `getRangeListOnPlan(int planId)` Возвращает список адресов на плане привязок
    `java.lang.StringBuilder` | `getSourceIface(AddressRange arange)`
    `protected void` | `loadFromResultSet(java.sql.ResultSet rs, AddressRange range)`
    `void` | `moveRange(AddressRange range, int cidFrom, int cidTo, int objectTo, int userId)` Перенос диапазона адресов с одного договора на другой
    `void` | `recalcAfterMove(bitel.billing.server.util.MonthForRecalc months, int cidFrom, int cidTo)` Запуск переначисления после всяческих перемещений диапазонов адресов.
    `boolean` | `substituteRange(AddressRange from, AddressRange what)` Вычитает из одного диапазона другой, результат вычитания добавляется в базу
    `void` | `updateAddressRangeInfo(java.lang.String id, AddressRange ar)` Обновляет диапазон адресов
    `void` | `wrapRange(AddressRange range, int cidTo, int objectTo, java.util.Date dateClose, java.util.Date dateOpen, int userId)` Разрыв диапазона адресов на два договора.

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

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

- - ### Field Detail

    - #### con

          protected java.sql.Connection con

    - #### mid

          protected int mid

  - ### Constructor Detail

    - #### AddressRangeManager

          public AddressRangeManager(java.sql.Connection con,
                                     int mid)

  - ### Method Detail

    - #### getContractAddressRange

          public java.util.List<AddressRange> getContractAddressRange(int cid)
                                                               throws java.sql.SQLException

      Возвращает диапазоны адресов для данного договора
      Parameters:
        `cid` - код договора
      Returns:
      Throws:
        `java.sql.SQLException`

    - #### getObjectAddressRange

          public java.util.List<AddressRange> getObjectAddressRange(int objectId)
                                                             throws ru.bitel.bgbilling.common.BGException

      Возвращает диапазоны адресов для данного объекта
      Parameters:
        `objectId` - код объекта
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getContractAddressRange

          public java.util.List<AddressRange> getContractAddressRange(int cid,
                                                                      java.util.Date dateFrom,
                                                                      java.util.Date dateTo)
                                                               throws java.sql.SQLException

      Возвращает диапазоны адресов договора на определенный период
      Parameters:
        `cid` - код договора
        `dateFrom` - начало периода
        `dateTo` - конец преиода
      Returns:
      Throws:
        `java.sql.SQLException`

    - #### getContractAddressRange

          public java.util.List<AddressRange> getContractAddressRange(int cid,
                                                                      java.util.Calendar date,
                                                                      int objectId)
                                                               throws java.sql.SQLException

      Возвращает диапазоны адресов для данного договора на определенную дату
      Parameters:
        `cid` - код договора
        `date` - дата
        `objectId` - код объекта
      Returns:
      Throws:
        `java.sql.SQLException`

    - #### getContractNets

          public java.util.List<AddressRange> getContractNets(int cid,
                                                              java.util.Calendar date,
                                                              int objectId)
                                                       throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getContractRanges

          public java.util.List<AddressRange> getContractRanges(int cid,
                                                                java.util.Calendar date,
                                                                int objectId)
                                                         throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getSourceIface

          public java.lang.StringBuilder getSourceIface(AddressRange arange)

    - #### getAddressRange

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

      Возвращает диапазон адресов по его коду
      Parameters:
        `id` - код диапазона
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### deleteContractAddressRange

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

      Удаляет диапазон адресов по его коду
      Parameters:
        `id` - код диапазона
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### loadFromResultSet

          protected void loadFromResultSet(java.sql.ResultSet rs,
                                           AddressRange range)
                                    throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### checkAddress

          public java.lang.String checkAddress(java.lang.String id,
                                               AddressRange address,
                                               int zoneId,
                                               int sourceId,
                                               int iface)
                                        throws ru.bitel.bgbilling.common.BGException

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

    - #### updateAddressRangeInfo

          public void updateAddressRangeInfo(java.lang.String id,
                                             AddressRange ar)
                                      throws ru.bitel.bgbilling.common.BGException

      Обновляет диапазон адресов
      Parameters:
        `id` - код диапазона, "new" если создать новый
        `ar` - диапазон адресов
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getAddressRangeList

          public java.util.List<AddressRange> getAddressRangeList(java.util.Calendar date)
                                                           throws ru.bitel.bgbilling.common.BGException

      Возвращает список диапазонов адресов на определенную дату
      Parameters:
        `date` - дата
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getAddressRangeIterable

          public java.lang.Iterable<AddressRange> getAddressRangeIterable()
                                                                   throws ru.bitel.bgbilling.common.BGException

      Возвращает итератор диапазонов адресов
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getAddressRangeListCidSort

          public java.util.List<AddressRange> getAddressRangeListCidSort(java.util.Calendar date,
                                                                         java.lang.String ifaces,
                                                                         Page page)
                                                                  throws ru.bitel.bgbilling.common.BGException

      Возвращает отсортированный список диапазонов адресов на определенную дату определенного источника
      Parameters:
        `date` - дата
        `sourceID` - код источника
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getAddressRangeList

          public java.util.List<AddressRange> getAddressRangeList(java.util.Calendar date1,
                                                                  java.util.Calendar date2)
                                                           throws ru.bitel.bgbilling.common.BGException

      Возвращает диапазоны адресов, пересекающиеся с заданным периодом
      Parameters:
        `date1` - начало периода
        `date2` - конец периода
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getAddressRangeList

          public java.util.List<AddressRange> getAddressRangeList(long addr,
                                                                  int port,
                                                                  int mask,
                                                                  java.util.Calendar date1,
                                                                  java.util.Calendar date2,
                                                                  java.lang.String comment,
                                                                  Page page)
                                                           throws ru.bitel.bgbilling.common.BGException

      Возвращает список диапазонов адресов
      Parameters:
        `addr` - IP-адре
        `port` - порт
        `mask` - маска
        `date1` - начало периода
        `date2` - конец периода
        `comment` - комментарий
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### substituteRange

          public boolean substituteRange(AddressRange from,
                                         AddressRange what)
                                  throws ru.bitel.bgbilling.common.BGException

      Вычитает из одного диапазона другой, результат вычитания добавляется в базу
      Parameters:
        `from` - из чего вычитают
        `what` - что вычитают
      Returns:
        true - если операция успешна
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getRangeListOnPlan

          public java.util.List<AddressRange> getRangeListOnPlan(int planId)
                                                          throws ru.bitel.bgbilling.common.BGException

      Возвращает список адресов на плане привязок
      Parameters:
        `planId` - код плана
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### clone

          public AddressRange clone(AddressRange ar)

      Возвращает новый диапазон адресов с адресами и портами, скопированными у аргумента
      Parameters:
        `ar` - копируемый диапазон адресов
      Returns:

    - #### freeConnection

          public void freeConnection()

    - #### moveRange

          public void moveRange(AddressRange range,
                                int cidFrom,
                                int cidTo,
                                int objectTo,
                                int userId)
                         throws java.sql.SQLException,
                                ru.bitel.bgbilling.common.BGException

      Перенос диапазона адресов с одного договора на другой
      Parameters:
        `range` - диапазон адресов
        `cidFrom` - код договора-источника
        `cidTo` - код договора-приемника
        `objectTo` - код объекта-приемника
        `userId` - код пользователя
      Throws:
        `java.sql.SQLException`
        `ru.bitel.bgbilling.common.BGException`

    - #### wrapRange

          public void wrapRange(AddressRange range,
                                int cidTo,
                                int objectTo,
                                java.util.Date dateClose,
                                java.util.Date dateOpen,
                                int userId)
                         throws java.sql.SQLException,
                                ru.bitel.bgbilling.common.BGException

      Разрыв диапазона адресов на два договора.
      Parameters:
        `range` -
        `cidTo` -
        `objectTo` -
        `dateClose` -
        `dateOpen` -
        `userId` -
      Throws:
        `java.sql.SQLException`
        `ru.bitel.bgbilling.common.BGException`

    - #### recalcAfterMove

          public void recalcAfterMove(bitel.billing.server.util.MonthForRecalc months,
                                      int cidFrom,
                                      int cidTo)

      Запуск переначисления после всяческих перемещений диапазонов адресов.
      Parameters:
        `months` -
        `cidFrom` -
        `cidTo` -