Package org.xnio

# Class IoFuture.HandlingNotifier<T,A>

java.lang.Object
org.xnio.IoFuture.HandlingNotifier<T,A>

Type Parameters:
  `T` - the type of result that the associated future operation produces
  `A` - the attachment type

All Implemented Interfaces:
  `EventListener`, `IoFuture.Notifier<T,A>`

Enclosing interface:
  `IoFuture<T>`

public abstract static class IoFuture.HandlingNotifier<T,A> extends Object implements IoFuture.Notifier<T,A>
A base notifier class that calls the designated handler method on notification. Use this class to reduce boilerplate for standard `IoFuture.Notifier` implementations.

Since:
  1.1

## Constructor Summary

Constructors
Constructor
Description
`HandlingNotifier()`

## Method Summary

Modifier and Type
Method
Description
`void`
`handleCancelled(A attachment)`
Handle cancellation.
`void`
`handleDone(T data, A attachment)`
Handle completion.
`void`
`handleFailed(IOException exception, A attachment)`
Handle failure.
`void`
`notify(IoFuture<? extends T> future, A attachment)`
Receive notification of the completion of an outstanding operation.

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

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

## Constructor Details

### HandlingNotifier

public HandlingNotifier()

## Method Details

### notify

public void notify(IoFuture<? extends T> future, A attachment)
Receive notification of the completion of an outstanding operation.

Specified by:
  `notify` in interface `IoFuture.Notifier<T,A>`
Parameters:
  `future` - the future corresponding to this operation
  `attachment` - the attachment

### handleCancelled

public void handleCancelled(A attachment)
Handle cancellation.

Parameters:
  `attachment` - the attachment

### handleFailed

public void handleFailed(IOException exception, A attachment)
Handle failure.

Parameters:
  `exception` - the failure reason
  `attachment` - the attachment

### handleDone

public void handleDone(T data, A attachment)
Handle completion.

Parameters:
  `data` - the result
  `attachment` - the attachment