com.ibm.broker.config.proxy
Class DeployResult

java.lang.Object
  extended by com.ibm.broker.config.proxy.DeployResult

public class DeployResult
extends java.lang.Object

The DeployResult type is used to describe the outcome of deployment operations. Each instance represents the state of a deployment at the time it is returned from one of the deploy() methods. In other words, once an instance is supplied to the application, it is no longer updated by the Configuration Manager Proxy.

class com.ibm.broker.config.proxy.DeployResult

Responsibilities Each instance represents a possible outcome of a deployment operation.
Internal Collaborators None

 Change Activity:
 -------- ----------- -------------   ------------------------------------
 Reason:  Date:       Originator:     Comments:
 -------- ----------- -------------   ------------------------------------
 25103.2  2004-04-23  HDMPL           v6 Release
 44739.7  2007-07-30  HDMPL           v6.1 Release:
                                          Methods now return genericized types where relevant

 

Version:
Config/com/ibm/broker/config/proxy/DeployResult.java, CMP, S000 1.15

Method Summary
 CompletionCodeType getCompletionCode()
          Returns the overall outcome for the current deployment.
 CompletionCodeType getCompletionCodeForBroker(BrokerProxy b)
          Returns the completion code for the supplied broker.
 java.util.Enumeration<BrokerProxy> getDeployedBrokers()
          Returns an enumeration of BrokerProxy objects to which the deployment refers.
 java.util.Enumeration<LogEntry> getLogEntries()
          Returns the LogEntry objects supplied by the Configuration Manager that describe the overall outcome of the deployment request.
 java.util.Enumeration<LogEntry> getLogEntriesForBroker(BrokerProxy b)
          Returns an enumeration of available LogEntry objects that describe the deployment outcome for the current broker.
 int getNumberOfDeployedBrokers()
          Returns the number of BrokerProxy objects to which the deploy refers.
static void setDeployResultReturnTimeDelayMs(long timeDelayMs)
          Sets the amount of time, in milliseconds, that the Configuration Manager Proxy will wait once all deployment results are in, before returning the DeployResult object to the caller.
 java.lang.String toString()
          Returns a String representation of the overall outcome of the deploy.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

toString

public final java.lang.String toString()
Returns a String representation of the overall outcome of the deploy.

Overrides:
toString in class java.lang.Object
Returns:
String overall outcome

getDeployedBrokers

public java.util.Enumeration<BrokerProxy> getDeployedBrokers()
Returns an enumeration of BrokerProxy objects to which the deployment refers. Pub/Sub topology and topic deployments affect all brokers in the domain, and the cancel deployment operation affected none. All other deployment types affect only a single broker.

Further information can be determined by using the getCompletionCodeForBroker() and getLogEntryForBroker() methods, and by parsing the LogProxy object directly.

Returns:
Enumeration containing zero or more BrokerProxy objects.

getNumberOfDeployedBrokers

public int getNumberOfDeployedBrokers()
Returns the number of BrokerProxy objects to which the deploy refers. Note that for a cancel deployment operation this is always zero.

Returns:
int

getCompletionCodeForBroker

public CompletionCodeType getCompletionCodeForBroker(BrokerProxy b)
Returns the completion code for the supplied broker.

If the deployment operation affects multiple brokers, the returned object describes the outcome of the operation for a specific broker, rather than the overall reault. The getCompletionCode() method can be used to query the overall deployment status. If the deployment operation affects a single broker, the returned result from this method is typically the same as the result from getCompletionCode().

The result will be one of the following objects:

If the deployment operation to which this result refers did not involve the supplied broker (or if the supplied argument was null), null will be returned. Note that the cancel deployment operation does not require any broker interaction, and so this method will always return null in this case.

Returns:
CompletionCodeType describing the outcome of the deploy for the supplied broker.

getLogEntriesForBroker

public java.util.Enumeration<LogEntry> getLogEntriesForBroker(BrokerProxy b)
Returns an enumeration of available LogEntry objects that describe the deployment outcome for the current broker.

If the deployment to which this result refers did not involve the supplied broker, or if no log messages have been received for this broker in response to the deployment, the enumeration will be empty. If the supplied argument was null, null will be returned. Note that the cancel deployment operation does not require any broker interaction, and so this method will always return an empty enumeration in this case.

Returns:
Enumeration containing zero or more LogEntry objects.

getLogEntries

public java.util.Enumeration<LogEntry> getLogEntries()
Returns the LogEntry objects supplied by the Configuration Manager that describe the overall outcome of the deployment request. Messages pertaining to individual brokers are not returned in this enumeration, but are instead returned from the getLogEntriesForBroker(BrokerProxy) method.

Returns:
Enumeration containing zero or more LogEntry objects.

getCompletionCode

public CompletionCodeType getCompletionCode()
Returns the overall outcome for the current deployment.

If the deployment operation affects multiple brokers, the returned object describes the outcome of the operation as a whole rather than giving any breakdown of each broker. The getCompletionCodeForBroker(BrokerProxy) method can be used to query the deployment status of a given broker. If the deployment operation affects a single broker, the returned result from this method is typically the same as the result from getCompletionCodeForBroker(BrokerProxy).

The returned result will be one of the following objects:

Further information can be determined by using the getCompletionCodeForBroker() and getLogEntryForBroker() methods, and by parsing the LogProxy object directly.

Returns:
CompletionCodeType the overall outcome of the deployment request.

setDeployResultReturnTimeDelayMs

public static void setDeployResultReturnTimeDelayMs(long timeDelayMs)
Sets the amount of time, in milliseconds, that the Configuration Manager Proxy will wait once all deployment results are in, before returning the DeployResult object to the caller.

When listening for deployment results, the Configuration Manager Proxy is able to tell from each component's very first response whether the component considered deployment to have been successful, and so is able to return a correct success or failure message as soon as each affected broker and the Configuration Manager has responded at least once. In order to provide extra information, these components often respond multiple times during a deploy. However, the deployment result may have already been returned to the caller by the time subsequent responses are received.

This parameter causes the Configuration Manager Proxy to pause once it is about to return a DeployResult object, to see if further messages are received from the components.

The default value is 2000, which means that the Configuration Manager Proxy will wait two seconds after it knows whether the deployment has been successful or not before the DeployResult object is returned. Any further responses received in this time will be added to the DeployResult object. Consider increasing this value if components are generally slow to respond, or decrease the value to reduce the time taken to report deployment results.

This value is only used if all affected components respond to a deployment request. If a deployment times out, the Configuration Manager Proxy will have only waited the value of the timeToWaitMs parameter supplied to the deployment method.

Parameters:
timeDelayMs - A long greater than or equal to zero.