BidirectionalStream.Callback

public abstract class BidirectionalStream.Callback


מחלקת Callback שמשמשת לקבלת קריאות חוזרות מ-BidirectionalStream.

סיכום

‫constructors ציבוריים

‫methods ציבוריים

void

מופעל אם הסטרימינג בוטל באמצעות cancel.

abstract void
onFailed(
    BidirectionalStream stream,
    UrlResponseInfo info,
    CronetException error
)

מופעל אם הסטרימינג נכשל מסיבה כלשהי אחרי start.

abstract void
onReadCompleted(
    BidirectionalStream stream,
    UrlResponseInfo info,
    ByteBuffer buffer,
    boolean endOfStream
)

מופעל כשנתונים נקראים לתוך המאגר שמועבר אל read().

abstract void

מופעל כשמתקבלות כותרות תגובה ראשוניות.

void

מופעל כשמתקבלים טריילרים לפני סגירת הסטרימינג.

abstract void

מופעל כשהזרם מוכן לקריאה ולכתיבה.

abstract void

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

abstract void
onWriteCompleted(
    BidirectionalStream stream,
    UrlResponseInfo info,
    ByteBuffer buffer,
    boolean endOfStream
)

מופעל כשכל ה-ByteBuffer שמועבר אל write() נשלח.

‫constructors ציבוריים

התקשרות חזרה

public Callback()

‫methods ציבוריים

onCanceled

public void onCanceled(BidirectionalStream stream, UrlResponseInfo info)

מופעל אם הסטרימינג בוטל באמצעות cancel. אחרי הפעלת השיטה, לא יופעלו שיטות נוספות של BidirectionalStream.Callback. הטמעת ברירת המחדל לא מבצעת פעולה.

פרמטרים
BidirectionalStream stream

השידור שבוטל

UrlResponseInfo info

פרטי התשובה. יכול להיות null אם לא התקבלה תשובה.

onFailed

public abstract void onFailed(
    BidirectionalStream stream,
    UrlResponseInfo info,
    CronetException error
)

מופעל אם הסטרימינג נכשל מסיבה כלשהי אחרי start. קודי שגיאה של HTTP/2 ממופים לקודי getCronetInternalErrorCode. אחרי הפעלת השיטה, לא יופעלו שיטות נוספות של BidirectionalStream.Callback.

פרמטרים
BidirectionalStream stream

השידור שנכשל

UrlResponseInfo info

פרטי התשובה. יכול להיות null אם לא התקבלה תשובה.

CronetException error

מידע על הכשל

onReadCompleted

public abstract void onReadCompleted(
    BidirectionalStream stream,
    UrlResponseInfo info,
    ByteBuffer buffer,
    boolean endOfStream
)

מופעל כשנתונים נקראים לתוך המאגר שמועבר אל read(). יכול להיות שרק חלק מהמאגר יאוכלס. כדי להמשיך לקרוא, צריך להתקשר אל read(). יכול להיות שהיא תופעל אחרי onResponseTrailersReceived(), אם היו נתונים של קריאה בהמתנה לפני קבלת הטריילרים.

פרמטרים
BidirectionalStream stream

הסטרימינג שבו הקריאה הושלמה

UrlResponseInfo info

פרטי התשובה

ByteBuffer buffer

המאגר שהועבר אל read(), שמכיל עכשיו את הנתונים שהתקבלו. המגבלה של המאגר לא משתנה. המיקום של המאגר מוגדר לסוף הנתונים שהתקבלו. אם המיקום לא מתעדכן, זה אומר שהצד המרוחק אותת שהוא לא ישלח יותר נתונים.

boolean endOfStream

אם הערך הוא True, אלה הנתונים האחרונים שנקראו, הצד המרוחק לא ישלח נתונים נוספים, והצד הקורא ייסגר.

onResponseHeadersReceived

public abstract void onResponseHeadersReceived(
    BidirectionalStream stream,
    UrlResponseInfo info
)

מופעל כשמתקבלות כותרות תגובה ראשוניות. כותרות זמינות מ- info.getAllHeaders(). הצרכן יכול להתקשר למספר read() כדי להתחיל לקרוא. הצרכן יכול להתקשר אל write() כדי להתחיל לכתוב או לסגור את הזרם.

פרמטרים
BidirectionalStream stream

הסטרים שבו התקבלו כותרות התגובה.

UrlResponseInfo info

פרטי התשובה.

onResponseTrailersReceived

public void onResponseTrailersReceived(
    BidirectionalStream stream,
    UrlResponseInfo info,
    UrlResponseInfo.HeaderBlock trailers
)

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

פרמטרים
BidirectionalStream stream

הזרם שבו התקבלו טריילרים של תגובות

UrlResponseInfo info

פרטי התשובה

UrlResponseInfo.HeaderBlock trailers

הטריילרים שהתקבלו

onStreamReady

public abstract void onStreamReady(BidirectionalStream stream)

מופעל כשהזרם מוכן לקריאה ולכתיבה. הלקוח יכול להתקשר למספר read() כדי להתחיל לקרוא את הנתונים. הצרכן יכול להתקשר אל write() כדי להתחיל לכתוב נתונים.

פרמטרים
BidirectionalStream stream

השידור שמוכן.

onSucceeded

public abstract void onSucceeded(BidirectionalStream stream, UrlResponseInfo info)

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

פרמטרים
BidirectionalStream stream

הזרם שנסגר בהצלחה

UrlResponseInfo info

פרטי התשובה

onWriteCompleted

public abstract void onWriteCompleted(
    BidirectionalStream stream,
    UrlResponseInfo info,
    ByteBuffer buffer,
    boolean endOfStream
)

מופעל כשכל ה-ByteBuffer שמועבר אל write() נשלח. המיקום של המאגר מתעדכן כך שיהיה זהה למגבלת המאגר. המגבלה של המאגר לא משתנה. כדי להמשיך לכתוב, צריך להתקשר אל write().

פרמטרים
BidirectionalStream stream

הסטרימינג שבו הכתיבה הושלמה

UrlResponseInfo info

פרטי התשובה

ByteBuffer buffer

מאגר הנתונים הזמני שהועבר אל write(). המיקום של המאגר מוגדר למגבלה של המאגר. המגבלה של המאגר לא משתנה.

boolean endOfStream

הדגל endOfStream שהועבר אל write() המתאים. אם הערך הוא True, הצד של הכתיבה סגור.