UrlRequest.Callback

public abstract class UrlRequest.Callback

מחלקות משנה ישירות מוכרות
ImplicitFlowControlCallback

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

מחלקות משנה לא ישירות מוכרות
ByteArrayCronetCallback

התמחות של InMemoryTransformCronetCallback שמחזירה את הבייטים של הגוף כלשונם ללא פרשנות.

InMemoryTransformCronetCallback

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

JsonCronetCallback

התמחות של InMemoryTransformCronetCallback שמפרשת את גוף התגובה כ-JSON.

StringCronetCallback

התמחות של InMemoryTransformCronetCallback שמפרשת את גוף התגובה כמחרוזת.


משתמשי Cronet מרחיבים את המחלקה הזו כדי לקבל קריאות חוזרות שמציינות את ההתקדמות של UrlRequest שעובר עיבוד. מועבר מופע של המחלקה הזו לקונסטרוקטור של UrlRequest.Builder כשיוצרים את UrlRequest.

הערה: כל השיטות יופעלו בשרשור של java.util.concurrent.Executor שנעשה בו שימוש במהלך הבנייה של UrlRequest.

סיכום

‫constructors ציבוריים

‫methods ציבוריים

void

הפונקציה מופעלת אם הבקשה בוטלה דרך cancel.

abstract void
onFailed(
    UrlRequest request,
    UrlResponseInfo info,
    CronetException error
)

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

abstract void
onReadCompleted(
    UrlRequest request,
    UrlResponseInfo info,
    ByteBuffer byteBuffer
)

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

abstract void
onRedirectReceived(
    UrlRequest request,
    UrlResponseInfo info,
    String newLocationUrl
)

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

abstract void

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

abstract void

מופעל כשהבקשה הושלמה בהצלחה.

‫constructors ציבוריים

התקשרות חזרה

public Callback()

‫methods ציבוריים

onCanceled

public void onCanceled(UrlRequest request, UrlResponseInfo info)

הפונקציה מופעלת אם הבקשה בוטלה דרך cancel. אחרי שמפעילים את השיטה הזו, לא מופעלות שיטות אחרות של Callback. הטמעת ברירת המחדל לא מבצעת פעולה.

פרמטרים
UrlRequest request

בקשה שבוטלה.

UrlResponseInfo info

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

onFailed

public abstract void onFailed(
    UrlRequest request,
    UrlResponseInfo info,
    CronetException error
)

מופעל אם הבקשה נכשלה מסיבה כלשהי אחרי start. אחרי שמפעילים את השיטה הזו, לא מופעלות שיטות אחרות של Callback. error מספק מידע על הכשל.

פרמטרים
UrlRequest request

הבקשה שנכשלה.

UrlResponseInfo info

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

CronetException error

מידע על השגיאה.

onReadCompleted

public abstract void onReadCompleted(
    UrlRequest request,
    UrlResponseInfo info,
    ByteBuffer byteBuffer
)

מופעל בכל פעם שחלק מגוף התשובה נקרא. יכול להיות שרק חלק מהמאגר יאוכלס, גם אם גוף התגובה המלא עדיין לא נצרך. למעט onCanceled(), לא תופעל אף שיטה אחרת של Callback עבור הבקשה, כולל onSucceeded() ו-onFailed(), עד שיתבצע קריאה ל-UrlRequest.read() כדי לנסות להמשיך לקרוא את גוף התשובה.

פרמטרים
UrlRequest request

בקשה שקיבלה נתונים.

UrlResponseInfo info

פרטי התשובה.

ByteBuffer byteBuffer

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

הקפצת הודעות שגיאה (throw)
java.lang.Exception

אם מתרחשת שגיאה במהלך עיבוד השלמת קריאה. הקריאה ל-onFailed תתבצע כשהחריגה שהופעלה מוגדרת כסיבה ל-CallbackException.

onRedirectReceived

public abstract void onRedirectReceived(
    UrlRequest request,
    UrlResponseInfo info,
    String newLocationUrl
)

מופעל בכל פעם שנתקלים בהפניה אוטומטית. הפונקציה הזו תופעל רק בין הקריאה ל-start לבין הקריאה ל-onResponseStarted(). הסורק יתעלם מגוף התגובה של ההפניה האוטומטית, אם יש כזה. ההפניה האוטומטית לא תתבצע עד שהשיטה followRedirect של URLRequest תיקרא, באופן סינכרוני או אסינכרוני.

פרמטרים
UrlRequest request

לבקש הפניה אוטומטית.

UrlResponseInfo info

פרטי התשובה.

String newLocationUrl

המיקום שאליו מופנית הבקשה.

הקפצת הודעות שגיאה (throw)
java.lang.Exception

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

onResponseStarted

public abstract void onResponseStarted(UrlRequest request, UrlResponseInfo info)

מופעל כשמתקבלת קבוצת הכותרות הסופית, אחרי כל ההפניות האוטומטיות. הפונקציה תופעל רק פעם אחת לכל בקשה. למעט onCanceled(), לא תופעל אף שיטה אחרת של Callback עבור הבקשה, כולל onSucceeded() ו-onFailed(), עד שיתבצע קריאה ל-UrlRequest.read() כדי לנסות להתחיל לקרוא את גוף התגובה.

פרמטרים
UrlRequest request

בקשה שהתחילה לקבל תגובה.

UrlResponseInfo info

פרטי התשובה.

הקפצת הודעות שגיאה (throw)
java.lang.Exception

אם מתרחשת שגיאה במהלך עיבוד התחלת התגובה. הקריאה ל-onFailed תתבצע כשהחריגה שהופעלה מוגדרת כסיבה ל-CallbackException.

onSucceeded

public abstract void onSucceeded(UrlRequest request, UrlResponseInfo info)

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

פרמטרים
UrlRequest request

בקשה שהצליחה.

UrlResponseInfo info

פרטי התשובה.