org.apache.mina.core.future
Interface WriteFuture

All Superinterfaces:
IoFuture
All Known Implementing Classes:
DefaultWriteFuture

public interface WriteFuture
extends IoFuture

An IoFuture for asynchronous write requests.

Example

 IoSession session = ...;
 WriteFuture future = session.write(...);
 // Wait until the message is completely written out to the O/S buffer.
 future.join();
 if( future.isWritten() )
 {
     // The message has been written successfully.
 }
 else
 {
     // The messsage couldn't be written out completely for some reason.
     // (e.g. Connection is closed)
 }
 

Version:
$Rev: 671827 $, $Date: 2008-06-26 10:49:48 +0200 (jeu, 26 jun 2008) $
Author:
The Apache MINA Project (dev@mina.apache.org)

Method Summary
 WriteFuture addListener(IoFutureListener<?> listener)
          Adds an event listener which is notified when this future is completed.
 WriteFuture await()
          Wait for the asynchronous operation to complete.
 WriteFuture awaitUninterruptibly()
          Wait for the asynchronous operation to complete uninterruptibly.
 Throwable getException()
          Returns the cause of the write failure if and only if the write operation has failed due to an Exception.
 boolean isWritten()
          Returns true if the write operation is finished successfully.
 WriteFuture removeListener(IoFutureListener<?> listener)
          Removes an existing event listener so it won't be notified when the future is completed.
 void setException(Throwable cause)
          Sets the cause of the write failure, and notifies all threads waiting for this future.
 void setWritten()
          Sets the message is written, and notifies all threads waiting for this future.
 
Methods inherited from interface org.apache.mina.core.future.IoFuture
await, await, awaitUninterruptibly, awaitUninterruptibly, getSession, isDone, join, join
 

Method Detail

isWritten

boolean isWritten()
Returns true if the write operation is finished successfully.


getException

Throwable getException()
Returns the cause of the write failure if and only if the write operation has failed due to an Exception. Otherwise, null is returned.


setWritten

void setWritten()
Sets the message is written, and notifies all threads waiting for this future. This method is invoked by MINA internally. Please do not call this method directly.


setException

void setException(Throwable cause)
Sets the cause of the write failure, and notifies all threads waiting for this future. This method is invoked by MINA internally. Please do not call this method directly.


await

WriteFuture await()
                  throws InterruptedException
Wait for the asynchronous operation to complete. The attached listeners will be notified when the operation is completed.

Specified by:
await in interface IoFuture
Returns:
the created WriteFuture
Throws:
InterruptedException

awaitUninterruptibly

WriteFuture awaitUninterruptibly()
Wait for the asynchronous operation to complete uninterruptibly. The attached listeners will be notified when the operation is completed.

Specified by:
awaitUninterruptibly in interface IoFuture
Returns:
the current IoFuture

addListener

WriteFuture addListener(IoFutureListener<?> listener)
Adds an event listener which is notified when this future is completed. If the listener is added after the completion, the listener is directly notified.

Specified by:
addListener in interface IoFuture

removeListener

WriteFuture removeListener(IoFutureListener<?> listener)
Removes an existing event listener so it won't be notified when the future is completed.

Specified by:
removeListener in interface IoFuture


Copyright © 2004-2008 Apache MINA Project. All Rights Reserved.