InMemoryTransformCronetCallback

abstract class InMemoryTransformCronetCallback<T> : ImplicitFlowControlCallback

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

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

JsonCronetCallback

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

StringCronetCallback

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


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

يمكن لمقدّم الطلب الاشتراك لتلقّي إشعارات بشأن الطلب من خلال إضافة mListeners للإكمال إلى دالة معاودة الاتصال. عندما يصل الطلب إلى حالة نهائية، يتم إبلاغ mListeners بترتيب الإضافة.

المعلَمات
<T>

نوع نص الرد

ملخّص

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

الوظائف العامة

ImplicitFlowControlCallback!

تضيف هذه الطريقة أداة معالجة عند اكتمال العملية.

الدوال المحمية

Unit

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

Unit

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

Unit
onFailed(info: UrlResponseInfo?, exception: CronetException!)

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

Unit

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

Unit

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

abstract T!

تحويل (إلغاء تسلسل) النص الكامل العادي إلى عنصر يحدّده المستخدم

الدوال الموروثة

من org.chromium.net.apihelpers.ImplicitFlowControlCallback
Unit
onCanceled(request: UrlRequest!, info: UrlResponseInfo!)

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

Unit
onFailed(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    error: CronetException!
)

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

Unit
onReadCompleted(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    byteBuffer: ByteBuffer!
)

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

Unit
onRedirectReceived(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    newLocationUrl: String!
)

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

Unit

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

Unit
onSucceeded(request: UrlRequest!, info: UrlResponseInfo!)

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

abstract Boolean
shouldFollowRedirect(info: UrlResponseInfo!, newLocationUrl: String!)

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

من org.chromium.net.UrlRequest.Callback
abstract Unit
onFailed(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    error: CronetException!
)

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

abstract Unit
onReadCompleted(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    byteBuffer: ByteBuffer!
)

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

abstract Unit
onRedirectReceived(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    newLocationUrl: String!
)

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

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

InMemoryTransformCronetCallback

InMemoryTransformCronetCallback()

الوظائف العامة

addCompletionListener

fun addCompletionListener(listener: CronetRequestCompletionListener<T!>!): ImplicitFlowControlCallback!

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

انظر أيضًا
CronetRequestCompletionListener

الدوال المحمية

onBodyChunkRead

protected fun onBodyChunkRead(info: UrlResponseInfo!, bodyChunk: ByteBuffer!): Unit

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

المعلَمات
info: UrlResponseInfo!

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

bodyChunk: ByteBuffer!

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

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

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

onCanceled

protected fun onCanceled(info: UrlResponseInfo?): Unit

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

المعلَمات
info: UrlResponseInfo?

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

onFailed

protected fun onFailed(info: UrlResponseInfo?, exception: CronetException!): Unit

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

المعلَمات
info: UrlResponseInfo?

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

exception: CronetException!

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

onResponseStarted

protected fun onResponseStarted(info: UrlResponseInfo!): Unit

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

المعلَمات
info: UrlResponseInfo!

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

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

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

onSucceeded

protected fun onSucceeded(info: UrlResponseInfo!): Unit

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

المعلَمات
info: UrlResponseInfo!

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

transformBodyBytes

protected abstract fun transformBodyBytes(info: UrlResponseInfo!, bodyBytes: ByteArray!): T!

تحويل (إلغاء تسلسل) النص الكامل العادي إلى عنصر يحدّده المستخدم

يُفترض أنّ الفئات التي تنفّذ هذه الواجهة تتعامل مع الحالات الحدّية (مثل النصوص الفارغة أو المشوّهة) بشكلٍ مناسب. لا يفحص Cronet العناصر، بل يمرّرها (أو أي استثناءات) إلى الجهة التي أرسلت الطلب.