O próximo tópico do livro aborda como o registro do serviço é feito e como ele fica disponível para os clientes.
ServiceRegistrar:
Uma classe já falada antes mas que agora irá ser abordada de maneira mais completa. Seu objeto é retornado pelo lookup service para que ela sirva de proxy. Isso é feito com o famoso método .register().
Esse método necessita de um parametro que é na verdade um objeto da classe ServiceIntem, e esse objeto tem que ser visto de maneira mais completa:
ServiceItem:
Essa classe apresenta um atributo chamado serviceID que de inicio é setado como NULL. Quando o lookup service entrar em ação ele passara para esse atributo um valor não nulo. Esse valor é usado como um identificador único do serviço.
Outro atributo importante é o service, que é o objeto que está sendo registrado naquele momento. Esse objeto será serializado e enviado para o servidor de serviços para ser armazenado e quando o cliente requisitar ele será enviado.
ServiceRegistration
É um objeto criado pelo lookup service que é retornado e executado no servidor de serviços. Ele é um proxy que mantém a informação do estado do serviço para o lookup service.
Ele pode ser utilizado para atualizar os valores do objeto ServiceItem já instanciado:
void addAttributes(Entry[] attrSets); void modifyAttributes(Entry[] attrSetTemplates, Entry[] attrSets); void setAttributes(Entry[] attrSets);