खास जानकारी
कंटेनर खोलने के लिए हेल्पर क्लास.
यह openContainerById:callback: (TAGManager) तरीका का एक रैपर है. यह तरीका कॉलर के लिए है, जो टाइम आउट के लिए सहायता देता है.
नीचे दिए गए सैंपल में, कंटेनर को लोड होने में 0.1 सेकंड लग सकते हैं. इसके बाद, डिफ़ॉल्ट कंटेनर पर वापस लाया जा सकता है:
NSTimeInterval timeout = 0.1;
TagManager *tagManager = [TagManager instance];
TAGContainerFuture *future =
[TAGContainerOpener openContainerWithId:@"GTM-XXXX"
tagManager:tagManager
openType:kTAGOpenTypePreferNonDefault
timeout:&timeout];
TAGContainer *container = [future get];
अगर कॉलर, कंटेनर उपलब्ध होने पर एसिंक्रोनस रूप से सूचना चाहता है, लेकिन मैन्युअल रूप से 0.5 सेकंड का टाइम आउट तय करना चाहता है, तो कॉलर को TAGContainerOpenerNotifier को सब-क्लास करना चाहिए. इसके बाद, openContainerWithId:tagManager:openType:timeout:notifier: (TAGContainerOpener) को कॉल करना चाहिए. इसके टाइम आउट को 0.5 पर सेट किया जाना चाहिए. साथ ही, container-Opener के लिए हैंडलिंग में बदलाव जोड़ा जाना चाहिए:container-Opener.
को दबाकर रखें स्टैटिक पब्लिक मेंबर फ़ंक्शन | |
| (आईडी< TAGContainerFuture >) | + openContainerWithId:tagManager:openType:timeout: |
कंटेनर लोड होने के लिए, timeout सेकंड तक इंतज़ार करता है (बताए गए openType के हिसाब से, यह डिफ़ॉल्ट या नया नहीं होता) और TAGContainerFuture दिखाता है. | |
| (शून्य) | + openContainerWithId:tagManager:openType:timeout:notifier: |
कंटेनर लोड होने के लिए timeout सेकंड तक इंतज़ार करता है (बताए गए openType के हिसाब से, यह डिफ़ॉल्ट या नया नहीं है) और कंटेनर उपलब्ध होने पर सूचना देने वाले को कॉल करता है. | |
| (NSTimeInterval) | + defaultTimeout |
| कंटेनर का अनुरोध करने के लिए, डिफ़ॉल्ट टाइम आउट दिखाता है. | |
सदस्य के फ़ंक्शन से जुड़े दस्तावेज़
| + (id<TAGContainerFuture>) OpenContainerWithId: | (एनएसस्ट्रिंग *) | containerId | |
| TagManager: | (TAGManager *) | tagManager | |
| OpenType: | (TAGOpenType) | openType | |
| टाइम आउट: | (NSTimeInterval *) | समय खत्म | |
कंटेनर लोड होने के लिए, timeout सेकंड तक इंतज़ार करता है (बताए गए openType के हिसाब से, यह डिफ़ॉल्ट या नया नहीं होता) और TAGContainerFuture दिखाता है.
अगर ओपन टाइप kTAGOpenTypePreferNonDefault है, तो एक नॉन-डिफ़ॉल्ट (सेव किया गया या नेटवर्क से वापस लाया गया) कंटेनर लोड होता है. साथ ही, इनमें से किसी एक स्थिति में TAGContainerFuture को अनब्लॉक कर दिया जाता है:
- सेव किया गया कंटेनर लोड होता है.
- अगर कोई कंटेनर सेव नहीं किया गया है, तो नेटवर्क कंटेनर लोड होता है या नेटवर्क की गड़बड़ी होती है.
- टाइमर का समय खत्म हो जाता है.
अगर नेटवर्क की गड़बड़ी होती है या टाइमर का समय खत्म हो जाता है, तो get (TAGContainerFuture-p) डिफ़ॉल्ट कंटेनर दिखाएगा.
अगर ओपन टाइप kTAGOpenTypePreferFresh है, तो एक नया (सेव किया गया या नेटवर्क से लिया गया) कंटेनर लोड होता है. साथ ही, नीचे दी गई चीज़ों में से कोई एक होते ही, TAGContainerFuture को अनब्लॉक कर दिया जाता है:
- सेव किया गया एक नया कंटेनर लोड हो जाता है.
- अगर कोई सेव किया गया कंटेनर नहीं है या सेव किया गया कंटेनर पुराना है, तो नेटवर्क कंटेनर लोड होता है या नेटवर्क की गड़बड़ी होती है.
- टाइमर का समय खत्म हो जाता है.
अगर नेटवर्क की गड़बड़ी होती है या टाइमर का समय खत्म हो जाता है, तो get (TAGContainerFuture-p) में डिफ़ॉल्ट या सेव किया गया पुराना कंटेनर हो सकता है.
अगर किसी दिए गए containerId के साथ, किसी OpenContainer तरीके को दूसरी बार कॉल किया जाता है, तो एक TAGContainerFuture दिखेगा. इसका get (TAGContainerFuture-p), पहले कॉल की तरह ही कंटेनर दिखाएगा.
- पैरामीटर:
-
containerId लोड किए जाने वाले कंटेनर का आईडी. tagManager कंटेनर पाने के लिए TAGManager. टाइम आउट सेव किए गए स्टोर से कंटेनर को लोड करने में लगने वाले ज़्यादा से ज़्यादा सेकंड. अगर वैल्यू शून्य है, तो defaultTimeout का इस्तेमाल किया जाएगा. openType कंटेनर को खोलने का तरीका.
- लौटाए जाने वाले प्रॉडक्ट:
- एक TAGContainerFuture, जो
timeoutतक इंतज़ार करेगा और कंटेनर उपलब्ध होने पर उसे दिखाएगा.
| + (void) OpenContainerWithId: | (एनएसस्ट्रिंग *) | containerId | |
| TagManager: | (TAGManager *) | tagManager | |
| OpenType: | (TAGOpenType) | openType | |
| टाइम आउट: | (NSTimeInterval *) | समय खत्म | |
| सूचक: | (आईडी< TAGContainerOpenerNotifier >) | सूचना देने वाला | |
कंटेनर लोड होने के लिए timeout सेकंड तक इंतज़ार करता है (बताए गए openType के हिसाब से, यह डिफ़ॉल्ट या नया नहीं है) और कंटेनर उपलब्ध होने पर सूचना देने वाले को कॉल करता है.
अगर ओपन टाइप kTAGOpenTypePreferNonDefault है, तो एक नॉन-डिफ़ॉल्ट (सेव किया गया या नेटवर्क से वापस लाया गया) कंटेनर लोड होता है और सूचना देने वाली इकाई में भेज दिया जाता है. इनमें से कोई भी कार्रवाई होते ही, सूचना देने वाले को कॉल किया जाता है:
- सेव किया गया कंटेनर लोड होता है.
- अगर कोई कंटेनर सेव नहीं किया गया है, तो नेटवर्क कंटेनर लोड होता है या नेटवर्क की गड़बड़ी होती है.
- टाइमर का समय खत्म हो जाता है.
अगर नेटवर्क की कोई गड़बड़ी होती है या टाइमर की समयसीमा खत्म हो जाती है, तो सूचना देने वाले को भेजा गया कंटेनर एक डिफ़ॉल्ट कंटेनर होता है.
अगर ओपन टाइप kTAGOpenTypePreferFresh है, तो एक नया (नेटवर्क से सेव किया गया या नेटवर्क से लिया गया) कंटेनर लोड करके सूचना देने वाली इकाई को भेज दिया जाता है. इनमें से कोई भी कार्रवाई होते ही, सूचना देने वाले को कॉल किया जाता है:
- सेव किया गया एक नया कंटेनर लोड हो जाता है.
- अगर कोई सेव किया गया कंटेनर नहीं है या सेव किया गया कंटेनर पुराना है, तो नेटवर्क कंटेनर लोड होता है या नेटवर्क की गड़बड़ी होती है.
- टाइमर का समय खत्म हो जाता है.
अगर नेटवर्क की कोई गड़बड़ी होती है या टाइमर की समयसीमा खत्म हो जाती है, तो सूचना देने वाली इकाई को भेजे गए कंटेनर में डिफ़ॉल्ट या सेव किया गया पुराना कंटेनर हो सकता है.
अगर किसी दिए गए containerId के साथ किसी एक OpenContainer तरीके को दूसरी बार कॉल किया जाता है, तो पिछले कॉल से मिले कंटेनर को उपलब्ध होते ही उसे सूचना देने वाले में भेज दिया जाएगा.
- पैरामीटर:
-
containerId लोड किए जाने वाले कंटेनर का आईडी. tagManager कंटेनर पाने के लिए इस्तेमाल किया जाने वाला TAGManager. openType कंटेनर को खोलने का तरीका. टाइम आउट सेव किए गए स्टोर से कंटेनर को लोड करने में लगने वाले ज़्यादा से ज़्यादा सेकंड. अगर वैल्यू शून्य है, तो defaultTimeout का इस्तेमाल किया जाएगा. नोटिफ़ायर एक वैकल्पिक सूचना देने वाली इकाई, जिसे कंटेनर उपलब्ध होने पर कॉल किया जाएगा. अगर यह नया कंटेनर उपलब्ध है और टाइम आउट से पहले लोड हो जाता है, तो इसे उसके साथ कॉल किया जाएगा; ऐसा न होने पर, इसे नॉन-फ़्रेश कंटेनर के साथ कॉल किया जाएगा. ध्यान दें कि सूचक को किसी दूसरे थ्रेड से कॉल किया जा सकता है.
| + (NSTimeEnd) defaultTimeout |
कंटेनर का अनुरोध करने के लिए, डिफ़ॉल्ट टाइम आउट दिखाता है.
- लौटाए जाने वाले प्रॉडक्ट:
- डिफ़ॉल्ट टाइम आउट की अवधि, सेकंड में.