Package org.globus.ftp.exception

# Class FTPException

java.lang.Object
java.lang.Throwable
java.lang.Exception
org.globus.ftp.exception.FTPException

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `ClientException`, `DataChannelException`, `FTPReplyParseException`, `PerfMarkerException`, `ServerException`, `UnexpectedReplyCodeException`

public class FTPException extends Exception
Most exceptions used by ftp package are subclasses of FTPException and inherit its features:

- exception code can be used to more precisely identify the problem. Exception codes are defined within each exception class (look at the source code). For example, in ClientException, code 8 (ClientException.BAD_MODE) indicates that client refused operation because of bad transfer mode, while code 13 (ClientException.BAD_TYPE) indicates that the same thing was caused by bad transfer type. To programmatically retrieve the exception code, use exception.getCode().
- exception nesting can be used to track the root of the exceptions that come from lower software layers. Use getRootCause().

See Also:
  - Serialized Form

## Field Summary

Fields
Modifier and Type
Field
Description
`protected Exception`
`cause`
`protected int`
`code`
`protected String`
`customMessage`
`static final int`
`UNSPECIFIED`

## Constructor Summary

Constructors
Constructor
Description
`FTPException(int code)`
`FTPException(int code, String message)`

## Method Summary

Modifier and Type
Method
Description
`int`
`getCode()`
`String`
`getCodeExplanation(int code)`
`String`
`getCustomMessage()`
`String`
`getMessage()`
`Exception`
`getRootCause()`
Retrieve the nested lower layer exception.
`void`
`printStackTrace()`
`void`
`printStackTrace(PrintStream ps)`
`void`
`printStackTrace(PrintWriter pw)`
`void`
`setCode(int c)`
`void`
`setCustomMessage(String m)`
`void`
`setRootCause(Exception c)`
`String`
`toString()`

### Methods inherited from class java.lang.Throwable

`addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, setStackTrace`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Field Details

### UNSPECIFIED

public static final int UNSPECIFIED

See Also:
  - Constant Field Values

### code

protected int code

### cause

protected Exception cause

### customMessage

protected String customMessage

## Constructor Details

### FTPException

public FTPException(int code, String message)

### FTPException

public FTPException(int code)

## Method Details

### getCodeExplanation

public String getCodeExplanation(int code)

### setRootCause

public void setRootCause(Exception c)

### getRootCause

public Exception getRootCause()
Retrieve the nested lower layer exception.

### setCode

public void setCode(int c)

### getCode

public int getCode()

### setCustomMessage

public void setCustomMessage(String m)

### getCustomMessage

public String getCustomMessage()

### getMessage

public String getMessage()

Overrides:
  `getMessage` in class `Throwable`

### toString

public String toString()

Overrides:
  `toString` in class `Throwable`

### printStackTrace

public void printStackTrace()

Overrides:
  `printStackTrace` in class `Throwable`

### printStackTrace

public void printStackTrace(PrintStream ps)

Overrides:
  `printStackTrace` in class `Throwable`

### printStackTrace

public void printStackTrace(PrintWriter pw)

Overrides:
  `printStackTrace` in class `Throwable`