فراخوانی کنترل جریان ضمنی (ImplicitFlowControlCallback)

public abstract class ImplicitFlowControlCallback extends UrlRequest.Callback

زیرکلاس‌های مستقیم شناخته‌شده InMemoryTransformCronetCallback
InMemoryTransformCronetCallback

یک فراخوانی انتزاعی Cronet که کل بدنه را از حافظه می‌خواند و به صورت اختیاری بدنه را قبل از ارسال به صادرکننده درخواست HTTP، deserialize می‌کند.

زیرکلاس‌های غیرمستقیم شناخته‌شده ByteArrayCronetCallback ، JsonCronetCallback ، StringCronetCallback
ByteArrayCronetCallback

نوعی از InMemoryTransformCronetCallback که بایت‌های بدنه را کلمه به کلمه و بدون هیچ تفسیری برمی‌گرداند.

JsonCronetCallback

نوعی از InMemoryTransformCronetCallback که بدنه پاسخ را به صورت JSON تفسیر می‌کند.

StringCronetCallback

نوعی از InMemoryTransformCronetCallback که بدنه پاسخ را به عنوان یک رشته تفسیر می‌کند.


پیاده‌سازی UrlRequest.Callback که دشواری مدیریت چرخه حیات درخواست را از بین می‌برد و به طور خودکار به خواندن کامل پاسخ می‌پردازد.

خلاصه

سازندگان عمومی

روش‌های عمومی

final void

در صورتی که درخواست از طریق cancel لغو شده باشد، فراخوانی می‌شود.

final void

اگر درخواست به هر دلیلی پس از 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()

روش‌های عمومی

لغو شد

public final void onCanceled(UrlRequest request, UrlResponseInfo info)

در صورتی که درخواست از طریق cancel لغو شده باشد، فراخوانی می‌شود. پس از فراخوانی، هیچ متد Callback دیگری فراخوانی نخواهد شد. پیاده‌سازی پیش‌فرض هیچ اقدامی انجام نمی‌دهد.

پارامترها
UrlRequest request

درخواستی که لغو شد.

UrlResponseInfo info

اطلاعات پاسخ. در صورت عدم دریافت پاسخ، ممکن است null باشد.

در ناموفق

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

اگر درخواست به هر دلیلی پس از start با شکست مواجه شود، فراخوانی می‌شود. پس از فراخوانی، هیچ متد Callback دیگری فراخوانی نخواهد شد. error اطلاعاتی در مورد شکست ارائه می‌دهد.

پارامترها
UrlRequest request

درخواستی که ناموفق بود.

UrlResponseInfo info

اطلاعات پاسخ. در صورت عدم دریافت پاسخ، ممکن است null باشد.

CronetException error

اطلاعات مربوط به خطا.

روی خوانده شده کامل شد

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 تنظیم می‌شود.

موفق شد

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 تنظیم شده است، فراخوانی می‌شود.

لغو شد

protected abstract void onCanceled(@Nullable UrlResponseInfo info)

در صورتی که درخواست از طریق cancel لغو شده باشد، فراخوانی می‌شود. پس از فراخوانی، هیچ متد UrlRequest.Callback دیگری فراخوانی نخواهد شد.

پارامترها
@ Nullable UrlResponseInfo info

اطلاعات پاسخ. در صورت عدم دریافت پاسخ، ممکن است null باشد.

در ناموفق

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 تنظیم می‌شود.

موفق شد

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 تنظیم شده است، فراخوانی خواهد شد.