ImplicitFlowControlCallback

public abstract class ImplicitFlowControlCallback extends UrlRequest.Callback

فئات فرعية مباشرة معروفة
InMemoryTransformCronetCallback

فئة مجرّدة من معاودة الاتصال في Cronet تقرأ النص الكامل إلى الذاكرة وتزيل تسلسله اختياريًا قبل إعادته إلى الجهة التي أصدرت طلب HTTP.

فئات فرعية غير مباشرة معروفة
ByteArrayCronetCallback

هي نوع خاص من InMemoryTransformCronetCallback يعرض وحدات البايت الخاصة بالنص الحرفي بدون أي تفسير.

JsonCronetCallback

تخصّص InMemoryTransformCronetCallback الذي يفسّر نص الاستجابة على أنّه JSON.

StringCronetCallback

نوع فرعي من InMemoryTransformCronetCallback يفسّر نص الاستجابة كسلسلة.


تنفيذ UrlRequest.Callback يزيل صعوبة إدارة دورة حياة الطلب، ويتابع تلقائيًا قراءة الردّ بالكامل.

ملخّص

طُرق وضع التصميم العامة

الإجراءات العامة

final void

يتم استدعاء هذا الإجراء إذا تم إلغاء الطلب من خلال cancel.

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

يتم استدعاء هذا الإجراء إذا تعذّر تنفيذ الطلب لأي سبب بعد start.

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

يتم استدعاؤه كلما تم قراءة جزء من نص الرد.

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

يتم استدعاؤه كلما تمت مواجهة عملية إعادة توجيه.

final void

يتم استدعاؤه عند تلقّي المجموعة النهائية من العناوين بعد جميع عمليات إعادة التوجيه.

final void

يتم استدعاء هذا الإجراء عند اكتمال الطلب بنجاح.

طُرق محمية

abstract void

يتم استدعاؤه كلما تم قراءة جزء من نص الرد.

abstract void

يتم استدعاء هذا الإجراء إذا تم إلغاء الطلب من خلال cancel.

abstract void

يتم استدعاء هذا الإجراء إذا تعذّر تنفيذ الطلب لأي سبب بعد start.

abstract void

يتم استدعاؤه عند تلقّي المجموعة النهائية من العناوين بعد جميع عمليات إعادة التوجيه.

abstract void

يتم استدعاء هذا الإجراء عند اكتمال الطلب بنجاح.

abstract boolean

يتم استدعاؤه كلما تمت مواجهة عملية إعادة توجيه.

طُرق وضع التصميم العامة

ImplicitFlowControlCallback

public ImplicitFlowControlCallback()

الإجراءات العامة

onCanceled

public final void onCanceled(UrlRequest request, UrlResponseInfo info)

يتم استدعاء هذا الإجراء إذا تم إلغاء الطلب من خلال cancel. بعد استدعاء هذه الدالة، لن يتم استدعاء أي دوال أخرى من Callback. لا يتّخذ التنفيذ التلقائي أي إجراء.

المعلَمات
UrlRequest request

طلب تم إلغاؤه

UrlResponseInfo info

معلومات الردّ قد تكون null في حال عدم تلقّي أي رد.

onFailed

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

يتم استدعاء هذا الإجراء إذا تعذّر تنفيذ الطلب لأي سبب بعد start. بعد استدعاء هذه الدالة، لن يتم استدعاء أي دوال أخرى من Callback. تقدّم error معلومات عن الخطأ.

المعلَمات
UrlRequest request

طلب تعذّر تنفيذه

UrlResponseInfo info

معلومات الردّ قد تكون null في حال عدم تلقّي أي رد.

CronetException error

معلومات عن الخطأ

onReadCompleted

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

يتم استدعاؤه كلما تم قراءة جزء من نص الرد. قد يتم ملء جزء من المخزن المؤقت فقط، حتى إذا لم يتم استهلاك نص الرد بالكامل بعد. باستثناء onCanceled()، لن يتم استدعاء أي طريقة أخرى من طرق Callback للطلب، بما في ذلك onSucceeded() وonFailed()، إلى أن يتم استدعاء UrlRequest.read() لمحاولة مواصلة قراءة نص الاستجابة.

المعلَمات
UrlRequest request

تمثّل هذه السمة الطلب الذي تلقّى البيانات.

UrlResponseInfo info

معلومات الردّ

ByteBuffer byteBuffer

المخزن المؤقت الذي تم تمريره إلى UrlRequest.read()، والذي يحتوي الآن على البيانات المستلَمة يتم تعديل موضع المخزن المؤقت إلى نهاية البيانات المستلَمة. لا يتم تغيير الحدّ الأقصى للمخزن المؤقت.

عمليات الطرح
java.lang.Exception

في حال حدوث خطأ أثناء معالجة عملية قراءة مكتملة سيتم استدعاء onFailed مع ضبط الاستثناء الذي تم طرحه كسبب لـ CallbackException.

onRedirectReceived

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

يتم استدعاؤه كلما تمت مواجهة عملية إعادة توجيه. سيتم استدعاء هذا الإجراء فقط بين استدعاء start وonResponseStarted(). سيتم تجاهل نص استجابة إعادة التوجيه، إذا كان يتضمّن نصًا. لن تتم متابعة عملية إعادة التوجيه إلى أن يتم استدعاء طريقة followRedirect الخاصة بـ URLRequest، سواء بشكل متزامن أو غير متزامن.

المعلَمات
UrlRequest request

طلب إعادة التوجيه

UrlResponseInfo info

معلومات الردّ

String newLocationUrl

الموقع الجغرافي الذي تتم إعادة توجيه الطلب إليه

عمليات الطرح
java.lang.Exception

في حال حدوث خطأ أثناء معالجة عملية إعادة التوجيه سيتم استدعاء onFailed مع ضبط الاستثناء الذي تم طرحه كسبب لـ CallbackException.

onResponseStarted

public final void onResponseStarted(UrlRequest request, UrlResponseInfo info)

يتم استدعاؤه عند تلقّي المجموعة النهائية من العناوين بعد جميع عمليات إعادة التوجيه. سيتم استدعاؤه مرة واحدة فقط لكل طلب. باستثناء onCanceled()، لن يتم استدعاء أي طريقة أخرى من طرق Callback للطلب، بما في ذلك onSucceeded() وonFailed()، إلى أن يتم استدعاء UrlRequest.read() لمحاولة بدء قراءة نص الرد.

المعلَمات
UrlRequest request

الطلب الذي بدأ في تلقّي الردّ

UrlResponseInfo info

معلومات الردّ

عمليات الطرح
java.lang.Exception

في حال حدوث خطأ أثناء معالجة بداية الردّ سيتم استدعاء onFailed مع ضبط الاستثناء الذي تم طرحه كسبب لـ CallbackException.

onSucceeded

public final void onSucceeded(UrlRequest request, UrlResponseInfo info)

يتم استدعاء هذا الإجراء عند اكتمال الطلب بنجاح. بعد استدعاء هذه الدالة، لن يتم استدعاء أي دوال أخرى من Callback.

المعلَمات
UrlRequest request

طلب تم تنفيذه بنجاح.

UrlResponseInfo info

معلومات الردّ

طُرق محمية

onBodyChunkRead

protected abstract void onBodyChunkRead(UrlResponseInfo info, ByteBuffer bodyChunk)

يتم استدعاؤه كلما تم قراءة جزء من نص الرد. قد يتم ملء جزء من المخزن المؤقت فقط، حتى إذا لم يتم استهلاك نص الرد بالكامل بعد. يكون المخزن المؤقت جاهزًا للقراءة. تتم إعادة استخدام المخازن المؤقتة داخليًا، لذا يجب ألا يخزّن الصف المنفِّذ المخزن المؤقت أو يستخدمه في أي مكان آخر غير تنفيذ هذه الطريقة.

المعلَمات
UrlResponseInfo info

معلومات الردّ

ByteBuffer bodyChunk

المخزن المؤقت الذي يحتوي على البيانات المستلَمة، والذي تمّ قلبه للقراءة

عمليات الطرح
java.lang.Exception

إذا حدث خطأ أثناء معالجة اكتمال القراءة، سيتم استدعاء onFailed مع ضبط الاستثناء الذي تم طرحه كسبب CallbackException.

onCanceled

protected abstract void onCanceled(@Nullable UrlResponseInfo info)

يتم استدعاء هذا الإجراء إذا تم إلغاء الطلب من خلال cancel. بعد استدعاء هذه الدالة، لن يتم استدعاء أي دوال أخرى من UrlRequest.Callback.

المعلَمات
@Nullable UrlResponseInfo info

معلومات الردّ قد تكون null في حال عدم تلقّي أي رد.

onFailed

protected abstract void onFailed(@Nullable UrlResponseInfo info, CronetException exception)

يتم استدعاء هذا الإجراء إذا تعذّر تنفيذ الطلب لأي سبب بعد start. بعد استدعاء هذه الدالة، لن يتم استدعاء أي دوال أخرى من UrlRequest.Callback. تقدّم error معلومات عن الخطأ.

المعلَمات
@Nullable UrlResponseInfo info

معلومات الردّ قد تكون null في حال عدم تلقّي أي رد.

CronetException exception

معلومات عن الخطأ

onResponseStarted

protected abstract void onResponseStarted(UrlResponseInfo info)

يتم استدعاؤه عند تلقّي المجموعة النهائية من العناوين بعد جميع عمليات إعادة التوجيه. سيتم استدعاؤه مرة واحدة فقط لكل طلب. ويُضمن عدم بدء Cronet في قراءة النص الأساسي إلا بعد أن تعرض هذه الطريقة النتيجة.

المعلَمات
UrlResponseInfo info

معلومات الردّ

عمليات الطرح
java.lang.Exception

إذا حدث خطأ أثناء معالجة بداية الردّ، سيتم استدعاء onFailed مع ضبط الاستثناء الذي تم طرحه كسبب CallbackException.

onSucceeded

protected abstract void onSucceeded(UrlResponseInfo info)

يتم استدعاء هذا الإجراء عند اكتمال الطلب بنجاح. بعد استدعاء هذه الدالة، لن يتم استدعاء أي دوال أخرى من UrlRequest.Callback.

المعلَمات
UrlResponseInfo info

معلومات الردّ

shouldFollowRedirect

protected abstract boolean shouldFollowRedirect(UrlResponseInfo info, String newLocationUrl)

يتم استدعاؤه كلما تمت مواجهة عملية إعادة توجيه. سيتم استدعاء هذا الإجراء فقط بين استدعاء start وonResponseStarted(). سيتم تجاهل نص استجابة إعادة التوجيه، إذا كان يتضمّن نصًا.

المعلَمات
UrlResponseInfo info

معلومات الردّ

String newLocationUrl

الموقع الجغرافي الذي تتم إعادة توجيه الطلب إليه

المرتجعات
boolean

يتم ضبط القيمة على "true" إذا كان يجب اتّباع عملية إعادة التوجيه، وعلى "false" إذا كان يجب إلغاء الطلب.

عمليات الطرح
java.lang.Exception

في حال حدوث خطأ أثناء معالجة عملية إعادة التوجيه، سيتم استدعاء onFailed مع ضبط الاستثناء الذي تم طرحه كسبب لـ CallbackException.