Skenario Penggunaan Marketplace Magic Terkait Auto Update

Pengguna Marketplace Magic berada dalam beberapa kondisi ketika ada update di server Magic. Dimana update tersebut memanfaatkan auto update.

Pada saat post ini ditulis, Marketplace Magic berada di versi 4.3.0. Dimana struktur file sudah mengalami dua kali perubahan atau sudah mengalami tiga versi struktur file. Yaitu :

1. Sudah ditentukannya nama-nama file bin, jadi tidak bisa menambah file bin diluar yang sudah ditentukan. Hanya bisa mengganti file tertentu dengan versi yang lebih baru. Ini adalah Marketplace Magic versi 3.

2. Nama-nama file bin, icons, dan appdata tidak ditentukan. Fleksibel bisa menambahkan file apapun, termasuk mengganti suatu file dengan versi yang lebih baru. Namun tidak ada mekanisme untuk menghapus file bin yang sudah tidak terpakai lagi, karena asumsinya terus menggunakan file tersebut dengan versi terbaru. Untuk file binnya sendiri mengacu ke library Hadiah Terindah. Ini adalah Marketplace Magic versi 4.0.0.

3.  Mengacu kepada struktur file kedua di atas, namun memiliki mekanisme menghapus file yang tidak digunakan lagi. Hal ini diperlukan karena Marketplace Magic tidak mengacu ke library Hadiah Terindah lagi, tapi mengacu ke library Magic. Ini dimulai di Marketplace Magic versi 4.3.0.

Kondisi-kondisi penggunaan Marketplace Magic akhirnya akan terbagi dalam beberapa skenario seperti dibawah ini :

1. Marketplace Magic Versi 1 dan 2

Pada skenario ini, Marketplace Magic yang terinstall masih versi 1 atau 2.

Magic versi ini akan berhenti beroperasi ketika melakukan cek lisensi. Dengan notifkasi meminta update ke versi 3 secara manual.

2. Marketplace Magic Versi 3

Pada skenario ini, Marketplace Magic yang terinstall masih versi 3.

Pada Marketplace Magic versi 3, mekanisme auto update mengacu ke URL auto update versi pertama. Dimana memaksa Marketplace Magic untuk diupdate ke versi 4.

Setelah Marketplace Magic diupdate ke versi 4, maka langsung dilakukan auto update kembali untuk versi 4 yang paling baru. Dimana mekanisme auto updatenya mengacu ke URL auto update versi kedua.

Pada URL auto update pertama, file-file update mengacu ke tabel mm_dlls di server Magic. Dimana dalam tabel tersebut terdapat link download Magic Core versi 4.0.0.

Mengenai detail mekanisme auto update untuk Marketplace Magic versi 3 dan 4 ada di postingan tersendiri masing-masing.

3. Marketplace Magic Versi 4.0.0

Pada skenario ini, Marketplace Magic yang terinstall adalah versi 4.0.0 sebelum versi 4.3.0.

Pada versi ini, Marketplace Magic hanya mengganti file bin, menambah file icons, dan mengganti file appdata jika diperlukan.

Namun tidak ada mekanisme menghapus file yang tidak diperlukan lagi.

file_versions maksimal di Marketplace Magic ini adalah versi 13.

Untuk memiliki mekanisme “hapus saja” Magic Core harus diupdate ke versi 4.3.0. Namun update ini akan berbarengan dengan update file bin lainnya. Sehingga pada tahap ini belum ada mekanisme “hapus saja”.

Jika sudah diupdate seluruh file bin pada versi sebelum 4.3.0, maka di versi 4.3.0 yang baru ini, dilakukan update lagi, yaitu “hapus saja” file yang tidak dibutuhkan.

files_version 4.3.0 ini adalah versi 14, dan files_delete nya versi 0.

4. Marketplace Magic Belum Diinstall

Pada kondisi ini, maka user akan langsung menginstall Marketplace Magic versi terbaru, yaitu versi 4.3.0.

Ketika Marketplace Magic versi 4.3.0 dijalankan dan dilakukan pengecekan update version, maka akan dibandingkan dengan data options atau default dari nilai di class Database. 

Berikutnya dilakukan auto update seperti biasa di versi 4, namun dengan tambahan hapus saja, jika version dari database dikembalikan nilai negatif.