InMemoryTransformCronetCallback

public abstract class InMemoryTransformCronetCallback<T> extends ImplicitFlowControlCallback

इस क्लास से सीधे इनहेरिट करने वाली ज्ञात सबक्लास
ByteArrayCronetCallback

यह InMemoryTransformCronetCallback का एक खास वर्शन है. यह बिना किसी बदलाव के, बॉडी बाइट को वापस भेजता है.

JsonCronetCallback

यह InMemoryTransformCronetCallback का एक खास वर्शन है, जो रिस्पॉन्स बॉडी को JSON के तौर पर इंटरप्रेट करता है.

StringCronetCallback

यह InMemoryTransformCronetCallback का एक खास वर्शन है, जो जवाब के मुख्य हिस्से को स्ट्रिंग के तौर पर दिखाता है.


यह एक ऐब्स्ट्रैक्ट क्रोनेट कॉलबैक है. यह पूरे मैसेज को मेमोरी में सेव करता है. साथ ही, एचटीटीपी अनुरोध भेजने वाले को वापस भेजने से पहले, मैसेज को डीसीरियलाइज़ भी कर सकता है.

अनुरोध करने वाला व्यक्ति, अनुरोध के बारे में अपडेट पाने के लिए सदस्यता ले सकता है. इसके लिए, उसे कॉलबैक पर mListeners जोड़ने होंगे. जब अनुरोध टर्मिनल की स्थिति में पहुंच जाता है, तो mListeners को जोड़ने के क्रम में सूचना दी जाती है.

पैरामीटर
<T>

जवाब के मुख्य हिस्से का टाइप

खास जानकारी

सार्वजनिक कंस्ट्रक्टर

पब्लिक मेथड

ImplicitFlowControlCallback

यह फ़ंक्शन, पूरा होने पर सूचना पाने की सुविधा जोड़ता है.

प्रोटेक्टेड मेथड

final void

जब जवाब के मुख्य हिस्से का कुछ हिस्सा पढ़ लिया जाता है, तब इस फ़ंक्शन को कॉल किया जाता है.

final void

अगर cancel के ज़रिए अनुरोध रद्द किया गया है, तो इस फ़ंक्शन को कॉल किया जाता है.

final void

start के बाद, किसी भी वजह से अनुरोध पूरा न होने पर इस फ़ंक्शन को कॉल किया जाता है.

final void

इस फ़ंक्शन को तब शुरू किया जाता है, जब सभी रीडायरेक्ट के बाद हेडर का फ़ाइनल सेट मिल जाता है.

final void

इस फ़ंक्शन को तब कॉल किया जाता है, जब अनुरोध पूरा हो जाता है.

abstract T
transformBodyBytes(UrlResponseInfo info, byte[] bodyBytes)

यह फ़ंक्शन, पूरे शरीर के डेटा को उपयोगकर्ता के हिसाब से तय किए गए ऑब्जेक्ट में बदलता है (डीसीरियलाइज़ करता है).

इनहेरिट किए गए तरीके

org.chromium.net.apihelpers.ImplicitFlowControlCallback से
final void

अगर cancel के ज़रिए अनुरोध रद्द किया गया है, तो इस फ़ंक्शन को कॉल किया जाता है.

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

start के बाद, किसी भी वजह से अनुरोध पूरा न होने पर इस फ़ंक्शन को कॉल किया जाता है.

final void
onReadCompleted(
    UrlRequest request,
    UrlResponseInfo info,
    ByteBuffer byteBuffer
)

जब जवाब के मुख्य हिस्से का कुछ हिस्सा पढ़ लिया जाता है, तब इस फ़ंक्शन को कॉल किया जाता है.

final void
onRedirectReceived(
    UrlRequest request,
    UrlResponseInfo info,
    String newLocationUrl
)

जब भी कोई रीडायरेक्ट मिलता है, तब इस फ़ंक्शन को कॉल किया जाता है.

final void

इस फ़ंक्शन को तब शुरू किया जाता है, जब सभी रीडायरेक्ट के बाद हेडर का फ़ाइनल सेट मिल जाता है.

final void

इस फ़ंक्शन को तब कॉल किया जाता है, जब अनुरोध पूरा हो जाता है.

abstract boolean

जब भी कोई रीडायरेक्ट मिलता है, तब इस फ़ंक्शन को कॉल किया जाता है.

From org.chromium.net.UrlRequest.Callback
abstract void
onFailed(
    UrlRequest request,
    UrlResponseInfo info,
    CronetException error
)

start के बाद, किसी भी वजह से अनुरोध पूरा न होने पर इस फ़ंक्शन को कॉल किया जाता है.

abstract void
onReadCompleted(
    UrlRequest request,
    UrlResponseInfo info,
    ByteBuffer byteBuffer
)

जब जवाब के मुख्य हिस्से का कुछ हिस्सा पढ़ लिया जाता है, तब इस फ़ंक्शन को कॉल किया जाता है.

abstract void
onRedirectReceived(
    UrlRequest request,
    UrlResponseInfo info,
    String newLocationUrl
)

जब भी कोई रीडायरेक्ट मिलता है, तब इस फ़ंक्शन को कॉल किया जाता है.

सार्वजनिक कंस्ट्रक्टर

InMemoryTransformCronetCallback

public InMemoryTransformCronetCallback()

पब्लिक मेथड

addCompletionListener

public ImplicitFlowControlCallback addCompletionListener(CronetRequestCompletionListener<T> listener)

यह फ़ंक्शन, पूरा होने पर सूचना पाने की सुविधा जोड़ता है. जब अनुरोध टर्मिनल स्थिति में पहुंच जाता है, तो सभी श्रोताओं को इसकी सूचना दी जाती है. सूचना, अनुरोध में शामिल होने के क्रम के हिसाब से दी जाती है. अगर किसी लिसनर को एक से ज़्यादा बार जोड़ा जाता है, तो उसे सिर्फ़ एक बार कॉल किया जाएगा. यह कॉल, लिसनर को पहली बार जोड़े जाने के हिसाब से किया जाएगा.

इन्हें भी देखें
CronetRequestCompletionListener

प्रोटेक्टेड मेथड

onBodyChunkRead

protected final void onBodyChunkRead(UrlResponseInfo info, ByteBuffer bodyChunk)

जब जवाब के मुख्य हिस्से का कुछ हिस्सा पढ़ लिया जाता है, तब इस फ़ंक्शन को कॉल किया जाता है. ऐसा हो सकता है कि बफ़र का सिर्फ़ कुछ हिस्सा भरा गया हो, भले ही पूरे जवाब का मुख्य हिस्सा अभी तक इस्तेमाल न किया गया हो. बफ़र पढ़ने के लिए तैयार है. बफ़र का फिर से इस्तेमाल किया जाता है. इसलिए, लागू करने वाली क्लास को बफ़र को सेव नहीं करना चाहिए. साथ ही, इस तरीके को लागू करने के अलावा, इसे कहीं और इस्तेमाल नहीं करना चाहिए.

पैरामीटर
UrlResponseInfo info

जवाब की जानकारी.

ByteBuffer bodyChunk

यह बफ़र, मिले हुए डेटा को सेव करता है. इसे पढ़ने के लिए फ़्लिप किया जाता है.

थ्रो
java.lang.Exception

अगर पढ़ने की प्रोसेस पूरी करते समय कोई गड़बड़ी होती है, तो onFailed को कॉल किया जाएगा. इसमें थ्रो किए गए अपवाद को CallbackException की वजह के तौर पर सेट किया जाएगा.

onCanceled

protected final void onCanceled(@Nullable UrlResponseInfo info)

अगर cancel के ज़रिए अनुरोध रद्द किया गया है, तो इस फ़ंक्शन को कॉल किया जाता है. इस तरीके को लागू करने के बाद, कोई अन्य UrlRequest.Callback तरीका लागू नहीं किया जाएगा.

पैरामीटर
@Nullable UrlResponseInfo info

जवाब की जानकारी. अगर कोई जवाब नहीं मिला, तो यह null हो सकता है.

onFailed

protected final void onFailed(@Nullable UrlResponseInfo info, CronetException exception)

start के बाद, किसी भी वजह से अनुरोध पूरा न होने पर इस फ़ंक्शन को कॉल किया जाता है. इस तरीके को लागू करने के बाद, कोई अन्य UrlRequest.Callback तरीका लागू नहीं किया जाएगा. error से, फ़ेल होने की वजह के बारे में जानकारी मिलती है.

पैरामीटर
@Nullable UrlResponseInfo info

जवाब की जानकारी. अगर कोई जवाब नहीं मिला, तो यह null हो सकता है.

CronetException exception

गड़बड़ी के बारे में जानकारी.

onResponseStarted

protected final void onResponseStarted(UrlResponseInfo info)

इस फ़ंक्शन को तब शुरू किया जाता है, जब सभी रीडायरेक्ट के बाद हेडर का फ़ाइनल सेट मिल जाता है. हर अनुरोध के लिए, इस फ़ंक्शन को सिर्फ़ एक बार कॉल किया जाएगा. इस बात की गारंटी है कि जब तक यह तरीका काम नहीं करता, तब तक Cronet बॉडी को पढ़ना शुरू नहीं करता.

पैरामीटर
UrlResponseInfo info

जवाब की जानकारी.

थ्रो
java.lang.Exception

अगर जवाब को प्रोसेस करने के दौरान कोई गड़बड़ी होती है, तो onFailed को कॉल किया जाएगा. इसमें थ्रो किए गए अपवाद को CallbackException की वजह के तौर पर सेट किया जाएगा.

onSucceeded

protected final void onSucceeded(UrlResponseInfo info)

इस फ़ंक्शन को तब कॉल किया जाता है, जब अनुरोध पूरा हो जाता है. इस तरीके को लागू करने के बाद, कोई अन्य UrlRequest.Callback तरीका लागू नहीं किया जाएगा.

पैरामीटर
UrlResponseInfo info

जवाब की जानकारी.

transformBodyBytes

protected abstract T transformBodyBytes(UrlResponseInfo info, byte[] bodyBytes)

यह फ़ंक्शन, पूरे शरीर के डेटा को उपयोगकर्ता के हिसाब से तय किए गए ऑब्जेक्ट में बदलता है (डीसीरियलाइज़ करता है).

यह माना जाता है कि लागू करने वाली क्लास, एज केस (जैसे कि खाली और खराब फ़ॉर्मैट वाले मुख्य हिस्से) को सही तरीके से हैंडल करती हैं. Cronet, ऑब्जेक्ट की जांच नहीं करता है. यह उन्हें (या किसी भी अपवाद को) अनुरोध करने वाले व्यक्ति को भेज देता है.