Package ru.bitel.bgbilling.plugins.dispatch.common.bean

# Class Subscription

java.lang.Object
ru.bitel.common.model.Id
ru.bitel.bgbilling.plugins.dispatch.common.bean.Subscription

All Implemented Interfaces:
  `java.io.Serializable`, `Contractable`, `Idable`

    public class Subscription
    extends Id
    implements Contractable

Подписка на рассылку

See Also:
  Serialized Form

- ## Field Summary

  ### Fields inherited from class ru.bitel.common.model.Id

  `id`

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `Subscription()` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `void` | `addContact​(Contact contact)` | Добавление контакта к списку контактов для данной подписки
  `java.lang.String` | `getComment()` | Возвращает комментарий к подписке
  `java.lang.String` | `getContactHash​(Contact contact)` | Получение хэша подписки для определенного контакта.
  `java.util.List<Contact>` | `getContacts()` | Возвращает список контактов, которые подписаны на рассылку
  `int` | `getContractId()` | Возвращает код договора
  `java.lang.String` | `getContractTitle()` | Возвращает название договора
  `Dispatch` | `getDispatch()` | Возвращает рассылку, на которую осуществлена данная подписка
  `java.lang.String` | `getHumanReadableRepeatTime()` |
  `Preferences` | `getPreferences()` | Возвращает настройки подписки
  `ScheduleTime` | `getRepeatTime()` | Возвращает расписание времени отправки для персональных рассылок
  `java.lang.String` | `getRepeatTimeDaysOfWeek()` | Возвращает строку дней недели персональной подписки для отображения в вебе.
  `Period` | `getSubscriptionPeriod()` | Возвращает период действия подписки.
  `ScheduleTime` | `getTotalRepeatTime()` | Возвращает итоговое расписание, по которому будут приходить сообщения рассылки.
  `boolean` | `isActive()` | Активна ли рассылка
  `boolean` | `isUpdate()` |
  `void` | `setActive​(boolean active)` | Устанавливает флаг активности подписки.
  `void` | `setComment​(java.lang.String comment)` | Устанавливает комментарий к подписке
  `void` | `setContacts​(java.util.List<Contact> contacts)` | Устанавливает список контактов, подписанных на рассылку
  `void` | `setContractId​(int contractId)` | Устанавливает код договора
  `void` | `setContractTitle​(java.lang.String contractTitle)` | Устанавливает название договора
  `void` | `setDispatch​(Dispatch dispatch)` | Устанавливает рассылку, на которую осуществленая данная подписка
  `void` | `setPreferences​(Preferences prefs)` | Устанавливает настройки подписки
  `void` | `setRepeatTime​(ScheduleTime recieveTime)` | Устанавливает расписание времени отправки для персоналных рассылок
  `void` | `setSubscriptionPeriod​(Period subscriptionPeriod)` | Устанавливает период действия подписки.
  `void` | `setUpdate​(boolean update)` |

  ### Methods inherited from class ru.bitel.common.model.Id

  `copyTo, equals, getId, hashCode, newIdList, newIdSet, newIdSet, newIdSet, newIdSet, newMap, setId, toString`

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

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### Subscription

    public Subscription()

- ## Method Details

  - ### getDispatch

    public Dispatch getDispatch()
    Возвращает рассылку, на которую осуществлена данная подписка
    Returns:

  - ### setDispatch

    public void setDispatch​(Dispatch dispatch)
    Устанавливает рассылку, на которую осуществленая данная подписка
    Parameters:
      `dispatch` -

  - ### getContacts

    public java.util.List<Contact> getContacts()
    Возвращает список контактов, которые подписаны на рассылку
    Returns:

  - ### setContacts

    public void setContacts​(java.util.List<Contact> contacts)
    Устанавливает список контактов, подписанных на рассылку
    Parameters:
      `contacts` -

  - ### addContact

    public void addContact​(Contact contact)
    Добавление контакта к списку контактов для данной подписки
    Parameters:
      `contact` - контакт

  - ### setPreferences

    public void setPreferences​(Preferences prefs)
    Устанавливает настройки подписки
    Parameters:
      `prefs` -

  - ### getPreferences

    public Preferences getPreferences()
    Возвращает настройки подписки
    Returns:

  - ### getContractId

    public int getContractId()
    Возвращает код договора
    Specified by:
      `getContractId` in interface `Contractable`
    Returns:
      код договора

  - ### setContractId

    public void setContractId​(int contractId)
    Устанавливает код договора
    Specified by:
      `setContractId` in interface `Contractable`
    Parameters:
      `contractId` - код договора

  - ### setComment

    public void setComment​(java.lang.String comment)
    Устанавливает комментарий к подписке
    Parameters:
      `comment` -

  - ### getComment

    public java.lang.String getComment()
    Возвращает комментарий к подписке
    Returns:

  - ### getRepeatTime

    public ScheduleTime getRepeatTime()
    Возвращает расписание времени отправки для персональных рассылок
    Returns:
      null для подписок на глобальные (т.е. неперсональные) рассылки

  - ### setRepeatTime

    public void setRepeatTime​(ScheduleTime recieveTime)
    Устанавливает расписание времени отправки для персоналных рассылок

  - ### getTotalRepeatTime

    public ScheduleTime getTotalRepeatTime()
    Возвращает итоговое расписание, по которому будут приходить сообщения рассылки. Время отправки берется из расписания рассылки, а остальные составляющие (дни недели, дни и месяцы) - из расписания самой подписки.
    Returns:

  - ### getHumanReadableRepeatTime

    public java.lang.String getHumanReadableRepeatTime()

  - ### getRepeatTimeDaysOfWeek

    public java.lang.String getRepeatTimeDaysOfWeek()
    Возвращает строку дней недели персональной подписки для отображения в вебе. То есть для подписки "по понедельникам и вторникам" вернет "1,2", для подписки "каждый день" вернет "1-7"
    Returns:

  - ### isActive

    public boolean isActive()
    Активна ли рассылка
    Returns:

  - ### setActive

    public void setActive​(boolean active)
    Устанавливает флаг активности подписки.
    Parameters:
      `active` - true - подписка активна, false - подписка не активна.

  - ### getSubscriptionPeriod

    public Period getSubscriptionPeriod()
    Возвращает период действия подписки.
    Returns:
      период действия подписки.

  - ### setSubscriptionPeriod

    public void setSubscriptionPeriod​(Period subscriptionPeriod)
    Устанавливает период действия подписки.
    Parameters:
      `subscriptionPeriod` - период действия подписки

  - ### getContactHash

    public java.lang.String getContactHash​(Contact contact)
    Получение хэша подписки для определенного контакта. Хеш необходим для возможности отписки от рассылки по ссылке в email. Хеш формируется как MD5 от строки "<код подписки>+<код контакта>".
    Parameters:
      `contact` - контакт, для которого необходимо получить хеш
    Returns:
      MD5-хеш в виде строки

  - ### getContractTitle

    public java.lang.String getContractTitle()
    Description copied from interface: `Contractable`
    Возвращает название договора
    Specified by:
      `getContractTitle` in interface `Contractable`
    Returns:
      название договора

  - ### setContractTitle

    public void setContractTitle​(java.lang.String contractTitle)
    Description copied from interface: `Contractable`
    Устанавливает название договора
    Specified by:
      `setContractTitle` in interface `Contractable`
    Parameters:
      `contractTitle` - название договора

  - ### isUpdate

    public boolean isUpdate()

  - ### setUpdate

    public void setUpdate​(boolean update)