Gerenciando Domínios Intermediários Utilizando o Configuration Manager Proxy

Antes de começar

Antes de iniciar este tópico, você deve ter concluído Conectando a um Gerenciador de Configuração Utilizando o Configuration Manager Proxy.

Utilizando o CMP, é possível alterar o estado de objetos no domínio - ou seja, criar, excluir, modificar e implementar objetos armazenados no Gerenciador de Configuração. O exemplo a seguir tenta configurar o campo long description de um intermediário chamado B1:
import com.ibm.broker.config.proxy.*;

public class SetLongDescription {

  public static void main(String[] args) {
        
    ConfigManagerProxy cmp = null;
        try {
      ConfigManagerConnectionParameters cmcp =
         new MQConfigManagerConnectionParameters(
           "localhost",
           1414,
           "");
      cmp = ConfigManagerProxy.getInstance(cmcp);
    } catch (ConfigManagerProxyException cmpex) {
      System.out.println("Error connecting: "+cmpex);
    }
        
    if (cmp != null) {
      System.out.println("Connected to Config Manager!");
      describeBroker(cmp, "B1", "this is my broker");
      cmp.disconnect();
    }
  }

  private static void describeBroker(ConfigManagerProxy cmp,
                                     String brokerName,
                                     String newDesc)
  {
  	BrokerProxy b = null;
        try {
      TopologyProxy topology = cmp.getTopology();
      if (topology != null) {
        b = topology.getBrokerByName(brokerName);
      }
    } catch(ConfigManagerProxyPropertyNotInitializedException
                                                      ex) {
        System.err.println("Comms problem! "+ex);
    }
    
    if (b != null) {
          try {
      	 b.setLongDescription(newDesc);
      } catch (ConfigManagerProxyException ex) {
      	System.err.println("Could not send request to CM: "+ex);
      }
        } else {
      System.err.println("Broker "+brokerName+" not found");
    }  
  }
}
O método setLongDescription() funciona solicitando que o Gerenciador de Configuração modifique uma propriedade (chave, valor) do intermediário B1, na qual o nome da chave representa a tag long description e o valor é new long description. Portanto, uma alternativa para chamar setLongDescription() é:
Properties p = new Properties();

p.setProperty(AttributeConstants.LONG_DESCRIPTION_PROPERTY,
              newDesc);

b.setProperties(p);
Quando o pedido para alterar propriedades é enviado para o Gerenciador de Configuração, as tabelas de propriedades internas do CMP não são atualizadas até que o Gerenciador de Configuração relate que sua cópia dos atributos tenha sido alterada com êxito. Isto é feito para manter todas as cópias das informações consistentes. Este processo é mostrado abaixo.


Observe que, se o usuário atual não tiver as permissões necessárias, como funciona SetLongDescription.java, não será possível determinar se o pedido será rejeitado pelo Gerenciador de Configuração. O método do CMP para configurar o campo long description emite uma ConfigManagerProxyException se e apenas se a mensagem para desempenhar a operação não puder ser enviada para o Gerenciador de Configuração. Isto significa que a saída do programa é exatamente a mesma, mesmo que o Gerenciador de Configuração não possa alterar a propriedade requerida.

O motivo é que o Gerenciador de Configuração processa pedidos do CMP assincronamente e, portanto pode, teoricamente, decorrer um período considerável até que a ação seja desempenhada no Gerenciador de Configuração. Se métodos como o descrito neste tópico não retornarem o controle ao programa até que os códigos de conclusão sejam disponibilizados, o desempenho do aplicativo do CMP dependerá totalmente do desempenho do Gerenciador de Configuração.

Em seguida:

O design da maioria dos métodos do CMP de alteração de estado é retornar imediatamente sem informar o aplicativo de chamada do resultado do pedido. Para descobrir estas informações, consulte Verificando os Resultados do Gerenciamento de Domínios Intermediários Utilizando o Configuration Manager Proxy

Tarefas relacionadas
Configurando um Ambiente para Desenvolvimento e Execução de Aplicativos do Configuration Manager Proxy
Conectando a um Gerenciador de Configuração Utilizando o Configuration Manager Proxy
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
ae33050_