Ciclo de vida dos rótulos

Rótulos, campos e escolhas passam por estados específicos ao longo da vida. Além disso, os rótulos podem ter revisões diferentes. O diagrama a seguir mostra o ciclo de vida do rótulo, incluindo a revisão:

Diagrama do ciclo de vida dos rótulos.
Figura 3. Ciclo de vida de um rótulo
  1. Criar um rótulo (create()): o rótulo é criado e armazenado em um banco de dados como revision_id=1. O rótulo tem o estado UNPUBLISHED_DRAFT. Neste estado:
    • Os usuários não podem ver o marcador
    • Os usuários não podem aplicar o marcador aos itens do Drive.
  2. (opcional) Atualizar um rótulo, campo ou opção (delta()): todas as atualizações, mesmo antes de serem publicadas, são armazenadas em um banco de dados, e a revisão do rótulo é incrementada.
  3. Publicar um rótulo (publish()): o rótulo tem o estado PUBLISHED e os usuários podem aplicar o rótulo. A publicação do rótulo incrementa a revisão.
  4. (opcional) Atualizar um rótulo, campo ou opção (delta()): o rótulo, o campo ou a opção é atualizado e armazenado em um banco de dados como um rótulo de rascunho. O rótulo tem o estado PUBLISHED com hasUnpublishedChanges=true, o que significa que há mudanças no rascunho, mas elas não estão disponíveis para os usuários. Cada atualização incrementa a revisão do rótulo.
  5. (opcional) Publicar um rótulo (publish()): se disponível, o rascunho mais atual é publicado. O marcador tem o estado PUBLISHED e os usuários podem aplicá-lo. A publicação do rótulo aumenta a versão.
  6. Desativar um marcador (disable()): o marcador tem o estado DISABLED, mas os usuários podem aplicar o marcador pela API. No entanto, um rótulo desativado não é exibido em uma interface, a menos que seja configurado para ser mostrado. A descontinuação do rótulo incrementa a revisão dele.
  7. Ativar um rótulo (enable()): o rótulo retorna a um estado PUBLISHED, e os usuários podem aplicá-lo. A publicação do rótulo incrementa a revisão.
  8. Excluir um rótulo (delete()): o rótulo tem um estado DELETED e não pode ser aplicado. Os rótulos excluídos serão removidos em algum momento.

É importante enfatizar que cada atualização de um rótulo incrementa a revisão dele. E, se o rótulo já tiver sido publicado, publicá-lo novamente após n atualizações significa que o número de revisão publicado é a revisão + n + 1 número de atualizações sucessivas.