Package org.osgi.service.application

# Class ApplicationException

java.lang.Object
java.lang.Throwable
java.lang.Exception
org.osgi.service.application.ApplicationException

All Implemented Interfaces:
  `Serializable`

public class ApplicationException extends Exception
This exception is used to indicate problems related to application lifecycle management. `ApplicationException` object is created by the Application Admin to denote an exception condition in the lifecycle of an application. `ApplicationException`s should not be created by developers.
`ApplicationException`s are associated with an error code. This code describes the type of problem reported in this exception. The possible codes are:

- `APPLICATION_LOCKED` - The application couldn't be launched because it is locked.
- `APPLICATION_NOT_LAUNCHABLE` - The application is not in launchable state.
- `APPLICATION_INTERNAL_ERROR` - An exception was thrown by the application or its container during launch.
- `APPLICATION_SCHEDULING_FAILED` - The scheduling of an application failed.
- `APPLICATION_DUPLICATE_SCHEDULE_ID` - The application scheduling failed because the specified identifier is already in use.
- `APPLICATION_EXITVALUE_NOT_AVAILABLE` - The exit value is not available for an application instance because the instance has not terminated.
- `APPLICATION_INVALID_STARTUP_ARGUMENT` - One of the specified startup arguments is invalid, for example its type is not permitted.

Version:
  $Id: 08d42ec7b09ff4543192b32d7a83a8afd34fd9f5 $
See Also:
  - Serialized Form

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`APPLICATION_DUPLICATE_SCHEDULE_ID`
The application scheduling failed because the specified identifier is already in use.
`static final int`
`APPLICATION_EXITVALUE_NOT_AVAILABLE`
The exit value is not available for an application instance because the instance has not terminated.
`static final int`
`APPLICATION_INTERNAL_ERROR`
An exception was thrown by the application or the corresponding container during launch.
`static final int`
`APPLICATION_INVALID_STARTUP_ARGUMENT`
One of the specified startup arguments is invalid, for example its type is not permitted.
`static final int`
`APPLICATION_LOCKED`
The application couldn't be launched because it is locked.
`static final int`
`APPLICATION_NOT_LAUNCHABLE`
The application is not in launchable state, it's `ApplicationDescriptor.APPLICATION_LAUNCHABLE` attribute is false.
`static final int`
`APPLICATION_SCHEDULING_FAILED`
The application schedule could not be created due to some internal error (for example, the schedule information couldn't be saved due to some storage error).

## Constructor Summary

Constructors
Constructor
Description
`ApplicationException(int errorCode)`
Creates an `ApplicationException` with the specified error code.
`ApplicationException(int errorCode, String message)`
Creates an `ApplicationException` with the specified error code.
`ApplicationException(int errorCode, String message, Throwable cause)`
Creates a `ApplicationException` that wraps another exception.
`ApplicationException(int errorCode, Throwable cause)`
Creates a `ApplicationException` that wraps another exception.

## Method Summary

Modifier and Type
Method
Description
`Throwable`
`getCause()`
Returns the cause of this exception or `null` if no cause was set.
`int`
`getErrorCode()`
Returns the error code associated with this exception.

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

`addSuppressed, fillInStackTrace, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

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

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

## Field Details

### APPLICATION_LOCKED

public static final int APPLICATION_LOCKED
The application couldn't be launched because it is locked.

See Also:
  - Constant Field Values

### APPLICATION_NOT_LAUNCHABLE

public static final int APPLICATION_NOT_LAUNCHABLE
The application is not in launchable state, it's `ApplicationDescriptor.APPLICATION_LAUNCHABLE` attribute is false.

See Also:
  - Constant Field Values

### APPLICATION_INTERNAL_ERROR

public static final int APPLICATION_INTERNAL_ERROR
An exception was thrown by the application or the corresponding container during launch. The exception is available from `getCause()`.

See Also:
  - Constant Field Values

### APPLICATION_SCHEDULING_FAILED

public static final int APPLICATION_SCHEDULING_FAILED
The application schedule could not be created due to some internal error (for example, the schedule information couldn't be saved due to some storage error).

See Also:
  - Constant Field Values

### APPLICATION_DUPLICATE_SCHEDULE_ID

public static final int APPLICATION_DUPLICATE_SCHEDULE_ID
The application scheduling failed because the specified identifier is already in use.

See Also:
  - Constant Field Values

### APPLICATION_EXITVALUE_NOT_AVAILABLE

public static final int APPLICATION_EXITVALUE_NOT_AVAILABLE
The exit value is not available for an application instance because the instance has not terminated.

Since:
  1.1
See Also:
  - Constant Field Values

### APPLICATION_INVALID_STARTUP_ARGUMENT

public static final int APPLICATION_INVALID_STARTUP_ARGUMENT
One of the specified startup arguments is invalid, for example its type is not permitted.

Since:
  1.1
See Also:
  - Constant Field Values

## Constructor Details

### ApplicationException

public ApplicationException(int errorCode)
Creates an `ApplicationException` with the specified error code.

Parameters:
  `errorCode` - The code of the error

### ApplicationException

public ApplicationException(int errorCode, Throwable cause)
Creates a `ApplicationException` that wraps another exception.

Parameters:
  `errorCode` - The code of the error
  `cause` - The cause of this exception.

### ApplicationException

public ApplicationException(int errorCode, String message)
Creates an `ApplicationException` with the specified error code.

Parameters:
  `errorCode` - The code of the error
  `message` - The associated message

### ApplicationException

public ApplicationException(int errorCode, String message, Throwable cause)
Creates a `ApplicationException` that wraps another exception.

Parameters:
  `errorCode` - The code of the error
  `message` - The associated message.
  `cause` - The cause of this exception.

## Method Details

### getCause

public Throwable getCause()
Returns the cause of this exception or `null` if no cause was set.

Overrides:
  `getCause` in class `Throwable`
Returns:
  The cause of this exception or `null` if no cause was set.

### getErrorCode

public int getErrorCode()
Returns the error code associated with this exception.

Returns:
  The error code of this exception.