BidirectionalStream.Callback

public abstract class BidirectionalStream.Callback


คลาส Callback ที่ใช้รับการเรียกกลับจาก BidirectionalStream

สรุป

เครื่องมือสร้างสาธารณะ

เมธอดสาธารณะ

void

เรียกใช้หากมีการยกเลิกสตรีมผ่าน cancel

abstract void
onFailed(
    BidirectionalStream stream,
    UrlResponseInfo info,
    CronetException error
)

เรียกใช้หากสตรีมล้มเหลวด้วยเหตุผลใดก็ตามหลังจาก start

abstract void
onReadCompleted(
    BidirectionalStream stream,
    UrlResponseInfo info,
    ByteBuffer buffer,
    boolean endOfStream
)

เรียกใช้เมื่อมีการอ่านข้อมูลลงในบัฟเฟอร์ที่ส่งไปยัง read()

abstract void

เรียกใช้เมื่อได้รับส่วนหัวการตอบกลับเริ่มต้น

void

เรียกใช้เมื่อได้รับเทรลเลอร์ก่อนปิดสตรีม

abstract void

เรียกใช้เมื่อสตรีมพร้อมสำหรับการอ่านและการเขียน

abstract void

เรียกใช้เมื่อไม่มีข้อมูลให้อ่านหรือเขียน และสตรีมปิดลงอย่างสำเร็จจากระยะไกลและในเครื่อง

abstract void
onWriteCompleted(
    BidirectionalStream stream,
    UrlResponseInfo info,
    ByteBuffer buffer,
    boolean endOfStream
)

เรียกใช้เมื่อส่ง ByteBuffer ทั้งหมดที่ส่งไปยัง write() แล้ว

เครื่องมือสร้างสาธารณะ

Callback

public Callback()

เมธอดสาธารณะ

onCanceled

public void onCanceled(BidirectionalStream stream, UrlResponseInfo info)

เรียกใช้หากมีการยกเลิกสตรีมผ่าน cancel เมื่อเรียกใช้แล้ว ระบบจะไม่เรียกใช้เมธอด BidirectionalStream.Callback เพิ่มเติม การใช้งานเริ่มต้นจะไม่มีการดำเนินการใดๆ

พารามิเตอร์
BidirectionalStream stream

สตรีมที่ถูกยกเลิก

UrlResponseInfo info

ข้อมูลการตอบกลับ อาจเป็น null หากไม่ได้รับการตอบกลับ

onFailed

public abstract void onFailed(
    BidirectionalStream stream,
    UrlResponseInfo info,
    CronetException error
)

เรียกใช้หากสตรีมล้มเหลวด้วยเหตุผลใดก็ตามหลังจาก start รหัสข้อผิดพลาด HTTP/2 จะแมปกับรหัส getCronetInternalErrorCode เมื่อเรียกใช้แล้ว ระบบจะไม่เรียกใช้เมธอด BidirectionalStream.Callback เพิ่มเติม

พารามิเตอร์
BidirectionalStream stream

สตรีมที่ล้มเหลว

UrlResponseInfo info

ข้อมูลการตอบกลับ อาจเป็น null หากไม่ได้รับการตอบกลับ

CronetException error

ข้อมูลเกี่ยวกับความล้มเหลว

onReadCompleted

public abstract void onReadCompleted(
    BidirectionalStream stream,
    UrlResponseInfo info,
    ByteBuffer buffer,
    boolean endOfStream
)

เรียกใช้เมื่อมีการอ่านข้อมูลลงในบัฟเฟอร์ที่ส่งไปยัง read() ระบบอาจป้อนข้อมูลลงในบัฟเฟอร์เพียงบางส่วน หากต้องการอ่านต่อ ให้เรียกใช้ read() ระบบอาจเรียกใช้หลังจาก onResponseTrailersReceived() หากมีข้อมูลที่รออ่านอยู่ก่อนที่จะได้รับเทรลเลอร์

พารามิเตอร์
BidirectionalStream stream

สตรีมที่อ่านเสร็จสมบูรณ์

UrlResponseInfo info

ข้อมูลการตอบกลับ

ByteBuffer buffer

บัฟเฟอร์ที่ส่งไปยัง read() ซึ่งตอนนี้มีข้อมูลที่ได้รับ ขีดจำกัดของบัฟเฟอร์จะไม่เปลี่ยนแปลง ตำแหน่งของบัฟเฟอร์จะตั้งค่าเป็นส่วนท้ายของข้อมูลที่ได้รับ หากตำแหน่งไม่ได้รับการอัปเดต หมายความว่าฝั่งระยะไกลได้ส่งสัญญาณว่าจะไม่ส่งข้อมูลเพิ่มเติม

boolean endOfStream

หากเป็นจริง แสดงว่านี่คือข้อมูลที่อ่านล่าสุด ฝั่งระยะไกลจะไม่ส่งข้อมูลเพิ่มเติม และฝั่งอ่านจะปิดลง

onResponseHeadersReceived

public abstract void onResponseHeadersReceived(
    BidirectionalStream stream,
    UrlResponseInfo info
)

เรียกใช้เมื่อได้รับส่วนหัวการตอบกลับเริ่มต้น ส่วนหัวจะพร้อมใช้งานจาก info.getAllHeaders() ผู้ใช้สามารถเรียกใช้ read() เพื่อเริ่มอ่าน ผู้ใช้สามารถเรียกใช้ write() เพื่อเริ่มเขียนหรือปิดสตรีม

พารามิเตอร์
BidirectionalStream stream

สตรีมที่ได้รับส่วนหัวการตอบกลับ

UrlResponseInfo info

ข้อมูลการตอบกลับ

onResponseTrailersReceived

public void onResponseTrailersReceived(
    BidirectionalStream stream,
    UrlResponseInfo info,
    UrlResponseInfo.HeaderBlock trailers
)

เรียกใช้เมื่อได้รับเทรลเลอร์ก่อนปิดสตรีม เรียกใช้เฉพาะเมื่อเซิร์ฟเวอร์ส่งเทรลเลอร์ ซึ่งอาจไม่ส่ง อาจเรียกใช้ขณะที่ยังมีข้อมูลที่อ่านเหลืออยู่ในบัฟเฟอร์ในเครื่อง การใช้งานเริ่มต้นจะไม่มีการดำเนินการใดๆ

พารามิเตอร์
BidirectionalStream stream

สตรีมที่ได้รับเทรลเลอร์การตอบกลับ

UrlResponseInfo info

ข้อมูลการตอบกลับ

UrlResponseInfo.HeaderBlock trailers

เทรลเลอร์ที่ได้รับ

onStreamReady

public abstract void onStreamReady(BidirectionalStream stream)

เรียกใช้เมื่อสตรีมพร้อมสำหรับการอ่านและการเขียน ผู้ใช้สามารถเรียกใช้ read() เพื่อเริ่มอ่านข้อมูล ผู้ใช้สามารถเรียกใช้ write() เพื่อเริ่มเขียนข้อมูล

พารามิเตอร์
BidirectionalStream stream

สตรีมที่พร้อมใช้งาน

onSucceeded

public abstract void onSucceeded(BidirectionalStream stream, UrlResponseInfo info)

เรียกใช้เมื่อไม่มีข้อมูลให้อ่านหรือเขียน และสตรีมปิดลงอย่างสำเร็จจากระยะไกลและในเครื่อง เมื่อเรียกใช้แล้ว ระบบจะไม่เรียกใช้เมธอด BidirectionalStream.Callback เพิ่มเติม

พารามิเตอร์
BidirectionalStream stream

สตรีมที่ปิดลงอย่างสำเร็จ

UrlResponseInfo info

ข้อมูลการตอบกลับ

onWriteCompleted

public abstract void onWriteCompleted(
    BidirectionalStream stream,
    UrlResponseInfo info,
    ByteBuffer buffer,
    boolean endOfStream
)

เรียกใช้เมื่อส่ง ByteBuffer ทั้งหมดที่ส่งไปยัง write() แล้ว ตำแหน่งของบัฟเฟอร์จะได้รับการอัปเดตให้เหมือนกับขีดจำกัดของบัฟเฟอร์ ขีดจำกัดของบัฟเฟอร์จะไม่เปลี่ยนแปลง หากต้องการเขียนต่อ ให้เรียกใช้ write()

พารามิเตอร์
BidirectionalStream stream

สตรีมที่เขียนเสร็จสมบูรณ์

UrlResponseInfo info

ข้อมูลการตอบกลับ

ByteBuffer buffer

บัฟเฟอร์ที่ส่งไปยัง write() ตำแหน่งของบัฟเฟอร์จะตั้งค่าเป็นขีดจำกัดของบัฟเฟอร์ ขีดจำกัดของบัฟเฟอร์จะไม่เปลี่ยนแปลง

boolean endOfStream

แฟล็ก endOfStream ที่ส่งไปยัง write() ที่เกี่ยวข้อง หากเป็นจริง ฝั่งเขียนจะปิดลง