BidirectionalStream.Callback

abstract class BidirectionalStream.Callback


Callback-Klasse zum Empfangen von Callbacks von einem BidirectionalStream.

Zusammenfassung

Öffentliche Konstruktoren

Öffentliche Funktionen

Unit

Wird aufgerufen, wenn der Stream über cancel abgebrochen wurde.

abstract Unit
onFailed(
    stream: BidirectionalStream!,
    info: UrlResponseInfo!,
    error: CronetException!
)

Wird aufgerufen, wenn der Stream nach start aus irgendeinem Grund fehlgeschlagen ist.

abstract Unit
onReadCompleted(
    stream: BidirectionalStream!,
    info: UrlResponseInfo!,
    buffer: ByteBuffer!,
    endOfStream: Boolean
)

Wird aufgerufen, wenn Daten in den Puffer gelesen werden, der an read() übergeben wurde.

abstract Unit

Wird aufgerufen, wenn die ersten Antwortheader empfangen werden.

Unit
onResponseTrailersReceived(
    stream: BidirectionalStream!,
    info: UrlResponseInfo!,
    trailers: UrlResponseInfo.HeaderBlock!
)

Wird aufgerufen, wenn Trailer vor dem Schließen des Streams empfangen werden.

abstract Unit

Wird aufgerufen, wenn der Stream zum Lesen und Schreiben bereit ist.

abstract Unit

Wird aufgerufen, wenn keine Daten gelesen oder geschrieben werden müssen und der Stream remote und lokal erfolgreich geschlossen wurde.

abstract Unit
onWriteCompleted(
    stream: BidirectionalStream!,
    info: UrlResponseInfo!,
    buffer: ByteBuffer!,
    endOfStream: Boolean
)

Wird aufgerufen, wenn der gesamte an write() übergebene ByteBuffer gesendet wurde.

Öffentliche Konstruktoren

Callback

Callback()

Öffentliche Funktionen

onCanceled

fun onCanceled(stream: BidirectionalStream!, info: UrlResponseInfo!): Unit

Wird aufgerufen, wenn der Stream über cancel abgebrochen wurde. Nach dem Aufruf werden keine weiteren BidirectionalStream.Callback-Methoden aufgerufen. Bei der Standardimplementierung wird keine Aktion ausgeführt.

Parameter
stream: BidirectionalStream!

Der Stream, der abgebrochen wurde

info: UrlResponseInfo!

Die Antwortinformationen. Kann null sein, wenn keine Antwort empfangen wurde.

onFailed

abstract fun onFailed(
    stream: BidirectionalStream!,
    info: UrlResponseInfo!,
    error: CronetException!
): Unit

Wird aufgerufen, wenn der Stream nach start aus irgendeinem Grund fehlgeschlagen ist. HTTP/2-Fehlercodes werden getCronetInternalErrorCode Codes zugeordnet. Nach dem Aufruf werden keine weiteren BidirectionalStream.Callback-Methoden aufgerufen.

Parameter
stream: BidirectionalStream!

Der Stream, der fehlgeschlagen ist

info: UrlResponseInfo!

Die Antwortinformationen. Kann null sein, wenn keine Antwort empfangen wurde.

error: CronetException!

Informationen zum Fehler

onReadCompleted

abstract fun onReadCompleted(
    stream: BidirectionalStream!,
    info: UrlResponseInfo!,
    buffer: ByteBuffer!,
    endOfStream: Boolean
): Unit

Wird aufgerufen, wenn Daten in den Puffer gelesen werden, der an read() übergeben wurde. Möglicherweise wird nur ein Teil des Puffers gefüllt. Rufen Sie read() auf, um mit dem Lesen fortzufahren. Er kann nach onResponseTrailersReceived() aufgerufen werden, wenn vor dem Empfang von Trailern noch Lesedaten ausstehen.

Parameter
stream: BidirectionalStream!

Der Stream, bei dem der Lesevorgang abgeschlossen wurde

info: UrlResponseInfo!

Die Antwortinformationen

buffer: ByteBuffer!

Der Puffer, der an read() übergeben wurde und jetzt die empfangenen Daten enthält. Das Limit des Puffers wird nicht geändert. Die Position des Puffers wird auf das Ende der empfangenen Daten gesetzt. Wenn die Position nicht aktualisiert wird, hat die Remote-Seite signalisiert, dass keine weiteren Daten gesendet werden.

endOfStream: Boolean

Bei „true“ sind dies die letzten gelesenen Daten, die Remote-Seite sendet keine weiteren Daten und die Leseseite wird geschlossen.

onResponseHeadersReceived

abstract fun onResponseHeadersReceived(
    stream: BidirectionalStream!,
    info: UrlResponseInfo!
): Unit

Wird aufgerufen, wenn die ersten Antwortheader empfangen werden. Header sind über info.getAllHeaders() verfügbar. Der Consumer kann read() aufrufen, um mit dem Lesen zu beginnen. Der Consumer kann write() aufrufen, um mit dem Schreiben zu beginnen oder den Stream zu schließen.

Parameter
stream: BidirectionalStream!

Der Stream, bei dem Antwortheader empfangen wurden.

info: UrlResponseInfo!

Die Antwortinformationen.

onResponseTrailersReceived

fun onResponseTrailersReceived(
    stream: BidirectionalStream!,
    info: UrlResponseInfo!,
    trailers: UrlResponseInfo.HeaderBlock!
): Unit

Wird aufgerufen, wenn Trailer vor dem Schließen des Streams empfangen werden. Wird nur aufgerufen, wenn der Server Trailer sendet, was nicht immer der Fall ist. Kann aufgerufen werden, wenn sich noch Lesedaten im lokalen Puffer befinden. Bei der Standardimplementierung wird keine Aktion ausgeführt.

Parameter
stream: BidirectionalStream!

Der Stream, bei dem Antworttrailer empfangen wurden

info: UrlResponseInfo!

Die Antwortinformationen

trailers: UrlResponseInfo.HeaderBlock!

Die empfangenen Trailer

onStreamReady

abstract fun onStreamReady(stream: BidirectionalStream!): Unit

Wird aufgerufen, wenn der Stream zum Lesen und Schreiben bereit ist. Der Consumer kann read() aufrufen, um mit dem Lesen von Daten zu beginnen. Der Consumer kann write() aufrufen, um mit dem Schreiben von Daten zu beginnen.

Parameter
stream: BidirectionalStream!

Der Stream, der bereit ist.

onSucceeded

abstract fun onSucceeded(stream: BidirectionalStream!, info: UrlResponseInfo!): Unit

Wird aufgerufen, wenn keine Daten gelesen oder geschrieben werden müssen und der Stream remote und lokal erfolgreich geschlossen wurde. Nach dem Aufruf werden keine weiteren BidirectionalStream.Callback-Methoden aufgerufen.

Parameter
stream: BidirectionalStream!

Der Stream, der erfolgreich geschlossen wurde

info: UrlResponseInfo!

Die Antwortinformationen

onWriteCompleted

abstract fun onWriteCompleted(
    stream: BidirectionalStream!,
    info: UrlResponseInfo!,
    buffer: ByteBuffer!,
    endOfStream: Boolean
): Unit

Wird aufgerufen, wenn der gesamte an write() übergebene ByteBuffer gesendet wurde. Die Position des Puffers wird so aktualisiert, dass sie mit dem Limit des Puffers übereinstimmt. Das Limit des Puffers wird nicht geändert. Rufen Sie write() auf, um mit dem Schreiben fortzufahren.

Parameter
stream: BidirectionalStream!

Der Stream, bei dem der Schreibvorgang abgeschlossen wurde

info: UrlResponseInfo!

Die Antwortinformationen

buffer: ByteBuffer!

Der Puffer, der an write() übergeben wurde. Die Position des Puffers wird auf das Limit des Puffers gesetzt. Das Limit des Puffers wird nicht geändert.

endOfStream: Boolean

Das endOfStream-Flag, das an das entsprechende write() übergeben wurde. Bei „true“ wird die Schreibseite geschlossen.