Siklus proses label

Label, bidang, dan pilihan melewati keadaan tertentu sepanjang hidup mereka. Selain itu, label mungkin memiliki revisi yang berbeda. Diagram berikut menunjukkan daur hidup label, termasuk revisi:

Diagram siklus proses label.
Gambar 3. Siklus proses label
  1. Buat label (create())—Label dibuat dan disimpan di database sebagai revision_id=1. Label memiliki status UNPUBLISHED_DRAFT. Dalam status ini:
    • Pengguna tidak dapat melihat label
    • Pengguna tidak dapat menerapkan label ke item Drive.
  2. (opsional) Perbarui label, kolom, atau pilihan (delta())— Setiap pembaruan, bahkan sebelum dipublikasikan, disimpan di {i>database<i}, dan nama jumlah revisinya bertambah.
  3. Publikasikan label (publish())—Label memiliki status PUBLISHED dan pengguna dapat menerapkan label tersebut. Memublikasikan label akan menambahkan revisinya.
  4. (opsional) Perbarui label, kolom, atau pilihan (delta())— Label, kolom isian, atau pilihan akan diperbarui dan disimpan di {i>database<i} sebagai label draf. Tujuan label memiliki status PUBLISHED dengan hasUnpublishedChanges=true yang berarti ada perubahan draf, tetapi tidak tersedia untuk pengguna. Setiap pembaruan akan menambah revisi label.
  5. (opsional) Publikasikan label (publish())—Jika tersedia, draf dipublikasikan. Label memiliki status PUBLISHED dan pengguna dapat menerapkan label. Memublikasikan label akan menambah versinya.
  6. Nonaktifkan label (disable())—Label memiliki status DISABLED meskipun pengguna dapat menerapkan label tersebut melalui API. Namun, label yang dinonaktifkan tidak ditampilkan di UI kecuali dikonfigurasi untuk ditampilkan. Penghentian penggunaan label akan menambahkan revisinya.
  7. Aktifkan label (enable())—Label ditampilkan ke status PUBLISHED dan pengguna dapat menerapkan label tersebut. Memublikasikan label akan menambahkan revisinya.
  8. Hapus label (delete())—Label memiliki status DELETED dan tidak dapat diterapkan. Label yang dihapus pada akhirnya akan dihapus permanen.

Penting untuk ditekankan bahwa setiap pembaruan pada label akan menambah revisi. Dan, jika label sudah dipublikasikan, publikasikan lagi setelah n pembaruan berarti bahwa jumlah revisi yang diterbitkan adalah revisi + n + 1 update yang berurutan.