ShardMainResultForwarder

public class ShardMainResultForwarder
extends ResultForwarder implements ILogSaverListener

java.lang.Object
   ↳ com.android.tradefed.result.ResultForwarder
     ↳ com.android.tradefed.invoker.ShardMainResultForwarder


ResultForwarder שמאחד את התוצאות של קריאות בדיקה מחולקות. הוא מדווח למאזינים על השלמת ההפעלה רק אחרי שכל ההפעלות המפוצלות הושלמו.

הכיתה הזו לא בטוחה לשימוש בכמה שרשורים בו-זמנית. לקוחות אמורים לנעול את הכיתה הזו כשהם שולחים את תוצאות הבדיקה, כדי למנוע קריאה לאחזור קריאות (callbacks) של קריאות שלא בסדר.

סיכום

יוצרים ציבוריים

ShardMainResultForwarder( listeners, int expectedShards)

יוצרים ShardMainResultForwarder.

שיטות ציבוריות

getListeners()

הצגת רשימת המאזינים.

void invocationEnded(long elapsedTime)

האירוע הזה מדווח על סיום ההפעלה, בין שהיא הסתיימה בהצלחה ובין שהיא הסתיימה בגלל תנאי שגיאה כלשהו.

void invocationEnded(long elapsedTime, IInvocationContext context)

קריאה חוזרת מפורטת יותר כדי להבדיל בין שבר שהסתיים.

void invocationFailed(FailureDescription failure)

דיווח על קריאה חלקית עקב תנאי שגיאה כלשהו.

void invocationFailed(Throwable cause)

דיווח על קריאה חלקית עקב תנאי שגיאה כלשהו.

void invocationSkipped(SkipReason reason)

דיווח על קריאה כ'דילוג'

void invocationStarted(IInvocationContext context)

דיווח על התחלת ההפעלה של הבדיקה.

void logAssociation(String dataName, LogFile logFile)

במקרים מסוימים, צריך לשייך את היומן באופן חזק למקרה בדיקה, אבל אי אפשר לעשות זאת בקריאה החוזרת (callback) הישירה של testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile).

void testLogForward(String dataName, LogDataType dataType, InputStreamSource dataStream)

מעבירים רק את testLog במקום לשמור את היומן קודם.

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

הקריאה מתבצעת כשיומן הבדיקה נשמר.

יוצרים ציבוריים

ShardMainResultForwarder

public ShardMainResultForwarder ( listeners, 
                int expectedShards)

יוצרים ShardMainResultForwarder.

פרמטרים
listeners : רשימת ITestInvocationListener שאליה יועברו התוצאות כשכל הפלחים יסתיימו

expectedShards int: מספר השברים

שיטות ציבוריות

getListeners

public  getListeners ()

הצגת רשימת המאזינים. מיועד לשימוש רק של תת-כיתות.

החזרות
רשימת ה-ITestInvocationListener.

invocationEnded

public void invocationEnded (long elapsedTime)

האירוע הזה מדווח על סיום ההפעלה, בין שהיא הסתיימה בהצלחה ובין שהיא הסתיימה בגלל תנאי שגיאה כלשהו.

הקריאה תתבצע באופן אוטומטי על ידי מסגרת TradeFederation.

פרמטרים
elapsedTime long: הזמן שחלף מהקריאה, במילישניות

invocationEnded

public void invocationEnded (long elapsedTime, 
                IInvocationContext context)

קריאה חוזרת מפורטת יותר כדי להבדיל בין שבר שהסתיים.

פרמטרים
elapsedTime long

context IInvocationContext

invocationFailed

public void invocationFailed (FailureDescription failure)

דיווח על קריאה חלקית עקב תנאי שגיאה כלשהו.

הקריאה תתבצע באופן אוטומטי על ידי מסגרת TradeFederation.

פרמטרים
failure FailureDescription: ה-FailureDescription שמתאר את הסיבה לכישלון

invocationFailed

public void invocationFailed (Throwable cause)

דיווח על קריאה חלקית עקב תנאי שגיאה כלשהו.

הקריאה תתבצע באופן אוטומטי על ידי מסגרת TradeFederation.

פרמטרים
cause Throwable: Throwable הסיבה לכישלון

invocationSkipped

public void invocationSkipped (SkipReason reason)

דיווח על קריאה כ'דילוג'

פרמטרים
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

דיווח על התחלת ההפעלה של הבדיקה.

הקריאה תתבצע באופן אוטומטי על ידי מסגרת TradeFederation. דיווחים צריכים לשנות את השיטה הזו כדי לתמוך בדיווח ממספר מכשירים.

פרמטרים
context IInvocationContext: מידע על ההפעלה

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

במקרים מסוימים, צריך לשייך את היומן באופן חזק למקרה בדיקה, אבל אי אפשר לעשות זאת בקריאה החוזרת (callback) הישירה של testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile). כך, קריאת ה-callback הזו מאפשרת לספק באופן מפורש שיוך חזק.

פרמטרים
dataName String: השם של הנתונים

logFile LogFile: ה-LogFile שרשום ביומן קודם וצריך לשייך למקרה הבדיקה.

testLogForward

public void testLogForward (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream)

מעבירים רק את testLog במקום לשמור את היומן קודם.

פרמטרים
dataName String

dataType LogDataType

dataStream InputStreamSource

testLogSaved

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

הקריאה מתבצעת כשיומן הבדיקה נשמר.

צריך להשתמש בו במקום ב-ITestInvocationListener.testLog(String, LogDataType, InputStreamSource).

פרמטרים
dataName String: String שם תיאורי של הנתונים. לדוגמה, 'device_logcat'. הערה: שם המשתנה dataName לא חייב להיות ייחודי לכל קריאה. כלומר, למטמיעים צריכה להיות אפשרות לטפל בכמה קריאות עם אותו שם משתנה.

dataType LogDataType: ה-LogDataType של הנתונים

dataStream InputStreamSource: ה-InputStreamSource של הנתונים. מי שמטמיע את הקוד צריך להפעיל את createInputStream כדי להתחיל לקרוא את הנתונים, ולוודא שהוא סוגר את ה-InputStream שנוצר בסיום.

logFile LogFile: ה-LogFile שמכיל את המטא-נתונים של הקובץ השמור.