ErrnoException


public final class ErrnoException
extends Exception

java.lang.Object
   ↳ java.lang.Throwable
     ↳ java.lang.Exception
       ↳ android.system.ErrnoException


A checked exception thrown when Os methods fail. This exception contains the native errno value, for comparison against the constants in OsConstants, should sophisticated callers need to adjust their behavior based on the exact failure.

Summary

Fields

public final int errno

The errno value, for comparison with the E constants in OsConstants.

Public constructors

ErrnoException(String functionName, int errno)

Constructs an instance with the given function name and errno value.

ErrnoException(String functionName, int errno, Throwable cause)

Constructs an instance with the given function name, errno value, and cause.

Public methods

String getMessage()

Converts the stashed function name and errno value to a human-readable string.

IOException rethrowAsIOException()

Throws an IOException with a message based on getMessage() and with this instance as the cause.

SocketException rethrowAsSocketException()

Throws a SocketException with a message based on getMessage() and with this instance as the cause.

Inherited methods

Fields

errno

Added in API level 21
public final int errno

The errno value, for comparison with the E constants in OsConstants.

Public constructors

ErrnoException

Added in API level 21
public ErrnoException (String functionName, 
                int errno)

Constructs an instance with the given function name and errno value.

Parameters
functionName String

errno int

ErrnoException

Added in API level 21
public ErrnoException (String functionName, 
                int errno, 
                Throwable cause)

Constructs an instance with the given function name, errno value, and cause.

Parameters
functionName String

errno int

cause Throwable

Public methods

getMessage

Added in API level 21
public String getMessage ()

Converts the stashed function name and errno value to a human-readable string. We do this here rather than in the constructor so that callers only pay for this if they need it.

Returns
String the detail message string of this Throwable instance (which may be null).

rethrowAsIOException

Added in API level 30
public IOException rethrowAsIOException ()

Throws an IOException with a message based on getMessage() and with this instance as the cause.

This method always terminates by throwing the exception. Callers can write throw e.rethrowAsIOException() to make that clear to the compiler.

Returns
IOException This value cannot be null.

Throws
IOException

rethrowAsSocketException

Added in API level 30
public SocketException rethrowAsSocketException ()

Throws a SocketException with a message based on getMessage() and with this instance as the cause.

This method always terminates by throwing the exception. Callers can write throw e.rethrowAsIOException() to make that clear to the compiler.

Returns
SocketException This value cannot be null.

Throws
SocketException