| Known Direct Subclasses | 
| Known Indirect Subclasses | 
An implementation of UrlRequest.Callback that takes away the difficulty of managing the
 request lifecycle away, and automatically proceeds to read the response entirely.
Public Constructor Summary
Public Method Summary
| final void | 
                onCanceled(UrlRequest request, UrlResponseInfo info)
                
                 Invoked if request was canceled via  UrlRequest.cancel(). | 
| final void | 
                onFailed(UrlRequest request, UrlResponseInfo info, CronetException error)
                
                 Invoked if request failed for any reason after  UrlRequest.start(). | 
| final void | 
                onReadCompleted(UrlRequest request, UrlResponseInfo info, ByteBuffer byteBuffer)
                
                 Invoked whenever part of the response body has been read. | 
| final void | 
                onRedirectReceived(UrlRequest request, UrlResponseInfo info, String newLocationUrl)
                
                 Invoked whenever a redirect is encountered. | 
| final void | 
                onResponseStarted(UrlRequest request, UrlResponseInfo info)
                
                 Invoked when the final set of headers, after all redirects, is received. | 
| final void | 
                onSucceeded(UrlRequest request, UrlResponseInfo info)
                
                 Invoked when request is completed successfully. | 
Protected Method Summary
| abstract void | 
                onBodyChunkRead(UrlResponseInfo info, ByteBuffer bodyChunk)
                
                 Invoked whenever part of the response body has been read. | 
| abstract void | |
| abstract void | 
                onFailed(UrlResponseInfo info, CronetException exception)
                
                 Invoked if request failed for any reason after  UrlRequest.start(). | 
| abstract void | 
                onResponseStarted(UrlResponseInfo info)
                
                 Invoked when the final set of headers, after all redirects, is received. | 
| abstract void | |
| abstract boolean | 
                shouldFollowRedirect(UrlResponseInfo info, String newLocationUrl)
                
                 Invoked whenever a redirect is encountered. | 
Inherited Method Summary
Public Constructors
public ImplicitFlowControlCallback ()
Public Methods
public final void onCanceled (UrlRequest request, UrlResponseInfo info)
Invoked if request was canceled via UrlRequest.cancel(). Once invoked, no other
 UrlRequest.Callback methods will be invoked. Default implementation takes no action.
Parameters
| request | Request that was canceled. | 
|---|---|
| info | Response information. May be nullif no response was received. | 
public final void onFailed (UrlRequest request, UrlResponseInfo info, CronetException error)
Invoked if request failed for any reason after UrlRequest.start(). Once invoked, no
 other UrlRequest.Callback methods will be invoked. error provides information about
 the failure.
Parameters
| request | Request that failed. | 
|---|---|
| info | Response information. May be nullif no response was received. | 
| error | information about error. | 
public final void onReadCompleted (UrlRequest request, UrlResponseInfo info, ByteBuffer byteBuffer)
Invoked whenever part of the response body has been read. Only part of the buffer may be
 populated, even if the entire response body has not yet been consumed.
 With the exception of onCanceled(), no other UrlRequest.Callback
 method will be invoked for the request, including onSucceeded() and onFailed(), until UrlRequest.read() is called to attempt to continue reading the response body.
Parameters
| request | Request that received data. | 
|---|---|
| info | Response information. | 
| byteBuffer | The buffer that was passed in to UrlRequest.read(),
 now containing the received data. The buffer's position is updated to the end of the
 received data. The buffer's limit is not changed. | 
Throws
| Exception | 
|---|
public final void onRedirectReceived (UrlRequest request, UrlResponseInfo info, String newLocationUrl)
Invoked whenever a redirect is encountered. This will only be invoked between the call to
 UrlRequest.start() and onResponseStarted(). The
 body of the redirect response, if it has one, will be ignored.
 The redirect will not be followed until the URLRequest's UrlRequest.followRedirect() method is called, either synchronously or asynchronously.
Parameters
| request | Request being redirected. | 
|---|---|
| info | Response information. | 
| newLocationUrl | Location where request is redirected. | 
Throws
| Exception | 
|---|
public final void onResponseStarted (UrlRequest request, UrlResponseInfo info)
Invoked when the final set of headers, after all redirects, is received. Will only be
 invoked once for each request.
 With the exception of onCanceled(), no other UrlRequest.Callback
 method will be invoked for the request, including onSucceeded() and onFailed(), until UrlRequest.read() is called to attempt to start reading the response body.
Parameters
| request | Request that started to get response. | 
|---|---|
| info | Response information. | 
Throws
| Exception | 
|---|
public final void onSucceeded (UrlRequest request, UrlResponseInfo info)
Invoked when request is completed successfully. Once invoked, no other UrlRequest.Callback
 methods will be invoked.
Parameters
| request | Request that succeeded. | 
|---|---|
| info | Response information. | 
Protected Methods
protected abstract void onBodyChunkRead (UrlResponseInfo info, ByteBuffer bodyChunk)
Invoked whenever part of the response body has been read. Only part of the buffer may be populated, even if the entire response body has not yet been consumed. The buffer is ready for reading. Buffers are reused internally so the implementing class shouldn't store the buffer or use it anywhere else than in the implementation of this method.
Parameters
| info | Response information. | 
|---|---|
| bodyChunk | The buffer that contains the received data, flipped for reading. | 
Throws
| Exception | if an error occurs while processing a read completion. onFailed(UrlRequest, UrlResponseInfo, CronetException)will
 be called with the thrown exception set as the cause of theCallbackException. | 
|---|
protected abstract void onCanceled (UrlResponseInfo info)
Invoked if request was canceled via UrlRequest.cancel(). Once invoked, no other UrlRequest.Callback methods will be invoked.
Parameters
| info | Response information. May be nullif no response was received. | 
|---|
protected abstract void onFailed (UrlResponseInfo info, CronetException exception)
Invoked if request failed for any reason after UrlRequest.start(). Once invoked, no
 other
 UrlRequest.Callback methods will be invoked. error provides information about
 the failure.
Parameters
| info | Response information. May be nullif no response was received. | 
|---|---|
| exception | information about error. | 
protected abstract void onResponseStarted (UrlResponseInfo info)
Invoked when the final set of headers, after all redirects, is received. Will only be invoked once for each request. It's guaranteed that Cronet doesn't start reading the body until this method returns.
Parameters
| info | Response information. | 
|---|
Throws
| Exception | if an error occurs while processing response start. onFailed(UrlRequest, UrlResponseInfo, CronetException)will
         be
 called with the thrown exception set as the cause of theCallbackException. | 
|---|
protected abstract void onSucceeded (UrlResponseInfo info)
Invoked when request is completed successfully. Once invoked, no other UrlRequest.Callback methods will be invoked.
Parameters
| info | Response information. | 
|---|
protected abstract boolean shouldFollowRedirect (UrlResponseInfo info, String newLocationUrl)
Invoked whenever a redirect is encountered. This will only be invoked between the call to
 UrlRequest.start() and onResponseStarted(). The body of the redirect response, if it has one, will be ignored.
Parameters
| info | Response information. | 
|---|---|
| newLocationUrl | Location where request is redirected. | 
Returns
- true if the redirect should be followed, false if the request should be canceled.
Throws
| Exception | if an error occurs while processing a redirect. onFailed(UrlRequest, UrlResponseInfo, CronetException)will be
 called with the thrown exception set as the cause of theCallbackException. | 
|---|
