# Class: com.pnfsoftware.jeb.core.actions.ActionData

Base implementation for action payload objects. 

 This class provides common support for execution errors, reusable scratch values, and optional descriptive text.

## Constructor: ActionData

Description: Create an action payload with the default information\-request behavior.

## Constructor: ActionData
- parameter: `hintNoInfoRequest`, type: `boolean`

Description: Create an action payload.
parameter: hintNoInfoRequest: if `true`, hints that only minimal preparation data is needed            because the client intends to execute the action regardless of the current state

## Static Field: ERRCODE_UNKNOWN
Type: `int`

Constant value: `0`
Description: The error code 0 means that no error code was set\-up. Meaningful error codes must be non\-zero, and are defined within specific action data classes \(sub\-classes of this class\).

## Method: canReuseObject
- return type: `boolean`

Description: Determine whether this action data object may be safely reused after a [#reset()](#reset()) invocation.
return: `true` if the object can be reused after being reset

## Method: getDescription
- return type: `java.lang.String`

Description: Retrieve the description string provided by the plugins. To be used by clients.
return: the description string, or `null` if none was provided

## Method: getExecutionErrorCode
- return type: `int`

Description: The client may retrieve the optionally\-set execution error code after a failed call to [executeAction\(\)](IInteractiveUnit#executeAction(ActionContext, IActionData))
return: the execution error code, or [#ERRCODE_UNKNOWN](#ERRCODE_UNKNOWN) if none was provided

## Method: getExecutionErrorMessage
- return type: `java.lang.String`

Description: The client may retrieve the optionally\-set execution error message after a failed call to [executeAction\(\)](IInteractiveUnit#executeAction(ActionContext, IActionData))
return: the execution error message, or `null` if none was provided

## Method: getValue
- parameter: `key`, type: `java.lang.String`
- return type: `java.lang.Object`

Description: Retrieve an arbitrary object associated with a key.
parameter: key: object key
return: the stored object, or `null`

## Method: isNoInfoRequest
- return type: `boolean`

Description: Determine whether the client requested a minimal preparation pass.
return: `true` if only minimal action information should be prepared

## Method: reset

Description: Reset this action data object. Sub\-classes should override this method and invoke it as well.

## Method: setDescription
- parameter: `description`, type: `java.lang.String`

Description: Set the description string to be provided to the clients. To be used by plugins.
parameter: description: a human\-readable description for the action state

## Method: setExecutionError
- parameter: `code`, type: `int`
- parameter: `msg`, type: `java.lang.String`

Description: The plugin may set an execution error code and message on a failed [executeAction\(\)](IInteractiveUnit#executeAction(ActionContext, IActionData)) invocation.
parameter: code: non\-zero error code
parameter: msg: optional error message

## Method: setExecutionErrorCode
- parameter: `code`, type: `int`

Description: The plugin may set an execution error code on a failed [executeAction\(\)](IInteractiveUnit#executeAction(ActionContext, IActionData)) invocation.
parameter: code: non\-zero error code

## Method: setExecutionErrorMessage
- parameter: `msg`, type: `java.lang.String`

Description: The plugin may set an execution error message on a failed [executeAction\(\)](IInteractiveUnit#executeAction(ActionContext, IActionData)) invocation.
parameter: msg: optional error message

## Method: setValue
- parameter: `key`, type: `java.lang.String`
- parameter: `value`, type: `java.lang.Object`

Description: Store an arbitrary object associated with a key.
parameter: key: object key
parameter: value: object value

