java.lang.Object
com.aoapps.lang.SysExits
POSIX-compatible process exit values.
From /usr/include/sysexits.h:
SYSEXITS.H -- Exit status codes for system programs.
This include file attempts to categorize possible error
exit statuses for system programs, notably delivermail
and the Berkeley network.
Error numbers begin at EX__BASE to reduce the possibility of
clashing with other exit statuses that random programs may
already return. The meaning of the codes is approximately
as follows:
EX_USAGE -- The command was used incorrectly, e.g., with
the wrong number of arguments, a bad flag, a bad
syntax in a parameter, or whatever.
EX_DATAERR -- The input data was incorrect in some way.
This should only be used for user's data & not
system files.
EX_NOINPUT -- An input file (not a system file) did not
exist or was not readable. This could also include
errors like "No message" to a mailer (if it cared
to catch it).
EX_NOUSER -- The user specified did not exist. This might
be used for mail addresses or remote logins.
EX_NOHOST -- The host specified did not exist. This is used
in mail addresses or network requests.
EX_UNAVAILABLE -- A service is unavailable. This can occur
if a support program or file does not exist. This
can also be used as a catchall message when something
you wanted to do doesn't work, but you don't know
why.
EX_SOFTWARE -- An internal software error has been detected.
This should be limited to non-operating system related
errors as possible.
EX_OSERR -- An operating system error has been detected.
This is intended to be used for such things as "cannot
fork", "cannot create pipe", or the like. It includes
things like getuid returning a user that does not
exist in the passwd file.
EX_OSFILE -- Some system file (e.g., /etc/passwd, /etc/utmp,
etc.) does not exist, cannot be opened, or has some
sort of error (e.g., syntax error).
EX_CANTCREAT -- A (user specified) output file cannot be
created.
EX_IOERR -- An error occurred while doing I/O on some file.
EX_TEMPFAIL -- temporary failure, indicating something that
is not really an error. In sendmail, this means
that a mailer (e.g.) could not create a connection,
and the request should be reattempted later.
EX_PROTOCOL -- the remote system returned something that
was "not possible" during a protocol exchange.
EX_NOPERM -- You did not have sufficient permission to
perform the operation. This is not intended for
file system problems, which should use NOINPUT or
CANTCREAT, but rather for higher level permissions.-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intbase value for error messages.static final intmaximum listed value.static final intcan't create (user) output file.static final intconfiguration error.static final intdata format error.static final intinput/output error.static final inthost name unknown.static final intcannot open input.static final intpermission denied.static final intaddressee unknown.static final intsuccessful termination.static final intsystem error (e.g., can't fork).static final intcritical OS file missing.static final intremote error in protocol.static final intinternal software error.static final inttemp failure; user is invited to retry.static final intservice unavailable.static final intcommand line usage error. -
Method Summary
Modifier and TypeMethodDescriptionstatic intGets a sysexit value for common exception types.
-
Field Details
-
EX_OK
public static final int EX_OKsuccessful termination.- See Also:
-
EX__BASE
public static final int EX__BASEbase value for error messages.- See Also:
-
EX_USAGE
public static final int EX_USAGEcommand line usage error.- See Also:
-
EX_DATAERR
public static final int EX_DATAERRdata format error.- See Also:
-
EX_NOINPUT
public static final int EX_NOINPUTcannot open input.- See Also:
-
EX_NOUSER
public static final int EX_NOUSERaddressee unknown.- See Also:
-
EX_NOHOST
public static final int EX_NOHOSThost name unknown.- See Also:
-
EX_UNAVAILABLE
public static final int EX_UNAVAILABLEservice unavailable.- See Also:
-
EX_SOFTWARE
public static final int EX_SOFTWAREinternal software error.- See Also:
-
EX_OSERR
public static final int EX_OSERRsystem error (e.g., can't fork).- See Also:
-
EX_OSFILE
public static final int EX_OSFILEcritical OS file missing.- See Also:
-
EX_CANTCREAT
public static final int EX_CANTCREATcan't create (user) output file.- See Also:
-
EX_IOERR
public static final int EX_IOERRinput/output error.- See Also:
-
EX_TEMPFAIL
public static final int EX_TEMPFAILtemp failure; user is invited to retry.- See Also:
-
EX_PROTOCOL
public static final int EX_PROTOCOLremote error in protocol.- See Also:
-
EX_NOPERM
public static final int EX_NOPERMpermission denied.- See Also:
-
EX_CONFIG
public static final int EX_CONFIGconfiguration error.- See Also:
-
EX__MAX
public static final int EX__MAXmaximum listed value.- See Also:
-
-
Method Details
-
getSysExit
Gets a sysexit value for common exception types.- Returns:
- When
tis null, returnsEX_OK, otherwise returns a non-zero sys exit best matching the given throwable.
-
