ラベルのライフサイクル

ラベル、フィールド、選択肢は、ライフサイクル全体を通して特定の状態になります。 また、ラベルにはさまざまなリビジョンが存在する可能性があります。次の図は、リビジョン管理を含むラベルのライフサイクルを示しています。

ラベルのライフサイクルの図。
図 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 を介してラベルを適用できます。ただし、無効なラベルは、表示するように設定されていない限り、UI には表示されません。ラベルを非推奨にすると、リビジョンが増加します。
  7. ラベルを有効にする(enable() \- ラベルが PUBLISHED 状態に戻り、ユーザーはラベルを適用できます。ラベルを公開すると、リビジョンが増加します。
  8. ラベルを削除する(delete() \- ラベルの状態は DELETED になり、適用できません。削除されたラベルは最終的に削除されます。

ラベルを更新するたびに、ラベルのリビジョンが増加することに注意してください。また、ラベルがすでに公開されている場合、再度公開すると n回更新した後に、公開されたリビジョン番号はリビジョン + n + 1 回の連続更新になります。