Referensi Class TAGContainerOpener

Referensi Class TAGContainerOpener

Ringkasan

Class helper untuk membuka container.

Ini adalah wrapper di sekitar metode openContainerById:callback: (TAGManager) untuk pemanggil yang memberikan dukungan untuk waktu tunggu.

Berikut adalah contoh yang menunjukkan waktu menunggu hingga 0,1 detik sampai penampung dimuat sebelum kembali ke penampung default:

     NSTimeInterval timeout = 0.1;
     TagManager *tagManager = [TagManager instance];
     TAGContainerFuture *future =
         [TAGContainerOpener openContainerWithId:@"GTM-XXXX"
                                      tagManager:tagManager
                                        openType:kTAGOpenTypePreferNonDefault
                                         timeout:&timeout];
     TAGContainer *container = [future get];
 

Jika pemanggil ingin diberi tahu secara asinkron saat penampung tersedia, tetapi ingin menentukan waktu tunggu secara manual menjadi 0,5 detik, pemanggil harus membuat subclass TAGContainerOpenerNotifier, melakukan panggilan ke openContainerWithId:tagManager:openType:timeout:notifier: (TAGContainerOpener) dengan waktu tunggu ditetapkan ke 0.5, dan tambahkan implementasi ke containerOpenerNotifier yang tersedia: (TAGContainerOpenerNotifier

Fungsi Anggota Publik Statis

(id< TAGContainerFuture >)+ openContainerWithId:tagManager:openType:timeout:
 Menunggu hingga timeout detik untuk penampung dimuat (non default atau baru, bergantung pada openType yang ditentukan) dan menampilkan TAGContainerFuture.
(void) + openContainerWithId:tagManager:openType:timeout:notifier:
 Menunggu hingga timeout detik untuk penampung dimuat (non default atau baru bergantung pada openType yang ditentukan) dan memanggil pemberitahuan saat penampung tersedia.
(NSTimeInterval)+ defaultTimeout
 Menampilkan waktu tunggu default untuk meminta penampung.

Dokumentasi Fungsi Anggota

+ (id<TAGContainerFuture>) openContainerWithId: (NSString *) containerId
tagManager: (TAGManager *) tagManager
openType: (TAGOpenType) openType
waktu tunggu: (NSTimeInterval *) waktu tunggu

Menunggu hingga timeout detik untuk penampung dimuat (non default atau baru, bergantung pada openType yang ditentukan) dan menampilkan TAGContainerFuture.

Jika jenis buka adalah kTAGOpenTypePreferNonDefault, penampung non-default (disimpan atau diambil dari jaringan) akan dimuat dan TAGContainerFuture dibatalkan pemblokirannya segera setelah salah satu hal berikut terjadi:

  • penampung tersimpan akan dimuat.
  • jika tidak ada penampung tersimpan, penampung jaringan dimuat atau terjadi error jaringan.
  • timer berakhir.

Jika terjadi error jaringan atau timer berakhir, get (TAGContainerFuture-p) dapat menampilkan penampung default.

Jika jenis yang terbuka adalah kTAGOpenTypePreferFresh, penampung baru (disimpan atau diambil dari jaringan) akan dimuat dan TAGContainerFuture dibatalkan pemblokirannya segera setelah salah satu hal berikut terjadi:

  • penampung baru yang tersimpan dimuat.
  • jika tidak ada penampung tersimpan atau penampung tersimpan sudah usang, penampung jaringan dimuat atau terjadi error jaringan.
  • timer berakhir.

Jika terjadi error jaringan atau timer berakhir, get (TAGContainerFuture-p) dapat berisi setelan default atau penampung tersimpan yang sudah tidak berlaku.

Jika Anda memanggil salah satu metode openContainer untuk kedua kalinya dengan containerId tertentu, TAGContainerFuture akan ditampilkan yang get (TAGContainerFuture-p) akan menampilkan penampung yang sama seperti panggilan pertama.

Parameter:
containerIdID penampung yang akan dimuat.
tagManagerTAGManager untuk mendapatkan penampung.
timeoutJumlah detik maksimum untuk menunggu memuat penampung dari penyimpanan tersimpan. Jika nol, defaultTimeout akan digunakan.
openTypePilihan cara membuka penampung.
Hasil:
TAGContainerFuture yang akan menunggu hingga timeout dan menampilkan penampung saat tersedia.
+ (void) openContainerWithId: (NSString *) containerId
tagManager: (TAGManager *) tagManager
openType: (TAGOpenType) openType
waktu tunggu: (NSTimeInterval *) waktu tunggu
notifikasi: (id< TAGContainerOpenerNotifier >) pemberi tahu

Menunggu hingga timeout detik untuk penampung dimuat (non default atau baru bergantung pada openType yang ditentukan) dan memanggil pemberitahuan saat penampung tersedia.

Jika jenis yang terbuka adalah kTAGOpenTypePreferNonDefault, penampung non-default (disimpan atau diambil dari jaringan) akan dimuat dan diteruskan ke pemberi notifikasi. Pemberi tahu dipanggil segera setelah salah satu hal berikut terjadi:

  • penampung tersimpan akan dimuat.
  • jika tidak ada penampung tersimpan, penampung jaringan dimuat atau terjadi error jaringan.
  • timer berakhir.

Jika terjadi error jaringan atau timer berakhir, penampung yang diteruskan ke pemberi notifikasi adalah penampung default.

Jika jenis yang terbuka adalah kTAGOpenTypePreferFresh, penampung baru (disimpan atau diambil dari jaringan) akan dimuat dan diteruskan ke pemberi notifikasi. Pemberi tahu dipanggil segera setelah salah satu hal berikut terjadi:

  • penampung baru yang tersimpan dimuat.
  • jika tidak ada penampung tersimpan atau penampung tersimpan sudah usang, penampung jaringan dimuat atau terjadi error jaringan.
  • timer berakhir.

Jika terjadi error jaringan atau timer berakhir, penampung yang diteruskan ke pemberi notifikasi mungkin berisi setelan default atau penampung tersimpan yang sudah tidak berlaku.

Jika Anda memanggil salah satu metode openContainer untuk kedua kalinya dengan containerId tertentu, penampung sama yang ditampilkan dari panggilan sebelumnya akan diteruskan ke pemberi notifikasi segera setelah tersedia.

Parameter:
containerIdID penampung yang akan dimuat.
tagManagerTAGManager yang digunakan untuk mendapatkan penampung.
openTypePilihan cara membuka penampung.
timeoutJumlah detik maksimum untuk menunggu memuat penampung dari penyimpanan tersimpan. Jika nol, defaultTimeout akan digunakan.
notifikasiPemberi tahu opsional yang akan dipanggil saat penampung tersedia. Saluran akan dipanggil dengan penampung baru, jika tersedia dan dimuat sebelum waktu tunggu; jika tidak, penampung akan dipanggil dengan penampung yang tidak baru. Perhatikan, notifier dapat dipanggil dari thread berbeda.
+ (NSTimeInterval) defaultTimeout

Menampilkan waktu tunggu default untuk meminta penampung.

Hasil:
Waktu tunggu default dalam detik.