ImplicitFlowControlCallback

public abstract class ImplicitFlowControlCallback extends UrlRequest.Callback

Известные прямые подклассы InMemoryTransformCronetCallback
InMemoryTransformCronetCallback

Абстрактный коллбэк Cronet, который считывает всё тело запроса в память и, при необходимости, десериализует его перед передачей обратно отправителю HTTP-запроса.

Известные косвенные подклассы : 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 если ответ не был получен.

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 будет указано выброшенное исключение.

Отменено

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 будет указано выброшенное исключение.