opendreams.proxy
Class AsynchronousExecutor

java.lang.Object
  extended by java.lang.Thread
      extended by opendreams.proxy.AsynchronousExecutor
All Implemented Interfaces:
Runnable

public class AsynchronousExecutor
extends Thread

Classe utilitária para disparar a execução de um algoritmo em uma thread separada. Permite a adição de listeners que são chamados ao término da execução.

Author:
Tecgraf PUC-Rio

Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
Thread.State, Thread.UncaughtExceptionHandler
 
Field Summary
static String SIMPLE_ALGORITHM
          Comando que executa um algoritmo do repositório
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
AsynchronousExecutor()
          Construtor.
 
Method Summary
 void addExecutorListener(AsynchronousExecutorListener listener)
          Adiciona um listener interessado em ser notificados sobre a execução do algoritmo submetido para execução no OpenDreams.
 void run()
          Executa o algoritmo remotamente, usando o OpenDreams.
 void setAlgorithmName(String algorithmName)
          Altera o nome do algoritmo usado para execução do comando.
 void setAlgorithmVersion(String algorithmVersion)
          Altera a versão do algoritmo usado para execução do comando.
 void setDescription(String description)
          Altera a descrição do comando a ser executado.
 void setEmail(String email)
          Altera o email a ser notificado ao término da execução do comando.
 void setParameter(String parameterName, String parameterValue)
          Adiciona um parâmetro do algoritmo.
 void setProjectName(String projectName)
          Altera o nome do projeto usado para execução do comando.
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SIMPLE_ALGORITHM

public static final String SIMPLE_ALGORITHM
Comando que executa um algoritmo do repositório

See Also:
Constant Field Values
Constructor Detail

AsynchronousExecutor

public AsynchronousExecutor()
Construtor.

Method Detail

run

public void run()
Executa o algoritmo remotamente, usando o OpenDreams. Ao final da execução, notifica os listeners cadastrados.

Specified by:
run in interface Runnable
Overrides:
run in class Thread

addExecutorListener

public void addExecutorListener(AsynchronousExecutorListener listener)
Adiciona um listener interessado em ser notificados sobre a execução do algoritmo submetido para execução no OpenDreams.

Parameters:
listener - o listener para a execução do algoritmo

setProjectName

public void setProjectName(String projectName)
Altera o nome do projeto usado para execução do comando.

Parameters:
projectName - nome do projeto

setAlgorithmName

public void setAlgorithmName(String algorithmName)
Altera o nome do algoritmo usado para execução do comando.

Parameters:
algorithmName - nome do algoritmo

setAlgorithmVersion

public void setAlgorithmVersion(String algorithmVersion)
Altera a versão do algoritmo usado para execução do comando.

Parameters:
algorithmVersion - versão do algoritmo

setParameter

public void setParameter(String parameterName,
                         String parameterValue)
Adiciona um parâmetro do algoritmo.

Parameters:
parameterName - nome do parâmetro
parameterValue - valor do parâmetro

setEmail

public void setEmail(String email)
Altera o email a ser notificado ao término da execução do comando.

Parameters:
email - email para notificação

setDescription

public void setDescription(String description)
Altera a descrição do comando a ser executado.

Parameters:
description - descrição do comando


Tecgraf PUC-Rio