ILogSaverListener

public interface ILogSaverListener
implements ITestInvocationListener

com.android.tradefed.result.ILogSaverListener


इस कुकी की मदद से, ITestInvocationListener यह सुन पाता है कि लॉग फ़ाइलें कब सेव की जाती हैं.

इससे कई ITestInvocationListener, रिपोर्ट जनरेट करते समय एक ही सेव की गई लॉग फ़ाइल का इस्तेमाल कर सकते हैं. साथ ही, ITestLogger.testLog(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource) को कॉल किए जाने पर, हर लिसनर को फ़ाइल को अलग-अलग सेव करने की ज़रूरत नहीं पड़ती.

इस इंटरफ़ेस को लागू करने वाली क्लास को यह पता होना चाहिए कि जब भी ITestLogger.testLog(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource) को कॉल किया जाएगा, तब testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) को कॉल किया जाएगा.

यह क्लास, ग्लोबल ILogSaver इंस्टेंस भी पास करती है, ताकि ITestInvocationListeners एक ही जगह पर अतिरिक्त फ़ाइलें सेव कर सकें.

खास जानकारी

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

default void logAssociation(String dataName, LogFile logFile)

कुछ मामलों में, लॉग को टेस्ट केस से जोड़ा जाना ज़रूरी होता है. हालांकि, सीधे testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) कॉलबैक पर ऐसा नहीं किया जा सकता.

default void setLogSaver(ILogSaver logSaver)

ILogSaver को सेट करें, ताकि लागू करने वाला व्यक्ति फ़ाइलें सेव कर सके.

default void testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

इस फ़ंक्शन को तब कॉल किया जाता है, जब टेस्ट लॉग सेव किया जाता है.

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

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

कुछ मामलों में, लॉग को टेस्ट केस से जोड़ा जाना ज़रूरी होता है. हालांकि, सीधे testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) कॉलबैक पर ऐसा नहीं किया जा सकता. इसलिए, यह कॉलबैक साफ़ तौर पर एक मज़बूत असोसिएशन उपलब्ध कराने की अनुमति देता है.

पैरामीटर
dataName String: डेटा का नाम

logFile LogFile: वह LogFile जिसे पहले लॉग किया गया था और जिसे टेस्ट केस से जोड़ा जाना चाहिए.

setLogSaver

public void setLogSaver (ILogSaver logSaver)

ILogSaver को सेट करें, ताकि लागू करने वाला व्यक्ति फ़ाइलें सेव कर सके.

पैरामीटर
logSaver ILogSaver: ILogSaver

testLogSaved

public void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

इस फ़ंक्शन को तब कॉल किया जाता है, जब टेस्ट लॉग सेव किया जाता है.

इसका इस्तेमाल ITestInvocationListener.testLog(String, LogDataType, InputStreamSource) की जगह किया जाना चाहिए.

पैरामीटर
dataName String: डेटा का String जानकारी देने वाला नाम. उदाहरण के लिए, "device_logcat". ध्यान दें ऐसा हो सकता है कि हर इनवोकेशन के लिए dataName यूनीक न हो. इसका मतलब है कि लागू करने वालों को एक ही dataName के साथ कई कॉल मैनेज करने होंगे

dataType LogDataType: डेटा का LogDataType

dataStream InputStreamSource: डेटा का InputStreamSource. डेटा को पढ़ना शुरू करने के लिए, लागू करने वालों को createInputStream को कॉल करना चाहिए. साथ ही, यह पक्का करना चाहिए कि पूरा होने पर, InputStream को बंद कर दिया गया हो.

logFile LogFile: LogFile में सेव की गई फ़ाइल का मेटा डेटा होता है.