public interface CommandPersistenceServiceInterface extends ServiceInterface
Interface do serviço de persistência de comandos.
Persiste os comandos no projeto corrente.| Modifier and Type | Interface and Description |
|---|---|
static class |
CommandPersistenceServiceInterface.CommandInfosRetrived
Estrutura contendo informações de leitura de comandos.
|
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
SERVICE_NAME
Nome do serviço
|
| Modifier and Type | Method and Description |
|---|---|
CommandInfo |
getCommandInfo(java.lang.Object projectId,
java.lang.String commandId)
Obtém as informações de comando específico dado o identificador do projeto
e o identificador do comando.
|
java.util.Set<CommandInfo> |
getCommandInfos(java.lang.Object projectId)
Obtém todas as informações dos comandos salvas no projeto especificado.
|
java.util.Set<CommandInfo> |
getStatusCommandInfos(java.lang.Object projectId,
java.util.List<CommandStatus> statusFilter,
boolean include)
Obtém todas as informações dos comandos que estão em determinado estado,
salvas no projeto especificado.
|
AlgorithmConfigurator |
readAlgorithmConfigurator(java.lang.Object projectId,
java.lang.String commandId)
Obtém o configurador de comando específico dado o identificador do projeto
e o identificador do comando.
|
boolean |
removeCommandInfo(java.lang.Object projectId,
java.lang.String commandId)
Remove o comando específico.
|
boolean[] |
removeCommandInfos(java.util.List<java.lang.Object> projectIds,
java.util.List<java.lang.String> commandIds)
Remove comandos.
|
long |
requestCommandInfos(java.lang.Object projectId,
long desiredResponseTime)
Obtém todas as informações dos comandos salvas no projeto especificado.
|
void |
updateCommandDescription(java.lang.Object projectId,
java.lang.String commandId,
java.lang.String description)
Atualiza a decrição de um comando.
|
getName, isActivestatic final java.lang.String SERVICE_NAME
long requestCommandInfos(java.lang.Object projectId,
long desiredResponseTime)
throws java.rmi.RemoteException
Obtém todas as informações dos comandos salvas no projeto especificado.
Diferente do getCommandInfos(Object), este método retorna assim
que é chamado e os comandos são entregues, aos poucos, como de mensagens
disparadas através MessageBroker do servidor, a cada
desiredResponseTime.
Os comandos são encapsulados em CommandPersistenceServiceInterface.CommandInfosRetrived que chegam ao
usuário como corpo da mensagem.
As mensagens são enviadas com tempo de vida igual a zero. Isso quer dizer
que para receber as mensagens, o usuário deve antes cadastrar um ouvinte
que filtre as mensagens com corpo do tipo CommandPersistenceServiceInterface.CommandInfosRetrived
antes de chamar este método.
projectId - O identificador do projeto (Não pode ser null).desiredResponseTime - O tempo, em milisegundos, que o cliente gostaria
de esperar para cada pacote de comandos.java.lang.IllegalArgumentException - Caso projectId seja nulo, ou o
desiredResponseTime seja menor que 1.ServiceFailureException - Caso não seja possível recuperar o projeto.java.rmi.RemoteException - Em caso de erro de RMI.java.util.Set<CommandInfo> getCommandInfos(java.lang.Object projectId) throws java.rmi.RemoteException
projectId - O identificador do projeto (Não pode ser null).Collections.unmodifiableSet(Set)). Se não houver
informações, o conjunto retornado estará vazio. Caso ocorra algum
erro na tentativa de ler as informações de um comando, este será
representado por um comando com o status
CommandStatus.SYSTEM_FAILURE. Neste as únicas propriedades
garantidas são o identificador do comando e o identificador do
projeto, todas as demais devem ser desconsideradas.java.lang.IllegalArgumentException - Caso o rojectId seja nulo.ServiceFailureException - Caso não seja possível recuperar o projeto.java.rmi.RemoteException - Em caso de erro de RMI.CommandInfo getCommandInfo(java.lang.Object projectId, java.lang.String commandId) throws java.rmi.RemoteException
projectId - O identificador do projeto (Não pode ser null).commandId - O identificador do comando (Não pode ser null).null se ele não existir ou, caso
não seja possível carregar as informações do comando por algum
erro, será retornado um comando com o status
CommandStatus.SYSTEM_FAILURE. Neste as únicas propriedades
garantidas são o identificador do comando e o identificador do
projeto, todas as demais devem ser desconsideradas.java.lang.IllegalArgumentException - Caso algum dos parâmetros seja nulo.java.rmi.RemoteException - Em caso de erro de RMI.boolean removeCommandInfo(java.lang.Object projectId,
java.lang.String commandId)
throws java.rmi.RemoteException
Remove o comando específico.
Caso a remoção tenha sido feita com sucesso, gera uma notificação
CommandPersistenceNotification do tipo
CommandPersistenceNotification.Type.REMOVED
.
projectId - Identificador do projeto aonde o comando foi persistido
(Não pode ser null).commandId - Identificador do comando (Não pode ser null).false e o comando não existir ou true em caso de
sucesso.ServiceFailureException - Em caso de erro ao tentar ler as
propriedades. Por ex.: erro de IO ao ler do dispositivo de
persistência.java.rmi.RemoteException - Em caso de erro de RMI.boolean[] removeCommandInfos(java.util.List<java.lang.Object> projectIds,
java.util.List<java.lang.String> commandIds)
throws java.rmi.RemoteException
Remove comandos.
Para cada remoção feita com sucesso, gera uma notificação
CommandPersistenceNotification do tipo
CommandPersistenceNotification.Type.REMOVED
.
projectIds - lista de identificador dos projetos respectivos a lista
de identificadores de comandos (Não pode ser null).commandIds - lista de identificador dos comandos a serem removidos
(Não pode ser null).true da remoção
de cada comando.ServiceFailureException - Em caso de erro ao tentar ler as
propriedades. Por ex.: erro de IO ao ler do dispositivo de
persistência.java.rmi.RemoteException - Em caso de erro de RMI.java.util.Set<CommandInfo> getStatusCommandInfos(java.lang.Object projectId, java.util.List<CommandStatus> statusFilter, boolean include) throws java.rmi.RemoteException
projectId - O identificador do projeto (Não pode ser null).statusFilter - indica os estados que se deseja obter.include - Quando verdadeiro indica que os estados informados devem ser
usados para inclusão dos comandos. Quando falso, os estados
informados são usados para exclusão dos mesmos.Collections.unmodifiableSet(Set)). Se não houver
informações, o conjunto retornado estará vazio. Caso ocorra algum
erro na tentativa de ler as informações de um comando, este será
representado por um comando com o status
CommandStatus.SYSTEM_FAILURE. Neste as únicas propriedades
garantidas são o identificador do comando e o identificador do
projeto, todas as demais devem ser desconsideradas.java.lang.IllegalArgumentException - Caso o rojectId seja nulo.ServiceFailureException - Caso não seja possível recuperar o projeto.java.rmi.RemoteException - Em caso de erro de RMI.void updateCommandDescription(java.lang.Object projectId,
java.lang.String commandId,
java.lang.String description)
throws java.rmi.RemoteException
Atualiza a decrição de um comando.
Caso a atualização tenha sido feita com sucesso, gera uma notificação
CommandPersistenceNotification do tipo
CommandPersistenceNotification.Type.UPDATED
.
projectId - O identificador do projeto no qual o comando foi
persistido (Não aceita null).commandId - O identificador do comando (Não aceita null).description - A nova descrição do comando (Não aceita null).ServiceFailureException - Em caso de erro ao tentar escrever as
informações. Por ex.: erro de IO ao ler do dispositivo de
persistência.java.rmi.RemoteException - Em caso de erro de RMI.AlgorithmConfigurator readAlgorithmConfigurator(java.lang.Object projectId, java.lang.String commandId) throws java.rmi.RemoteException
projectId - O identificador do projeto (Não pode ser null).commandId - O identificador do comando (Não pode ser null).null se ele não existir.ServiceFailureException - Em caso de erro ao tentar ler o
configurador. Por ex.: erro de IO ao ler do dispositivo de
persistência.java.rmi.RemoteException - Em caso de erro de RMI.Copyright © 2015. All Rights Reserved.