|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objecttecgraf.openbus.assistant.Assistant
public abstract class Assistant
Assistente que auxilia a integração de uma aplicação a um barramento.
O assistente realiza tarefas de manutenção da integração da aplicação com o barramento. Tais tarefas incluem:
O assistente implementa a mesma interface do registro de ofertas, porém nunca lança exceções, pois todas as operações são realizadas de forma assíncrona. Eventuais falhas nessas operações assíncronas são notificadas através de callbacks.
Constructor Summary | |
---|---|
Assistant(String host,
int port)
Cria um assistente que efetua login no barramento utilizando autenticação definida pelo método onLoginAuthentication() . |
|
Assistant(String host,
int port,
AssistantParams params)
Cria um assistente que efetua login no barramento utilizando autenticação definida pelo método onLoginAuthentication() . |
Method Summary | |
---|---|
static Assistant |
createWithPassword(String host,
int port,
String entity,
byte[] password)
Cria um assistente que efetua login no barramento utilizando autenticação por senha. |
static Assistant |
createWithPassword(String host,
int port,
String entity,
byte[] password,
AssistantParams params)
Cria um assistente que efetua login no barramento utilizando autenticação por senha. |
static Assistant |
createWithPrivateKey(String host,
int port,
String entity,
PrivateKey key)
Cria um assistente que efetua login no barramento utilizando autenticação por certificado. |
static Assistant |
createWithPrivateKey(String host,
int port,
String entity,
PrivateKey key,
AssistantParams params)
Cria um assistente que efetua login no barramento utilizando autenticação por certificado. |
ServiceOfferDesc[] |
findServices(ServiceProperty[] properties,
int retries)
Busca por ofertas que apresentem um conjunto de propriedades definido. |
ServiceOfferDesc[] |
getAllServices(int retries)
Devolve uma lista de todas as ofertas de serviço registradas. |
abstract AuthArgs |
onLoginAuthentication()
Método de obtenção de dados para autenticação de login. |
ORB |
orb()
Consulta o ORB em utilizado pelo assistente. |
void |
registerService(scs.core.IComponent component,
ServiceProperty[] properties)
Solicita que o assitente registre um serviço no barramento. |
void |
shutdown()
Encerra o funcionamento do assistente liberando todos os recursos alocados por ele. |
LoginProcess |
startSharedAuth(OctetSeqHolder secret,
int retries)
Inicia o processo de login por autenticação compartilhada. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public Assistant(String host, int port)
onLoginAuthentication()
.
Assistentes criados com essa operação realizam o login no barramento sempre
utilizando autenticação definida pelo método
onLoginAuthentication()
que informa a forma de
autenticação, assim como os dados para realizar essa autenticação.
host
- Endereço ou nome de rede onde os serviços núcleo do barramento
estão executando.port
- Porta onde os serviços núcleo do barramento estão executando.public Assistant(String host, int port, AssistantParams params)
onLoginAuthentication()
.
Assistentes criados com essa operação realizam o login no barramento sempre
utilizando autenticação definida pelo método
onLoginAuthentication()
que informa a forma de
autenticação, assim como os dados para realizar essa autenticação.
host
- Endereço ou nome de rede onde os serviços núcleo do barramento
estão executando.port
- Porta onde os serviços núcleo do barramento estão executando.params
- Parâmetros opicionais de configuração do assistenteMethod Detail |
---|
public static Assistant createWithPassword(String host, int port, String entity, byte[] password)
Assistentes criados com essa operação realizam o login no barramento sempre utilizando autenticação da entidade indicada pelo parâmetro 'entity' e a senha fornecida pelo parâmetro 'password'.
host
- Endereço ou nome de rede onde os serviços núcleo do barramento
estão executando.port
- Porta onde os serviços núcleo do barramento estão executando.entity
- Identificador da entidade a ser autenticada.password
- Senha de autenticação no barramento da entidade.
public static Assistant createWithPassword(String host, int port, String entity, byte[] password, AssistantParams params)
Assistentes criados com essa operação realizam o login no barramento sempre utilizando autenticação da entidade indicada pelo parâmetro 'entity' e a senha fornecida pelo parâmetro 'password'.
host
- Endereço ou nome de rede onde os serviços núcleo do barramento
estão executando.port
- Porta onde os serviços núcleo do barramento estão executando.entity
- Identificador da entidade a ser autenticada.password
- Senha de autenticação no barramento da entidade.params
- Parâmetros opicionais de configuração do assistente
public static Assistant createWithPrivateKey(String host, int port, String entity, PrivateKey key)
Assistentes criados com essa operação realizam o login no barramento sempre utilizando autenticação da entidade indicada pelo parâmetro 'entity' e a chave privada fornecida pelo parâmetro 'key'.
host
- Endereço ou nome de rede onde os serviços núcleo do barramento
estão executando.port
- Porta onde os serviços núcleo do barramento estão executando.entity
- Identificador da entidade a ser autenticada.key
- Chave privada correspondente ao certificado registrado a ser
utilizada na autenticação.
public static Assistant createWithPrivateKey(String host, int port, String entity, PrivateKey key, AssistantParams params)
Assistentes criados com essa operação realizam o login no barramento sempre utilizando autenticação da entidade indicada pelo parâmetro 'entity' e a chave privada fornecida pelo parâmetro 'key'.
host
- Endereço ou nome de rede onde os serviços núcleo do barramento
estão executando.port
- Porta onde os serviços núcleo do barramento estão executando.entity
- Identificador da entidade a ser autenticada.key
- Chave privada correspondente ao certificado registrado a ser
utilizada na autenticação.params
- Parâmetros opicionais de configuração do assistente
public ORB orb()
public void registerService(scs.core.IComponent component, ServiceProperty[] properties)
Esse método notifica o assistente de que o serviço fornecido deve se mantido como uma oferta de serviço válida no barramento. Para tanto, sempre que o assistente restabelecer o login esse serviço será novamente registrado no barramento.
Para que o registro de serviços seja bem sucedido é necessário que o ORB utilizado pelo assistente esteja processando chamadas, por exemplo, fazendo com que a aplicação chame o método 'ORB::run()'.
Caso ocorram erros, a callback de tratamento de erro apropriada será chamada.
component
- Referência do serviço sendo ofertado.properties
- Propriedades do serviço sendo ofertado.public ServiceOfferDesc[] findServices(ServiceProperty[] properties, int retries) throws Throwable
Serão selecionadas apenas as ofertas de serviço que apresentem todas as propriedades especificadas. As propriedades utilizadas nas buscas podem ser aquelas fornecidas no momento do registro da oferta de serviço, assim como as propriedades automaticamente geradas pelo barramento.
Caso ocorram erros, a callback de tratamento de erro apropriada será chamada. Se o número de tentativas se esgotar e não houver sucesso, uma sequência vazia será retornada.
properties
- Propriedades que as ofertas de serviços encontradas devem
apresentar.retries
- Parâmetro opcional indicando o número de novas tentativas de
busca de ofertas em caso de falhas, como o barramento estar
indisponível ou não for possível estabelecer um login até o momento.
'retries' com o valor 0 implica que a operação retorna imediatamente
após uma única tentativa. Para tentar indefinidamente o valor de
'retries' deve ser -1. Entre cada tentativa é feita uma pausa dada
pelo parâmetro 'interval' fornecido na criação do assistente (veja a
interface 'AssistantFactory').
Throwable
public ServiceOfferDesc[] getAllServices(int retries) throws Throwable
Caso ocorram erros, a callback de tratamento de erro apropriada será chamada. Se o número de tentativas se esgotar e não houver sucesso, uma sequência vazia será retornada.
retries
- Parâmetro opcional indicando o número de novas tentativas de
busca de ofertas em caso de falhas, como o barramento estar
indisponível ou não for possível estabelecer um login até o momento.
'retries' com o valor 0 implica que a operação retorna imediatamente
após uma única tentativa. Para tentar indefinidamente o valor de
'retries' deve ser -1. Entre cada tentativa é feita uma pausa dada
pelo parâmetro 'interval' fornecido na criação do assistente (veja a
interface 'AssistantFactory').
Throwable
public LoginProcess startSharedAuth(OctetSeqHolder secret, int retries) throws Throwable
A autenticação compartilhada permite criar um novo login compartilhando a mesma autenticação do login atual da conexão. Portanto essa operação só pode ser chamada enquanto a conexão estiver autenticada, caso contrário a exceção de sistema CORBA::NO_PERMISSION{NoLogin} é lançada. As informações fornecidas por essa operação devem ser passadas para a operação 'loginBySharedAuth' para conclusão do processo de login por autenticação compartilhada. Isso deve ser feito dentro do tempo de lease definido pelo administrador do barramento. Caso contrário essas informações se tornam inválidas e não podem mais ser utilizadas para criar um login.
secret
- Segredo a ser fornecido na conclusão do processo de login.retries
- Parâmetro opcional indicando o número de novas tentativas de
busca de ofertas em caso de falhas, como o barramento estar
indisponível ou não for possível estabelecer um login até o momento.
'retries' com o valor 0 implica que a operação retorna imediatamente
após uma única tentativa. Para tentar indefinidamente o valor de
'retries' deve ser -1. Entre cada tentativa é feita uma pausa dada
pelo parâmetro 'interval' fornecido na criação do assistente (veja a
interface 'AssistantFactory').
Throwable
public void shutdown()
Essa operação deve ser chamada antes do assistente ser descartado, pois como o assistente tem um funcionamento ativo, ele continua funcionando e consumindo recursos mesmo que a aplicação não tenha mais referências a ele. Em particular, alguns dos recursos gerenciados pelo assistente são:
public abstract AuthArgs onLoginAuthentication()
Método a ser implementado que será chamado quando o assistente precisar autenticar uma entidade para restabelecer um login com o barramento.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |