UrlRequest.Callback

abstract class UrlRequest.Callback

Znane podklasy bezpośrednie
ImplicitFlowControlCallback

Implementacja UrlRequest.Callback, która ułatwia zarządzanie cyklem życia żądania i automatycznie przechodzi do odczytania całej odpowiedzi.

Znane podklasy pośrednie
ByteArrayCronetCallback

Specjalizacja InMemoryTransformCronetCallback, która zwraca bajty treści w niezmienionej postaci, bez interpretacji.

InMemoryTransformCronetCallback

Abstrakcyjne wywołanie zwrotne Cronet, które odczytuje całą treść do pamięci i opcjonalnie deserializuje treść przed przekazaniem jej z powrotem do wystawcy żądania HTTP.

JsonCronetCallback

Specjalizacja InMemoryTransformCronetCallback, która interpretuje treść odpowiedzi jako JSON.

StringCronetCallback

Specjalizacja InMemoryTransformCronetCallback, która interpretuje treść odpowiedzi jako ciąg znaków.


Użytkownicy Cronet rozszerzają tę klasę, aby otrzymywać wywołania zwrotne wskazujące postęp przetwarzania UrlRequest. Podczas tworzenia UrlRequest przekazywana jest instancja tej klasy do konstruktora UrlRequest.Builder.

Uwaga: wszystkie metody będą wywoływane w wątku java.util.concurrent.Executor używanego podczas tworzenia UrlRequest.

Podsumowanie

Konstruktory publiczne

Funkcje publiczne

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

Wywoływane, jeśli żądanie zostało anulowane za pomocą cancel.

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

Wywoływane, jeśli żądanie nie powiodło się z jakiegokolwiek powodu po wywołaniu start.

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

Wywoływane za każdym razem, gdy odczytana zostanie część treści odpowiedzi.

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

Wywoływane za każdym razem, gdy napotkane zostanie przekierowanie.

abstract Unit

Wywoływane po otrzymaniu ostatecznego zestawu nagłówków po wszystkich przekierowaniach.

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

Wywoływane, gdy żądanie zostanie zrealizowane.

Konstruktory publiczne

Callback

Callback()

Funkcje publiczne

onCanceled

fun onCanceled(request: UrlRequest!, info: UrlResponseInfo!): Unit

Wywoływane, jeśli żądanie zostało anulowane za pomocą cancel. Po wywołaniu tej metody nie zostaną wywołane żadne inne metody Callback. Domyślna implementacja nie wykonuje żadnych działań.

Parametry
request: UrlRequest!

Żądanie, które zostało anulowane.

info: UrlResponseInfo!

Informacje o odpowiedzi. Może mieć wartość null, jeśli nie otrzymano żadnej odpowiedzi.

onFailed

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

Wywoływane, jeśli żądanie nie powiodło się z jakiegokolwiek powodu po wywołaniu start. Po wywołaniu tej metody nie zostaną wywołane żadne inne metody Callback. error zawiera informacje o błędzie.

Parametry
request: UrlRequest!

Żądanie, które nie powiodło się.

info: UrlResponseInfo!

Informacje o odpowiedzi. Może mieć wartość null, jeśli nie otrzymano żadnej odpowiedzi.

error: CronetException!

Informacje o błędzie.

onReadCompleted

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

Wywoływane za każdym razem, gdy odczytana zostanie część treści odpowiedzi. Nawet jeśli cała treść odpowiedzi nie została jeszcze wykorzystana, może być wypełniona tylko część bufora. Z wyjątkiem onCanceled() żadna inna metoda Callback nie zostanie wywołana dla żądania, w tym onSucceeded() i onFailed(), dopóki nie zostanie wywołana metoda UrlRequest.read() w celu kontynuowania odczytywania treści odpowiedzi.

Parametry
request: UrlRequest!

Żądanie, które otrzymało dane.

info: UrlResponseInfo!

Informacje o odpowiedzi.

byteBuffer: ByteBuffer!

Bufor, który został przekazany do UrlRequest.read(), a teraz zawiera otrzymane dane. Pozycja bufora jest aktualizowana do końca otrzymanych danych. Limit bufora nie jest zmieniany.

Zgłasza
java.lang.Exception

Jeśli podczas przetwarzania zakończenia odczytu wystąpi błąd. Metoda onFailed zostanie wywołana z wyjątkiem zgłoszonym jako przyczyną CallbackException.

onRedirectReceived

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

Wywoływane za każdym razem, gdy napotkane zostanie przekierowanie. Ta metoda będzie wywoływana tylko między wywołaniem start a onResponseStarted(). Treść odpowiedzi przekierowania, jeśli taka istnieje, zostanie zignorowana. Przekierowanie nie zostanie wykonane, dopóki nie zostanie wywołana metoda followRedirect klasy URLRequest, synchronicznie lub asynchronicznie.

Parametry
request: UrlRequest!

Żądanie, które jest przekierowywane.

info: UrlResponseInfo!

Informacje o odpowiedzi.

newLocationUrl: String!

Lokalizacja, do której przekierowywane jest żądanie.

Zgłasza
java.lang.Exception

Jeśli podczas przetwarzania przekierowania wystąpi błąd. Metoda onFailed zostanie wywołana z wyjątkiem zgłoszonym jako przyczyną CallbackException.

onResponseStarted

abstract fun onResponseStarted(request: UrlRequest!, info: UrlResponseInfo!): Unit

Wywoływane po otrzymaniu ostatecznego zestawu nagłówków po wszystkich przekierowaniach. Będzie wywoływana tylko raz dla każdego żądania. Z wyjątkiem onCanceled() żadna inna metoda Callback nie zostanie wywołana dla żądania, w tym onSucceeded() i onFailed(), dopóki nie zostanie wywołana metoda UrlRequest.read() w celu rozpoczęcia odczytywania treści odpowiedzi.

Parametry
request: UrlRequest!

Żądanie, które zaczęło otrzymywać odpowiedź.

info: UrlResponseInfo!

Informacje o odpowiedzi.

Zgłasza
java.lang.Exception

Jeśli podczas przetwarzania rozpoczęcia odpowiedzi wystąpi błąd. Metoda onFailed zostanie wywołana z wyjątkiem zgłoszonym jako przyczyną CallbackException.

onSucceeded

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

Wywoływane, gdy żądanie zostanie zrealizowane. Po wywołaniu tej metody nie zostaną wywołane żadne inne metody Callback.

Parametry
request: UrlRequest!

Żądanie, które zostało zrealizowane.

info: UrlResponseInfo!

Informacje o odpowiedzi.