Os marcadores, campos e opções passam por estados específicos ao longo da vida. Além disso, os marcadores podem ter revisões diferentes. O diagrama a seguir mostra o ciclo de vida do marcador, incluindo o controle de versão:
- Criar um marcador (
create()) : o marcador é criado e armazenado em um banco de dados comorevision_id=1. O marcador tem o estadoUNPUBLISHED_DRAFT. Nesse estado:- Os usuários não podem visualizar o marcador.
- Os usuários não podem aplicar o marcador a itens do Drive.
- (Opcional) Atualizar um marcador, campo ou opção (
delta()) : cada atualização, mesmo antes da publicação, é armazenada em um banco de dados, e a revisão do marcador é incrementada. - Publicar um marcador (
publish()) : o marcador tem o estadoPUBLISHED, e os usuários podem aplicá-lo. A publicação do marcador incrementa a revisão dele. - (Opcional) Atualizar um marcador, campo ou opção (
delta()) : o marcador, campo ou opção é atualizado e armazenado em um banco de dados como um marcador de rascunho. O marcador tem o estadoPUBLISHEDcomhasUnpublishedChanges=true, o que significa que há mudanças de rascunho, mas elas não estão disponíveis para os usuários. Cada atualização incrementa a revisão do marcador. - (Opcional) Publicar um marcador (
publish()) : se disponível, o rascunho mais recente é publicado. O marcador tem o estadoPUBLISHED, e os usuários podem aplicá-lo. A publicação do marcador incrementa a versão dele. - Desativar um marcador (
disable()) : o marcador tem o estadoDISABLED, embora os usuários possam aplicá-lo pela API. No entanto, um marcador desativado não é mostrado em uma interface, a menos que seja configurado para isso. A descontinuação do marcador incrementa a revisão dele. - Ativar um marcador (
enable()) : o marcador é retornado a um estadoPUBLISHED, e os usuários podem aplicá-lo. A publicação do marcador incrementa a revisão dele. - Excluir um marcador (
delete()) : o marcador tem um estadoDELETEDe não pode ser aplicado. Os marcadores excluídos são removidos após um período.
É importante enfatizar que cada atualização de um marcador incrementa a revisão dele. Além disso, se o marcador já tiver sido publicado, a publicação dele 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.