Known Direct Subclasses |
Exception passed to UrlRequest.Callback.onFailed()
when
Cronet fails to process a network request. In this case getErrorCode()
and getCronetInternalErrorCode()
can be used to get more information about the specific type of
failure. If getErrorCode()
returns ERROR_QUIC_PROTOCOL_FAILED
, this exception can
be cast to a QuicException
which can provide further details.
Constant Summary
int | ERROR_ADDRESS_UNREACHABLE | Error code indicating the IP address being contacted is unreachable, meaning there is no route to the specified host or network. |
int | ERROR_CONNECTION_CLOSED | Error code indicating the connection was closed unexpectedly. |
int | ERROR_CONNECTION_REFUSED | Error code indicating the connection attempt was refused. |
int | ERROR_CONNECTION_RESET | Error code indicating the connection was unexpectedly reset. |
int | ERROR_CONNECTION_TIMED_OUT | Error code indicating the connection attempt timed out. |
int | ERROR_HOSTNAME_NOT_RESOLVED | Error code indicating the host being sent the request could not be resolved to an IP address. |
int | ERROR_INTERNET_DISCONNECTED | Error code indicating the device was not connected to any network. |
int | ERROR_NETWORK_CHANGED | Error code indicating that as the request was processed the network configuration changed. |
int | ERROR_OTHER | Error code indicating another type of error was encountered. |
int | ERROR_QUIC_PROTOCOL_FAILED | Error code indicating an error related to the QUIC protocol. |
int | ERROR_TIMED_OUT | Error code indicating a timeout expired. |
Protected Constructor Summary
NetworkException(String message, Throwable cause)
Constructs an exception that is caused by a network error.
|
Public Method Summary
abstract int |
getCronetInternalErrorCode()
Returns a Cronet internal error code.
|
abstract int |
getErrorCode()
Returns error code, one of
ERROR_* . |
abstract boolean |
immediatelyRetryable()
Returns
true if retrying this request right away might succeed, false
otherwise. |
Inherited Method Summary
Constants
public static final int ERROR_ADDRESS_UNREACHABLE
Error code indicating the IP address being contacted is unreachable, meaning there is no route to the specified host or network.
public static final int ERROR_CONNECTION_CLOSED
Error code indicating the connection was closed unexpectedly.
public static final int ERROR_CONNECTION_REFUSED
Error code indicating the connection attempt was refused.
public static final int ERROR_CONNECTION_RESET
Error code indicating the connection was unexpectedly reset.
public static final int ERROR_CONNECTION_TIMED_OUT
Error code indicating the connection attempt timed out.
public static final int ERROR_HOSTNAME_NOT_RESOLVED
Error code indicating the host being sent the request could not be resolved to an IP address.
public static final int ERROR_INTERNET_DISCONNECTED
Error code indicating the device was not connected to any network.
public static final int ERROR_NETWORK_CHANGED
Error code indicating that as the request was processed the network configuration changed.
When
getErrorCode()
returns this code, this exception may be cast to QuicException
for more information if QUIC protocol is used.
public static final int ERROR_OTHER
Error code indicating another type of error was encountered. getCronetInternalErrorCode()
can be consulted to get a more specific cause.
public static final int ERROR_QUIC_PROTOCOL_FAILED
Error code indicating an error related to the
QUIC protocol. When getErrorCode()
returns this code, this exception can be cast
to QuicException
for more information.
public static final int ERROR_TIMED_OUT
Error code indicating a timeout expired. Timeouts expiring while attempting to connect will
be reported as the more specific ERROR_CONNECTION_TIMED_OUT
.
Protected Constructors
protected NetworkException (String message, Throwable cause)
Constructs an exception that is caused by a network error.
Parameters
message | explanation of failure. |
---|---|
cause | the cause (which is saved for later retrieval by the getCause() method). A null value is permitted, and indicates
that the cause is nonexistent or unknown.
|
Public Methods
public abstract int getCronetInternalErrorCode ()
Returns a Cronet internal error code. This may provide more specific error diagnosis than
getErrorCode()
, but the constant values are not exposed to Java and may change over
time. See
here for the latest list of values.
Returns
- Cronet internal error code.
public abstract int getErrorCode ()
public abstract boolean immediatelyRetryable ()
Returns true
if retrying this request right away might succeed, false
otherwise. For example returns true
when getErrorCode()
returns ERROR_NETWORK_CHANGED
because trying the request might succeed using the new network
configuration, but false
when getErrorCode()
returns ERROR_INTERNET_DISCONNECTED
because retrying the request right away will encounter the same
failure (instead retrying should be delayed until device regains network connectivity).
Returns
true
if retrying this request right away might succeed,false
otherwise.