TopologyProxy t = cmp.getTopology(); boolean isDelta = true; long timeToWaitMs = 10000; DeployResult dr = topology.deploy(isDelta, timeToWaitMs); System.out.println("Overall result = "+dr.getCompletionCode()); // Display overall log messages Enumeration logEntries = dr.getLogEntries(); while (logEntries.hasMoreElements()) { LogEntry le = (LogEntry)logEntries.nextElement(); System.out.println("General message: " + le.getDetail()); } // Display broker specific information Enumeration e = dr.getDeployedBrokers(); while (e.hasMoreElements()) { // Discover the broker BrokerProxy b = (BrokerProxy)e.nextElement(); // Completion code for broker System.out.println("Result for broker "+b+" = " + dr.getCompletionCodeForBroker(b)); // Log entries for broker Enumeration e2 = dr.getLotEntriesForBroker(b); while (e2.hasMoreElements()) { LogEntry le = (LogEntry)e2.nextElement(); System.out.println("Log message for broker " + b + le.getDetail())); } }Die Methode deploy() wird blockiert, bis alle betroffenen Broker auf die Implementierungsanforderung geantwortet haben.
Wenn die Methode einen Wert zurückgibt, entspricht DeployResult dem Ergebnis der Implementierung zu dem Zeitpunkt, als die Methode den Wert zurückgegeben hat; das Objekt wird vom Konfigurationsmanager-Proxy nicht aktualisiert.
Wenn die Implementierungsnachricht nicht an den Konfigurationsmanager gesendet werden konnte, wird die Ausnahmebedingung ConfigManagerProxyLoggedException beim Implementieren ausgegeben. Wenn der Konfigurationsmanager die Implementierungsnachricht erhält, werden Protokollnachrichten für die gesamte Implementierung gefolgt von Beendigungscodes speziell für jeden Broker angezeigt, der von der Implementierung betroffen ist. Der Beendigungscode entspricht einer der folgenden statischen Instanzen aus der Klasse com.ibm.broker.config.proxy.CompletionCodeType:
Beendigungscode | Beschreibung: |
---|---|
pending (anstehend) | Die Einsetzung befindet sich in einer Warteschleife und wird erst gesendet, wenn Sie den Befehl ConfigManagerProxy.sendUpdates() ausführen. |
submitted (übergeben) | Die Implementierungsnachricht wurde an den Konfigurationsmanager gesendet, jedoch wurde das Zeitlimit für den Empfang einer Antwort überschritten. |
initiated (initialisiert) | Der Konfigurationsmanager hat eine Antwort gesendet, in der angezeigt wird, dass die Einsetzung gestartet wurde. Es wurden jedoch keine Brokerantworten vor Ablauf des Zeitlimits empfangen. |
successSoFar (bis zum gegenwärtigen Zeitpunkt erfolgreich) | Der Konfigurationsmanager hat die Einsetzungsanforderung ausgegeben und einige, jedoch nicht alle Broker haben vor Ablauf des Zeitlimits die Nachricht zurückgegeben, dass die Einsetzung erfolgreich war. Es wurden keine negativen Antworten von Brokern empfangen. |
success (erfolgreich) | Der Konfigurationsmanager hat eine Einsetzungsanforderung ausgegeben und alle relevanten Broker haben eine positive Nachricht vor Ablauf des Zeitlimits zurückgegeben. |
failure (fehlgeschlagen) | Der Konfigurationsmanager hat eine Einsetzungsaufforderung ausgegeben, und mindestens ein Broker hat eine negative Antwort zurückgegeben. Führen Sie den Befehl getLogEntriesForBroker aus, um weitere Informationen zur fehlgeschlagenen Einsetzung anzuzeigen. |
notRequired (nicht erforderlich) | An den Konfigurationsmanager, der dem Broker zugeordnet ist, wurde eine Einsetzungsanforderung gesendet. Die Anforderung wurde jedoch nicht an den Broker übergeben, da seine Konfiguration bereits aktualisiert wurde. |