NetworkException


public abstract class NetworkException
extends HttpException

java.lang.Object
   ↳ java.lang.Throwable
     ↳ java.lang.Exception
       ↳ java.io.IOException
         ↳ android.net.http.HttpException
           ↳ android.net.http.NetworkException
QuicException Subclass of NetworkException which contains a detailed QUIC error code from QuicErrorCode


Exception passed to UrlRequest.Callback.onFailed() when the HTTP stack fails to process a network request. In this case getErrorCode() can be used to get more information about the specific type of failure.

Summary

Constants

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.

Public constructors

NetworkException(String message, Throwable cause)

Constructs an exception that is caused by a network error.

Public methods

abstract int getErrorCode()

Returns error code, one of ERROR_*.

abstract boolean isImmediatelyRetryable()

Returns true if retrying this request right away might succeed, false otherwise.

Inherited methods

final void addSuppressed(Throwable exception)

Appends the specified exception to the exceptions that were suppressed in order to deliver this exception.

Throwable fillInStackTrace()

Fills in the execution stack trace.

Throwable getCause()

Returns the cause of this throwable or null if the cause is nonexistent or unknown.

String getLocalizedMessage()

Creates a localized description of this throwable.

String getMessage()

Returns the detail message string of this throwable.

StackTraceElement[] getStackTrace()

Provides programmatic access to the stack trace information printed by printStackTrace().

final Throwable[] getSuppressed()

Returns an array containing all of the exceptions that were suppressed, typically by the try-with-resources statement, in order to deliver this exception.

Throwable initCause(Throwable cause)

Initializes the cause of this throwable to the specified value.

void printStackTrace()

Prints this throwable and its backtrace to the standard error stream.

void printStackTrace(PrintWriter s)

Prints this throwable and its backtrace to the specified print writer.

void printStackTrace(PrintStream s)

Prints this throwable and its backtrace to the specified print stream.

void setStackTrace(StackTraceElement[] stackTrace)

Sets the stack trace elements that will be returned by getStackTrace() and printed by printStackTrace() and related methods.

String toString()

Returns a short description of this throwable.

Object clone()

Creates and returns a copy of this object.

boolean equals(Object obj)

Indicates whether some other object is "equal to" this one.

void finalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

final Class<?> getClass()

Returns the runtime class of this Object.

int hashCode()

Returns a hash code value for the object.

final void notify()

Wakes up a single thread that is waiting on this object's monitor.

final void notifyAll()

Wakes up all threads that are waiting on this object's monitor.

String toString()

Returns a string representation of the object.

final void wait(long timeoutMillis, int nanos)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait(long timeoutMillis)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait()

Causes the current thread to wait until it is awakened, typically by being notified or interrupted.

Constants

ERROR_ADDRESS_UNREACHABLE

Added in API level 34
Also in S Extensions 7
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.

Constant Value: 9 (0x00000009)

ERROR_CONNECTION_CLOSED

Added in API level 34
Also in S Extensions 7
public static final int ERROR_CONNECTION_CLOSED

Error code indicating the connection was closed unexpectedly.

Constant Value: 5 (0x00000005)

ERROR_CONNECTION_REFUSED

Added in API level 34
Also in S Extensions 7
public static final int ERROR_CONNECTION_REFUSED

Error code indicating the connection attempt was refused.

Constant Value: 7 (0x00000007)

ERROR_CONNECTION_RESET

Added in API level 34
Also in S Extensions 7
public static final int ERROR_CONNECTION_RESET

Error code indicating the connection was unexpectedly reset.

Constant Value: 8 (0x00000008)

ERROR_CONNECTION_TIMED_OUT

Added in API level 34
Also in S Extensions 7
public static final int ERROR_CONNECTION_TIMED_OUT

Error code indicating the connection attempt timed out.

Constant Value: 6 (0x00000006)

ERROR_HOSTNAME_NOT_RESOLVED

Added in API level 34
Also in S Extensions 7
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.

Constant Value: 1 (0x00000001)

ERROR_INTERNET_DISCONNECTED

Added in API level 34
Also in S Extensions 7
public static final int ERROR_INTERNET_DISCONNECTED

Error code indicating the device was not connected to any network.

Constant Value: 2 (0x00000002)

ERROR_NETWORK_CHANGED

Added in API level 34
Also in S Extensions 7
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.

Constant Value: 3 (0x00000003)

ERROR_OTHER

Added in API level 34
Also in S Extensions 7
public static final int ERROR_OTHER

Error code indicating another type of error was encountered.

Constant Value: 11 (0x0000000b)

ERROR_QUIC_PROTOCOL_FAILED

Added in API level 34
Also in S Extensions 7
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.

Constant Value: 10 (0x0000000a)

ERROR_TIMED_OUT

Added in API level 34
Also in S Extensions 7
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.

Constant Value: 4 (0x00000004)

Public constructors

NetworkException

Added in API level 34
Also in S Extensions 7
public NetworkException (String message, 
                Throwable cause)

Constructs an exception that is caused by a network error.

Parameters
message String: explanation of failure. This value may be null.

cause Throwable: 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

getErrorCode

Added in API level 34
Also in S Extensions 7
public abstract int getErrorCode ()

Returns error code, one of ERROR_*.

Returns
int error code, one of ERROR_*.

isImmediatelyRetryable

Added in API level 34
Also in S Extensions 7
public abstract boolean isImmediatelyRetryable ()

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
boolean true if retrying this request right away might succeed, false otherwise.