InvocationLocal

public class InvocationLocal
extends Object

java.lang.Object
   ↳ com.android.tradefed.invoker.logger.InvocationLocal<T>


यह क्लास, कॉल के दायरे वाले वैरिएबल उपलब्ध कराती है.

यह सुविधा, ThreadLocal की तरह ही काम करती है. ये वैरिएबल, कोड में मौजूद अपने सामान्य वैरिएबल से अलग होते हैं. इनका इस्तेमाल करने पर, वैरिएबल की एक कॉपी बनाई जाती है. यह कॉपी, वैरिएबल को ऐक्सेस करने वाले get तरीके के ज़रिए बनाई जाती है. InvocationLocal इंस्टेंस आम तौर पर, क्लास में निजी स्टैटिक फ़ील्ड होते हैं. इनका इस्तेमाल, किसी कॉल के साथ स्टेटस को जोड़ने के लिए किया जाता है.

हर कॉल, कॉल के स्कोप वाले वैरिएबल की कॉपी से तब तक जुड़ा रहता है, जब तक कॉल जारी रहता है और InvocationLocal इंस्टेंस को ऐक्सेस किया जा सकता है. किसी कॉल को पूरा करने के बाद, कॉल के स्थानीय इंस्टेंस की सभी कॉपी को ग़ैर-ज़रूरी डेटा के तौर पर हटाया जा सकता है. हालांकि, ऐसा तब तक नहीं किया जाएगा, जब तक इन कॉपी के दूसरे रेफ़रंस मौजूद हों.

ध्यान दें कि ThreadLocal इंस्टेंस के उलट, जिनका रेफ़रंस अब नहीं दिया जाता है उन्हें कॉल के जारी रहने के दौरान, ग़ैर-ज़रूरी डेटा के तौर पर नहीं हटाया जाता. इसलिए, स्थानीय या नॉन-स्टैटिक इंस्टेंस बनाने का सुझाव नहीं दिया जाता, क्योंकि ये बिना किसी सीमा के बढ़ सकते हैं.

चेतावनी: इस क्लास का कम से कम इस्तेमाल करें, क्योंकि इनवोकेशन-लोकल, वैसे ही ग्लोबल वैरिएबल होते हैं जिनमें कई समस्याएं होती हैं.

खास जानकारी

पब्लिक कंस्ट्रक्टर

InvocationLocal()

सार्वजनिक तरीके

final T get()

यह फ़ंक्शन, फ़िलहाल चल रहे इनवोकेशन के लोकल वैरिएबल की कॉपी दिखाता है.

सुरक्षित तरीके

T initialValue()

यह इस इनवोकेशन-लोकल वैरिएबल के लिए, मौजूदा इनवोकेशन की "शुरुआती वैल्यू" दिखाता है.

पब्लिक कंस्ट्रक्टर

InvocationLocal

public InvocationLocal ()

सार्वजनिक तरीके

सदस्यता लें

public final T get ()

यह फ़ंक्शन, फ़िलहाल चल रहे इनवोकेशन के लोकल वैरिएबल की कॉपी दिखाता है. अगर वेरिएबल के मौजूदा कॉल के लिए कोई वैल्यू नहीं है, तो इसे सबसे पहले initialValue() तरीके को कॉल करके मिली वैल्यू पर शुरू किया जाता है.

रिटर्न
T इस invocation-local की, फ़िलहाल चल रही इंवोकेशन की कॉपी.

सुरक्षित तरीके

initialValue

protected T initialValue ()

यह इस इनवोकेशन-लोकल वैरिएबल के लिए, मौजूदा इनवोकेशन की "शुरुआती वैल्यू" दिखाता है. इस तरीके को तब लागू किया जाएगा, जब कोड को पहली बार get() तरीके से वैरिएबल को ऐक्सेस करने के लिए, लागू किया जाएगा. इस तरीके को हर बार एक से ज़्यादा बार इस्तेमाल नहीं किया जा सकता.

इस तरीके से सिर्फ़ null दिखता है. हालांकि, InvocationLocal को सब-क्लास करके और इस तरीके को बदलकर, इसे बदला जा सकता है.

रिटर्न
T कॉल के दायरे वाले इस वैरिएबल की शुरुआती वैल्यू