public class SGAService extends Service implements csbase.remote.SGAServiceInterface, csbase.server.plugin.service.sgaservice.ISGAService
SGAService implementa o serviço de gerência de SGAs.SGA,
SGAServiceInterface| Modifier and Type | Field and Description |
|---|---|
static String |
SGA_GROUPS_SUBDIR_NAME
Nome do subdiretório (dentro da persistência) que vai armazenar os grupos
dos usuários.
|
static String |
SGA_TRANSFER_MECHANISM_KEY
Chave da propriedade que define o mecanismo de transferência
|
| Modifier | Constructor and Description |
|---|---|
protected |
SGAService()
Construtor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
checkExecutionPermission(String sgaName)
Verifica se o usuário pode executar comandos neste SGA.
|
boolean |
commandCompleted(String sgaName,
sgaidl.SGACommandOperations cmdReference,
String cmdId,
sgaidl.CompletedCommandInfo cmdInfo)
Notificação de término de um comando.
|
boolean |
commandLost(String sgaName,
String cmdId)
Notificação de comando não recuperado.
|
boolean |
commandRetrieved(String sgaName,
sgaidl.RetrievedInfo[] cmds)
Registra comandos recuperados em um SGA.
|
static void |
createService()
Constrói a instância do serviço de gerência de SGAs
|
void |
executeCommand(csbase.logic.CommandInfo command)
Execução remota de um comando para um SGA.
|
csbase.logic.SGAInfo[] |
getAllInfo(String sgaName)
Otenção das informações de um SGA.
|
Vector<csbase.logic.CommandInfo> |
getAllSGACommands()
Retorna uma Vector (de CommandInfo) com informações de todos os comandos do
em execução.
|
Vector<String> |
getAllSGANames()
Retorno de todos os sgas cadastrados no SSI (SGA-Service)
|
List<csbase.logic.ClientSGAFile> |
getChildren(String sgaName,
String path) |
String |
getCommandsPersistencyDirectoryName()
Retorna o nome do diretório de persistência para comandos.
|
int |
getCommandsUpdateInterval()
Retorna o intervalo de atualização das informações dos comandos.
|
Map<csbase.logic.CommandFinalizationType,Integer> |
getExeResultsStats(boolean flowResults) |
csbase.logic.ClientSGAFile |
getFile(String sgaName,
String path) |
csbase.logic.SGAInfo |
getInfo(String sgaName,
int index)
Consulta das informações de um nó do SGA.
|
static SGAService |
getInstance()
Retorno da instância do serviço.
|
csbase.logic.ServerGroupInfo[] |
getServerGroups()
Obtém os grupos de servidores definidos por um usuário.
|
csbase.logic.CommandInfo |
getSGACommand(String sgaName,
String cmdId)
Retorna as informações de um comando em execução.
|
Set<csbase.logic.CommandInfo> |
getSGACommands(String sgaName) |
csbase.logic.SGASet |
getSGASet(String sgaName)
Obtenção de um SGA.
|
Map<String,Integer> |
getSGAsStats() |
int |
getUpdateInterval()
Retorna o intervalo de atualização das informações dos SGAs
|
protected boolean |
has2Update(Object arg,
Object event)
Retorna sempre verdadeiro.
|
void |
initService()
Inicialização do serviço de gerência de SGAs.
|
boolean |
isRegistered(sgaidl.SGADaemonOperations sgaReference,
String sgaName)
SGA verifica se o SSI está acessível e se seu registro está válido.
|
boolean |
isSGAAuthorized(String sgaName)
Verifica se o SGA está autorizado a registrar-se.
|
boolean |
killCommand(String cmdId)
Envio de notificação para cancelar a execução de um comando específico
|
boolean |
killCommand(String sgaName,
String cmdId)
Envio de notificação para cancelar a execução de um comando específico
|
void |
killCommandAnyway(String sgaName,
String cmdId)
Finalização de comando pelo administrador (kill).
|
String[] |
mandatorySGANodeProperties() |
String[] |
mandatorySGAProperties() |
boolean |
registerSGA(sgaidl.SGADaemonOperations sgaReference,
String sgaName,
sgaidl.SGAProperties sgaProperties,
IntHolder updateInterval)
Registro de um SGA.
|
Collection<String> |
restartAllSGAs()
Pedido de reinício para todos os SGAs.
|
boolean |
restartSGA(String sgaName)
Pedido para reiniciar o SGA especificado.
|
boolean |
setServerGroups(csbase.logic.ServerGroupInfo[] groups)
Atualiza os grupos de servidores definidos por um usuário.
|
Collection<String> |
shutdownAllSGAs()
Envio de notificação de shutdown para todos os SGAs.
|
void |
shutdownService()
Término do serviço de gerência de SGAs.
|
boolean |
shutdownSGA(String sgaName)
Envio de notificação de shutdown para um SGA específico.
|
void |
unregisterSGA(sgaidl.SGADaemonOperations sgaReference,
String sgaName)
Solicitação de de-registro de um SGA.
|
boolean |
updateCommandDescription(String commandId,
String description) |
boolean |
updateSGAInfo(sgaidl.SGADaemonOperations sgaReference,
String sgaName,
sgaidl.SGAProperties sgaProperties)
SGA atualiza seus dados dinâmicos.
|
void |
uploadScripts(Command command)
Copia os scripts do comando para o ambiente de execução.
|
getBooleanProperty, getDefaultLocale, getDoubleProperty, getExternalPropertyFile, getFormattedString, getFormattedString, getInitializationDependencies, getInstance, getIntProperty, getKey, getLongProperty, getName, getOptionalString, getOptionalString, getOSPropertyPath, getSenderName, getServices, getString, getString, getStringListProperty, getStringProperty, getSystemId, getThreadLocale, getUser, getUserPermission, hasProperty, incrCounter, isActive, isEnabled, isInternalServerRequest, isLoggingNotifications, isPropertyNull, logNotification, setEnabled, setKey, setSystemId, setUserId, setUserLocalehandleException, handleFatalErroraddObserver, countObservers, deleteObserver, deleteObserver, deleteObservers, has2update, notifyObserverspublic static final String SGA_GROUPS_SUBDIR_NAME
public static final String SGA_TRANSFER_MECHANISM_KEY
protected SGAService()
throws ServerException
ServerException - se houver erro na instanciação.public static final SGAService getInstance()
public final Vector<String> getAllSGANames()
getAllSGANames in interface csbase.remote.SGAServiceInterfacepublic final csbase.logic.SGAInfo[] getAllInfo(String sgaName)
getAllInfo in interface csbase.remote.SGAServiceInterfacesgaName - o nome do SGA.public final csbase.logic.CommandInfo getSGACommand(String sgaName, String cmdId)
getSGACommand in interface csbase.remote.SGAServiceInterfacesgaName - Nome do SGAcmdId - Identificador do comando.public Set<csbase.logic.CommandInfo> getSGACommands(String sgaName)
getSGACommands in interface csbase.remote.SGAServiceInterfacepublic final Vector<csbase.logic.CommandInfo> getAllSGACommands()
getAllSGACommands in interface csbase.remote.SGAServiceInterfacepublic final csbase.logic.SGAInfo getInfo(String sgaName, int index)
getInfo in interface csbase.remote.SGAServiceInterfacesgaName - nome do servidor SGA.index - índice relativo dentro do servidor SGA.public List<csbase.logic.ClientSGAFile> getChildren(String sgaName, String path)
getChildren in interface csbase.remote.SGAServiceInterfacepublic csbase.logic.ClientSGAFile getFile(String sgaName, String path)
getFile in interface csbase.remote.SGAServiceInterfacepublic final boolean updateSGAInfo(sgaidl.SGADaemonOperations sgaReference,
String sgaName,
sgaidl.SGAProperties sgaProperties)
throws sgaidl.InvalidParameterException,
sgaidl.NoPermissionException,
sgaidl.SGANotRegisteredException
updateSGAInfo in interface csbase.server.plugin.service.sgaservice.ISGAServicesgaReference - referência para o SGAsgaName - nome da máquina hospedeira do SGAsgaProperties - informações dinâmicas do SGAsgaidl.InvalidParameterExceptionsgaidl.NoPermissionExceptionsgaidl.SGANotRegisteredExceptionpublic final boolean isRegistered(sgaidl.SGADaemonOperations sgaReference,
String sgaName)
throws sgaidl.InvalidSGAException,
sgaidl.NoPermissionException
isRegistered in interface csbase.server.plugin.service.sgaservice.ISGAServicesgaReference - referência para o SGAsgaName - nome da máquina hospedeira do SGAsgaidl.InvalidSGAExceptionsgaidl.NoPermissionExceptionpublic final csbase.logic.SGASet getSGASet(String sgaName)
getSGASet in interface csbase.remote.SGAServiceInterfacesgaName - o nome do SGA.public final boolean setServerGroups(csbase.logic.ServerGroupInfo[] groups)
setServerGroups in interface csbase.remote.SGAServiceInterfacegroups - array com as informações dos grupospublic boolean updateCommandDescription(String commandId, String description)
updateCommandDescription in interface csbase.remote.SGAServiceInterfacepublic final csbase.logic.ServerGroupInfo[] getServerGroups()
getServerGroups in interface csbase.remote.SGAServiceInterfacepublic final int getUpdateInterval()
getUpdateInterval in interface csbase.remote.SGAServiceInterfacepublic final int getCommandsUpdateInterval()
getCommandsUpdateInterval in interface csbase.remote.SGAServiceInterfacepublic final boolean commandCompleted(String sgaName, sgaidl.SGACommandOperations cmdReference, String cmdId, sgaidl.CompletedCommandInfo cmdInfo) throws sgaidl.InvalidSGAException, sgaidl.NoPermissionException, sgaidl.InvalidCommandException
commandCompleted in interface csbase.server.plugin.service.sgaservice.ISGAServicesgaName - nome do SGA.cmdReference - referência para o comando concluído.cmdId - identificador do comando no SGA.cmdInfo - informações sobre o comando.sgaidl.InvalidSGAExceptionsgaidl.InvalidCommandExceptionsgaidl.NoPermissionExceptionpublic final boolean commandLost(String sgaName, String cmdId) throws sgaidl.InvalidSGAException, sgaidl.InvalidCommandException
commandLost in interface csbase.server.plugin.service.sgaservice.ISGAServicesgaName - nome do SGA.cmdId - identificador do comando no SGA.sgaidl.InvalidSGAExceptionsgaidl.InvalidCommandExceptionpublic final void executeCommand(csbase.logic.CommandInfo command)
throws csbase.exception.PermissionException,
SGANotAvailableException,
ProjectNotFoundException
command - informações sobre o comando a ser executado.csbase.exception.PermissionException - Se o usuário não tiver permissão para executar
o comando.SGANotAvailableException - Em caso de falha na submissão do comando
devido ao SGA selecionado não estar disponível.ProjectNotFoundException - Em caso de falha na submissão do comando
devido ao projeto não estar disponível.public final void initService()
throws ServerException
initService in class ServiceServerException - se ocorrer um erro na inicializaçãopublic boolean isSGAAuthorized(String sgaName)
sgaName - o nome do SGApublic boolean killCommand(String cmdId)
killCommand in interface csbase.remote.SGAServiceInterfacecmdId - identificador do comando.public boolean killCommand(String sgaName, String cmdId)
killCommand in interface csbase.remote.SGAServiceInterfacesgaName - nome do SGA.cmdId - identificador do comando.public void killCommandAnyway(String sgaName, String cmdId) throws csbase.exception.PermissionException
killCommandAnyway in interface csbase.remote.SGAServiceInterfacesgaName - nome do SGA.cmdId - identificador do comando.csbase.exception.PermissionException - se o usuário não for administrador.public boolean registerSGA(sgaidl.SGADaemonOperations sgaReference,
String sgaName,
sgaidl.SGAProperties sgaProperties,
IntHolder updateInterval)
throws sgaidl.InvalidParameterException,
sgaidl.NoPermissionException,
sgaidl.SGAAlreadyRegisteredException
registerSGA in interface csbase.server.plugin.service.sgaservice.ISGAServicesgaReference - referência para o sgasgaName - nome do SGAsgaProperties - propriedades do SGAupdateInterval - informa de quanto em quanto tempo o SGA deve dizer
que está vivo.sgaidl.NoPermissionException - Se o SGA não estiver autorizado a se
registrarsgaidl.InvalidParameterExceptionsgaidl.SGAAlreadyRegisteredExceptionpublic Collection<String> shutdownAllSGAs() throws csbase.exception.PermissionException
shutdownAllSGAs in interface csbase.remote.SGAServiceInterfacecsbase.exception.PermissionException - se o usuário não tiver permissão para desativar
os SGAs.public Collection<String> restartAllSGAs() throws csbase.exception.PermissionException
restartAllSGAs in interface csbase.remote.SGAServiceInterfacecsbase.exception.PermissionException - se o usuário não tiver permissão para reiniciar
os SGAs.public boolean shutdownSGA(String sgaName) throws csbase.exception.PermissionException
shutdownSGA in interface csbase.remote.SGAServiceInterfacesgaName - nome do SGA.csbase.exception.PermissionException - se o usuário não tiver permissão para desativar
o SGA.public boolean restartSGA(String sgaName) throws csbase.exception.PermissionException
restartSGA in interface csbase.remote.SGAServiceInterfacesgaName - nome do SGA a ser reiniciado.csbase.exception.PermissionException - se o usuário não tiver permissão para reiniciar
este SGA.public boolean commandRetrieved(String sgaName, sgaidl.RetrievedInfo[] cmds) throws sgaidl.InvalidSGAException, sgaidl.NoPermissionException, sgaidl.InvalidCommandException
perdidos.commandRetrieved in interface csbase.server.plugin.service.sgaservice.ISGAServicesgaName - nome que identifica o sga.cmds - informações sobre os comandos recuperadostrue se existe um SGA com o nome especificado,
false caso contráriosgaidl.InvalidSGAExceptionsgaidl.NoPermissionExceptionsgaidl.InvalidCommandExceptionpublic void shutdownService()
throws ServerException
shutdownService in class ServiceServerException - caso não consiga desativar o servant.public void unregisterSGA(sgaidl.SGADaemonOperations sgaReference,
String sgaName)
throws sgaidl.NoPermissionException,
sgaidl.SGANotRegisteredException
unregisterSGA in interface csbase.server.plugin.service.sgaservice.ISGAServicesgaReference - referência para o sgasgaName - nome do SGAsgaidl.NoPermissionExceptionsgaidl.SGANotRegisteredExceptionpublic void checkExecutionPermission(String sgaName) throws csbase.exception.PermissionException
sgaName - nome do SGA.csbase.exception.PermissionException - se houver falha de permissão para acesso.protected boolean has2Update(Object arg, Object event)
has2Update in class csbase.remote.RemoteObjectObservableRemoteObjectObservable.has2Update(Object,Object)public void uploadScripts(Command command) throws csbase.exception.OperationFailureException, ServerException
command - O comandocsbase.exception.OperationFailureException - Se não for possível obter os scripts do
comando.ServerException - Se houver algum problema no upload dos arquivos via
CSFS.public String getCommandsPersistencyDirectoryName() throws csbase.exception.OperationFailureException
csbase.exception.OperationFailureException - em caso de erro na validação do diretório
no sistema de arquivos.public static void createService()
throws ServerException
ServerException - se houver erro na instanciação.public Map<csbase.logic.CommandFinalizationType,Integer> getExeResultsStats(boolean flowResults) throws RemoteException
getExeResultsStats in interface csbase.remote.SGAServiceInterfaceRemoteExceptionpublic Map<String,Integer> getSGAsStats() throws RemoteException
getSGAsStats in interface csbase.remote.SGAServiceInterfaceRemoteExceptionpublic String[] mandatorySGAProperties()
mandatorySGAProperties in interface csbase.server.plugin.service.sgaservice.ISGAServicepublic String[] mandatorySGANodeProperties()
mandatorySGANodeProperties in interface csbase.server.plugin.service.sgaservice.ISGAServiceCopyright © 2017. All rights reserved.