Жизненный цикл этикетки

Ярлыки, поля и варианты выбора проходят через определенные состояния на протяжении всей своей жизни. Кроме того, этикетки могут иметь разные версии. На следующей диаграмме показан жизненный цикл этикетки, включая изменение:

Схема жизненного цикла этикетки.
Рисунок 3. Жизненный цикл этикетки
  1. Создать метку ( create() ) — метка создается и сохраняется в базе данных как revision_id=1 . Ярлык имеет состояние UNPUBLISHED_DRAFT . В этом состоянии:
    • Пользователи не могут просматривать ярлык
    • Пользователи не могут применять ярлык к объектам на Диске.
  2. (необязательно) Обновите метку, поле или выбор ( delta() ) . Каждое обновление, даже до его публикации, сохраняется в базе данных, а версия метки увеличивается.
  3. Опубликовать метку ( publish() ) . Метка имеет состояние PUBLISHED , и пользователи могут ее применить. Публикация метки увеличивает ее версию.
  4. (необязательно) Обновить метку, поле или выбор ( delta() ) — метка, поле или вариант обновляются и сохраняются в базе данных как черновик метки. Ярлык имеет состояние PUBLISHED с hasUnpublishedChanges=true что означает наличие черновых изменений, но они недоступны пользователям. Каждое обновление увеличивает версию метки.
  5. (необязательно) Опубликовать метку ( publish() ) — если доступно, публикуется самый последний черновик. Метка имеет состояние PUBLISHED , и пользователи могут ее применять. Публикация метки увеличивает ее версию.
  6. Отключить метку ( disable() ) . Метка имеет состояние DISABLED , хотя пользователи могут применить метку через API. Однако отключенная метка не отображается в пользовательском интерфейсе, если ее отображение не настроено. При объявлении устаревшей метки увеличивается ее версия.
  7. Включить метку ( enable() ) — метка возвращается в состояние PUBLISHED , и пользователи могут ее применить. Публикация метки увеличивает ее версию.
  8. Удалить метку ( delete() ) . Метка находится в состоянии DELETED и не может быть применена. Удаленные ярлыки в конечном итоге удаляются.

Важно подчеркнуть, что каждое обновление метки увеличивает ее версию. А если метка уже была опубликована, ее повторная публикация после n обновлений означает, что ее опубликованный номер версии равен номеру версии + n + 1 количества последовательных обновлений.