org.jscience.computing.distributed.server
Class MultiInteractiveTask

java.lang.Object
  extended by org.jscience.computing.distributed.server.MultiInteractiveTask
All Implemented Interfaces:
java.io.Serializable, InteractiveTask, Task

public class MultiInteractiveTask
extends java.lang.Object
implements InteractiveTask

This allows many InteractiveTasks to be bundled togather as one InteractiveTask.

All tasks will be started simultaneously and the task as a whole will only finish when all tasks have completed.

For more flexibility in managing tasks dynamically use FineGrainedInteractiveTasks.

See Also:
Serialized Form

Constructor Summary
MultiInteractiveTask(java.util.Vector tasks)
          Creates new MultiInteractiveTask
 
Method Summary
 java.lang.Object get(java.lang.Object params)
          Used to get output from the task
 java.lang.Object run(java.lang.Object params)
          Starts all tasks in their own thread
 void set(java.lang.Object paramsAndWhat)
          Used to send input to the task
 java.lang.String toString()
          DOCUMENT ME!
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MultiInteractiveTask

public MultiInteractiveTask(java.util.Vector tasks)
Creates new MultiInteractiveTask

Parameters:
tasks - Vector containing list of tasks to run simultaneously.
Method Detail

get

public java.lang.Object get(java.lang.Object params)
Used to get output from the task

Specified by:
get in interface InteractiveTask
Parameters:
params - If not null, then must be a Vector with what must be sent to each task.
Returns:
a Vector holding what each task's get method returned.

set

public void set(java.lang.Object paramsAndWhat)
Used to send input to the task

Specified by:
set in interface InteractiveTask
Parameters:
paramsAndWhat - if not null, must be a Vector with what must be sent to each task

run

public java.lang.Object run(java.lang.Object params)
                     throws java.lang.InterruptedException
Starts all tasks in their own thread

Specified by:
run in interface Task
Parameters:
params - DOCUMENT ME!
Returns:
DOCUMENT ME!
Throws:
java.lang.InterruptedException - DOCUMENT ME!

toString

public java.lang.String toString()
DOCUMENT ME!

Overrides:
toString in class java.lang.Object
Returns:
DOCUMENT ME!