TAGContainerOpener-Klassenreferenz

TAGContainerOpener-Klassenreferenz

Überblick

Eine Hilfsklasse zum Öffnen von Containern.

Dies ist ein Wrapper um die Methode openContainerById:callback: (TAGManager) für Aufrufer, die Zeitüberschreitungen unterstützt.

Im folgenden Beispiel wird eine Wartezeit von bis zu 0,1 Sekunden auf das Laden des Containers gezeigt, bevor auf den Standardcontainer zurückgesetzt wird:

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

Wenn der Aufrufer asynchron benachrichtigt werden möchte, wenn der Container verfügbar ist, das Zeitlimit jedoch manuell auf 0,5 Sekunden festgelegt werden soll, sollte der Aufrufer eine Unterklasse von TAGContainerOpenerNotifier erstellen, den Aufruf an openContainerWithId:tagManager:openType:timeout:notifier: (TAGContainerOpener) mit einer Zeitüberschreitung auf 0.5 vornehmen und die Implementierung unter containerAvailable: (TAGContainer Notification) für die Verarbeitung der Containerbenachrichtigung hinzufügen.

Statische Funktionen für öffentliche Mitglieder

(ID< TAGContainerFuture >)+ openContainerWithId:tagManager:openType:timeout:
 Wartet bis zu timeout Sekunden, bis ein Container geladen wird (je nach festgelegtem openType nicht standardmäßig oder aktuell) und gibt ein TAGContainerFuture zurück.
(void) + openContainerWithId:tagManager:openType:timeout:notifier:
 Wartet bis zu timeout Sekunden, bis ein Container geladen wird (je nach festgelegtem openType nicht standardmäßig oder aktuell) und ruft einen Notifier auf, wenn der Container verfügbar ist.
(NSTimeInterval)+ defaultTimeout
 Gibt das Standardzeitlimit für die Anfrage des Containers zurück.

Dokumentation zu Mitgliederfunktionen

+ (id<TAGContainerFuture>) openContainerWithId: (NSString *) containerId
TagManager verwenden: (TAGManager *) tagManager
openType: (TAGOpenType) openType
Zeitüberschreitung: (NSTimeInterval *) Zeitüberschreitung

Wartet bis zu timeout Sekunden, bis ein Container geladen wird (je nach festgelegtem openType nicht standardmäßig oder aktuell) und gibt ein TAGContainerFuture zurück.

Wenn der geöffnete Typ kTAGOpenTypePreferNonDefault ist, wird ein nicht standardmäßiger (gespeicherter oder aus dem Netzwerk abgerufener) Container geladen und die Blockierung von TAGContainerFuture wird aufgehoben, sobald einer der folgenden Fälle eintritt:

  • ein gespeicherter Container geladen wird.
  • Wenn kein gespeicherter Container vorhanden ist, wird ein Netzwerkcontainer geladen oder ein Netzwerkfehler tritt auf.
  • der Timer abläuft.

Wenn ein Netzwerkfehler auftritt oder der Timer abläuft, wird mit get (TAGContainerFuture-p) möglicherweise ein Standardcontainer zurückgegeben.

Lautet der geöffnete Typ kTAGOpenTypePreferFresh, wird ein neuer (gespeicherter oder aus dem Netzwerk abgerufener) Container geladen und die Blockierung von TAGContainerFuture wird aufgehoben, sobald einer der folgenden Fälle eintritt:

  • wird ein neuer Container geladen.
  • Wenn kein gespeicherter Container vorhanden ist oder der gespeicherte Container veraltet ist, wurde ein Netzwerkcontainer geladen oder ein Netzwerkfehler tritt auf.
  • der Timer abläuft.

Wenn ein Netzwerkfehler auftritt oder der Timer abläuft, enthält get (TAGContainerFuture-p) möglicherweise Standardwerte oder einen veralteten gespeicherten Container.

Wenn Sie eine der openContainer-Methoden ein zweites Mal mit einem bestimmten containerId aufrufen, wird ein TAGContainerFuture-Objekt zurückgegeben, dessen get (TAGContainerFuture-p) denselben Container wie beim ersten Aufruf zurückgibt.

Parameter:
containerIdDie ID des zu ladenden Containers.
tagManagerTAGManager zum Abrufen des Containers
Time-outDie maximale Wartezeit in Sekunden, bis der Container aus dem gespeicherten Speicher geladen wird. Bei „nil“ wird defaultTimeout verwendet.
openTypeDie Auswahl, wie der Container geöffnet werden soll.
Gibt zurück:
Ein TAGContainerFuture, das bis zu timeout wartet und den Container zurückgibt, sobald er verfügbar ist.
+ (void) openContainerWithId: (NSString *) containerId
TagManager verwenden: (TAGManager *) tagManager
openType: (TAGOpenType) openType
Zeitüberschreitung: (NSTimeInterval *) Zeitüberschreitung
Notifier: (ID< TAGContainerOpenerNotifier >) notifier

Wartet bis zu timeout Sekunden, bis ein Container geladen wird (je nach festgelegtem openType nicht standardmäßig oder aktuell) und ruft einen Notifier auf, wenn der Container verfügbar ist.

Wenn der geöffnete Container kTAGOpenTypePreferNonDefault ist, wird ein nicht standardmäßiger Container (gespeichert oder aus dem Netzwerk abgerufen) geladen und an den Notifier übergeben. Der Notifier wird aufgerufen, sobald einer der folgenden Fälle eintritt:

  • ein gespeicherter Container geladen wird.
  • Wenn kein gespeicherter Container vorhanden ist, wird ein Netzwerkcontainer geladen oder ein Netzwerkfehler tritt auf.
  • der Timer abläuft.

Wenn ein Netzwerkfehler auftritt oder der Timer abläuft, ist der an den Notifier übergebene Container ein Standardcontainer.

Wenn der geöffnete Container kTAGOpenTypePreferFresh ist, wird ein neuer (gespeicherter oder aus dem Netzwerk abgerufener) Container geladen und an den Notifier übergeben. Der Notifier wird aufgerufen, sobald einer der folgenden Fälle eintritt:

  • wird ein neuer Container geladen.
  • Wenn kein gespeicherter Container vorhanden ist oder der gespeicherte Container veraltet ist, wurde ein Netzwerkcontainer geladen oder ein Netzwerkfehler tritt auf.
  • der Timer abläuft.

Wenn ein Netzwerkfehler auftritt oder der Timer abläuft, enthält der an den Notifier übergebene Container möglicherweise Standardeinstellungen oder einen veralteten gespeicherten Container.

Wenn Sie eine der openContainer-Methoden ein zweites Mal mit einem bestimmten containerId aufrufen, wird der vom vorherigen Aufruf zurückgegebene Container an den Notifier übergeben, sobald er verfügbar ist.

Parameter:
containerIdDie ID des zu ladenden Containers.
tagManagerDer TAGManager, mit dem der Container abgerufen wird.
openTypeDie Auswahl, wie der Container geöffnet werden soll.
Time-outDie maximale Wartezeit in Sekunden, bis der Container aus dem gespeicherten Speicher geladen wird. Bei „nil“ wird defaultTimeout verwendet.
NotifierEin optionaler Notifier, der aufgerufen wird, wenn der Container verfügbar ist. Sie wird mit dem neuen Container aufgerufen, sofern verfügbar, und vor dem Zeitlimit geladen. Andernfalls wird mit einem nicht neuen Container aufgerufen. Beachten Sie, dass der Notifier möglicherweise von einem anderen Thread aufgerufen werden kann.
+ (NSTimeInterval) defaultTimeout

Gibt das Standardzeitlimit für die Anfrage des Containers zurück.

Gibt zurück:
Das standardmäßige Zeitlimit in Sekunden.