Cycle de vie des étiquettes

Les étiquettes, les champs et les choix passent par des états spécifiques tout au long de leur vie. De plus, les libellés peuvent avoir des révisions différentes. Le schéma suivant illustre le cycle de vie des libellés, y compris leur révision:

Schéma du cycle de vie des étiquettes.
Figure 3. Cycle de vie d'une étiquette
  1. Créer un libellé (create()) : le libellé est créé et stocké dans une base de données sous le nom revision_id=1. L'état du libellé est UNPUBLISHED_DRAFT. Dans cet état :
    • Les utilisateurs ne peuvent pas voir le libellé
    • Les utilisateurs ne peuvent pas appliquer le libellé aux éléments Drive.
  2. (Facultatif) Mettre à jour un libellé, un champ ou un choix (delta()) : chaque mise à jour, même avant sa publication, est stockée dans une base de données, et la révision du libellé est incrémentée.
  3. Publier un libellé (publish()) : le libellé est à l'état PUBLISHED, et les utilisateurs peuvent l'appliquer. La publication du libellé incrémente sa révision.
  4. (Facultatif) Mettre à jour un libellé, un champ ou un choix (delta()) : le libellé, le champ ou le choix sont mis à jour et stockés dans une base de données sous forme de brouillon. L'état du libellé est PUBLISHED, avec hasUnpublishedChanges=true, ce qui signifie que des modifications sont apportées au brouillon, mais qu'elles ne sont pas disponibles pour les utilisateurs. Chaque mise à jour incrémente la révision du libellé.
  5. (Facultatif) Publier un libellé (publish()) : si disponible, le brouillon le plus récent est publié. Le libellé est à l'état PUBLISHED, et les utilisateurs peuvent l'appliquer. La publication du libellé incrémente sa version.
  6. Désactiver un libellé (disable()) : le libellé est à l'état DISABLED, bien que les utilisateurs puissent l'appliquer via l'API. Toutefois, un libellé désactivé n'apparaît dans une UI, sauf s'il est configuré pour être affiché. L'abandon d'un libellé incrémente sa révision.
  7. Activer un libellé (enable()) : le libellé est renvoyé à l'état PUBLISHED, et les utilisateurs peuvent l'appliquer. La publication du libellé incrémente sa révision.
  8. Supprimer un libellé (delete()) : le libellé est à l'état DELETED et ne peut pas être appliqué. Les libellés supprimés finiront par être définitivement effacés.

Il est important de souligner que chaque mise à jour d'un libellé incrémente la révision du libellé. De plus, si le libellé a déjà été publié, le fait de le publier à nouveau après n mises à jour signifie que son numéro de révision publié est révision + n + 1 nombre de mises à jour successives.