mandala.rami
Interface InvocationEventsWaiter

All Known Subinterfaces:
FutureClient, RemoteFutureClient, RemoteInvocationEventsWaiter
All Known Implementing Classes:
AbstractFutureClient, RemoteInvocationEventsWaiterProxy

public interface InvocationEventsWaiter

This interface defines the behavior a waiter of an asynchronous method invocation must have.

This interface provides methods to wait for the start of the method invocation, and for the availability of the result.

Every methods of this interface are safe related meaning the result they return is always valid.

Version:
1.0
Author:
eipi
See Also:
InvocationInfo, InvocationObserver, MethodResult, FutureClient

Method Summary
 ThreadOp waitForCalleeThread()
          Deprecated. 

The usability of the callee thread depends on the asynchronous policy used by the AsynchronousReference implementation. For example, if a thread-pool is used, the callee thread returned may be running a completely different method than the one called. Hence, callee thread use is error prone. No replacement. Current implementations return null immediatly. This method will be removed in the next light release.

 ThreadOp waitForCalleeThread(long timeout)
          Deprecated. 

The usability of the callee thread depends on the asynchronous policy used by the AsynchronousReference implementation. For example, if a thread-pool is used, the callee thread returned may be running a completely different method than the one called. Hence, callee thread use is error prone. No replacement. Current implementations return null immediatly. This method will be removed in the next light release.

 java.lang.Object waitForResult()
          Equivalent to waitForResult(Long.MAX_VALUE).
 java.lang.Object waitForResult(long timeout)
          Wait for the availability of the result of an asynchronous method invocation for a specified amount of time.
 void waitUntilCalleeAvailable()
          Deprecated. 

The usability of the callee thread depends on the asynchronous policy used by the AsynchronousReference implementation. For example, if a thread-pool is used, the callee thread returned may be running a completely different method than the one called. Hence, callee thread use is error prone. No replacement. Current implementations return immediatly. This method will be removed in the next light release.

 boolean waitUntilCalleeAvailable(long timeout)
          Deprecated. 

The usability of the callee thread depends on the asynchronous policy used by the AsynchronousReference implementation. For example, if a thread-pool is used, the callee thread returned may be running a completely different method than the one called. Hence, callee thread use is error prone. No replacement. Current implementations return false immediatly. This method will be removed in the next light release.

 void waitUntilResultAvailable()
          Wait until the result become available.
 boolean waitUntilResultAvailable(long timeout)
          Wait until the result become available for a specified amount of time.
 void waitUntilStarted()
          Wait until the method is runned by a callee thread.
 boolean waitUntilStarted(long timeout)
          Wait until the method is runned by a callee thread.
 

Method Detail

waitForResult

public java.lang.Object waitForResult()
                               throws java.lang.Throwable,
                                      java.lang.InterruptedException

Equivalent to waitForResult(Long.MAX_VALUE). This method is safe related.

Returns:
The object returned by the asynchronous method invocation.
Throws:
java.lang.Throwable - the exception thrown by the asynchronous method invocation.
java.lang.InterruptedException - if the thread has been interrupted

waitForResult

public java.lang.Object waitForResult(long timeout)
                               throws java.lang.Throwable,
                                      java.lang.InterruptedException,
                                      TimedOutException

Wait for the availability of the result of an asynchronous method invocation for a specified amount of time. This method is safe related.

If an exception occured during the call, it is thrown.

If the specified timeout expires, a TimedOutException is thrown.

Returns:
The object returned by the asynchronous method invocation.
Throws:
java.lang.Throwable - The exception thrown by the asynchronous method invocation.
java.lang.InterruptedException - if another thread has interrupted the current thread. The interrupted status of the current thread is cleared when this exception is thrown.
TimedOutException - if the specified timeout expires.

waitUntilResultAvailable

public boolean waitUntilResultAvailable(long timeout)
                                 throws java.lang.InterruptedException

Wait until the result become available for a specified amount of time. This method is safe related.

If the result is not available, wait timeout before returning.

Parameters:
timeout - the maximum time to wait in milliseconds.
Returns:
true if the result is available, false if the timeout expires.
Throws:
java.lang.InterruptedException

waitUntilResultAvailable

public void waitUntilResultAvailable()
                              throws java.lang.InterruptedException

Wait until the result become available. This method is safe related.

Throws:
java.lang.InterruptedException

waitUntilCalleeAvailable

public boolean waitUntilCalleeAvailable(long timeout)
                                 throws java.lang.InterruptedException
Deprecated. 

The usability of the callee thread depends on the asynchronous policy used by the AsynchronousReference implementation. For example, if a thread-pool is used, the callee thread returned may be running a completely different method than the one called. Hence, callee thread use is error prone. No replacement. Current implementations return false immediatly. This method will be removed in the next light release.

Wait until the callee thread become available for a specified amount of time. This method is safe related.

If the callee is not available, wait timeout before returning.

Parameters:
timeout - the maximum time to wait in milliseconds (0 means wait for ever).
Returns:
true if the callee thread is available, false if the timeout expires.
Throws:
java.lang.InterruptedException

waitUntilCalleeAvailable

public void waitUntilCalleeAvailable()
                              throws java.lang.InterruptedException
Deprecated. 

The usability of the callee thread depends on the asynchronous policy used by the AsynchronousReference implementation. For example, if a thread-pool is used, the callee thread returned may be running a completely different method than the one called. Hence, callee thread use is error prone. No replacement. Current implementations return immediatly. This method will be removed in the next light release.

Wait until the callee thread become available. This method is safe related.

Throws:
java.lang.InterruptedException

waitForCalleeThread

public ThreadOp waitForCalleeThread(long timeout)
                             throws TimedOutException,
                                    java.lang.InterruptedException
Deprecated. 

The usability of the callee thread depends on the asynchronous policy used by the AsynchronousReference implementation. For example, if a thread-pool is used, the callee thread returned may be running a completely different method than the one called. Hence, callee thread use is error prone. No replacement. Current implementations return null immediatly. This method will be removed in the next light release.

Wait for the thread which is running the method invocation (the "callee") to be set for a specified amount of time. This method is safe related.

If the callee has not yet been set, wait timeout before returning the result.

Parameters:
timeout - the maximum time to wait in milliseconds (0 means wait for ever).
Returns:
the callee thread.
Throws:
java.lang.InterruptedException - if another thread has interrupted the current thread. The interrupted status of the current thread is cleared when this exception is thrown.
TimedOutException

waitForCalleeThread

public ThreadOp waitForCalleeThread()
                             throws java.lang.InterruptedException
Deprecated. 

The usability of the callee thread depends on the asynchronous policy used by the AsynchronousReference implementation. For example, if a thread-pool is used, the callee thread returned may be running a completely different method than the one called. Hence, callee thread use is error prone. No replacement. Current implementations return null immediatly. This method will be removed in the next light release.

Wait for the thread which is running the method invocation (the "callee") to be set. This method is safe related.

Returns:
the callee thread.
Throws:
java.lang.InterruptedException - if another thread has interrupted the current thread. The interrupted status of the current thread is cleared when this exception is thrown.

waitUntilStarted

public void waitUntilStarted()
                      throws java.lang.InterruptedException

Wait until the method is runned by a callee thread. This method is safe related.

Throws:
java.lang.InterruptedException
Since:
3.0

waitUntilStarted

public boolean waitUntilStarted(long timeout)
                         throws java.lang.InterruptedException

Wait until the method is runned by a callee thread. This method is safe related.

If the invocation has not yet started, wait timeout before returning.

Parameters:
timeout - the maximum time to wait in milliseconds.
Returns:
true if the result is available, false if the timeout expires.
Throws:
java.lang.InterruptedException
Since:
3.0


Mandala help mailing list