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)