# Interface IExecutionListener

All Known Subinterfaces:
  `IExecutionListenerWithChecks`

public interface IExecutionListener

A listener to the execution of commands. This listener will be notified if a command is about to execute, and when that execution completes. It is not possible for the listener to prevent the execution, only to respond to it in some way.

Since:
  3.1

## Method Summary

Modifier and Type
Method
Description
`void`
`notHandled(String commandId, NotHandledException exception)`
Notifies the listener that an attempt was made to execute a command with no handler.
`void`
`postExecuteFailure(String commandId, ExecutionException exception)`
Notifies the listener that a command has failed to complete execution.
`void`
`postExecuteSuccess(String commandId, Object returnValue)`
Notifies the listener that a command has completed execution successfully.
`void`
`preExecute(String commandId, ExecutionEvent event)`
Notifies the listener that a command is about to execute.

## Method Details

### notHandled

void notHandled(String commandId, NotHandledException exception)
Notifies the listener that an attempt was made to execute a command with no handler.

Parameters:
  `commandId` - The identifier of command that is not handled; never `null`
  `exception` - The exception that occurred; never `null`.

### postExecuteFailure

void postExecuteFailure(String commandId, ExecutionException exception)
Notifies the listener that a command has failed to complete execution.

Parameters:
  `commandId` - The identifier of the command that has executed; never `null`.
  `exception` - The exception that occurred; never `null`.

### postExecuteSuccess

void postExecuteSuccess(String commandId, Object returnValue)
Notifies the listener that a command has completed execution successfully.

Parameters:
  `commandId` - The identifier of the command that has executed; never `null`.
  `returnValue` - The return value from the command; may be `null`.

### preExecute

void preExecute(String commandId, ExecutionEvent event)
Notifies the listener that a command is about to execute.

Parameters:
  `commandId` - The identifier of the command that is about to execute, never `null`.
  `event` - The event that will be passed to the `execute` method; never `null`.