Class Hierarchy All Classes All Fields and Methods

Class com.ibm.broker.config.proxy.ExecutionGroupProxy

java.lang.Object
        com.ibm.broker.config.proxy.AdministeredObject
                com.ibm.broker.config.proxy.ExecutionGroupProxy

public class ExecutionGroupProxy
extends AdministeredObject

Each execution group associated with a broker can be represented by an ExecutionGroupProxy.

In order to use ExecutionGroupProxy objects, applications must first obtain handles to them. Here is an example of how to do this:

     ConfigManagerConnectionParameters cmcp =
         MQConfigManagerConnectionParameters("localhost", 1414, "QMGR");
     ConfigManagerProxy cmp = ConfigManagerProxy.getInstance(cmcp);
     TopologyProxy t = cmp.getTopology();
     BrokerProxy b = t.getBrokerByName("BROKER1");
     ExecutionGroupProxy e = b.getExecutionGroupByName("default");
 

com.ibm.broker.config.proxy.ExecutionGroupProxy extends com.ibm.broker.config.proxy.AdministeredObject

Responsibilities Acts as a container of deployed message flows. Provides the ability to deploy information to the execution group represented by each instance.
Internal Collaborators com.ibm.broker.config.proxy.MessageFlowProxy


 Change Activity:
 -------- ----------- -------------   ------------------------------------
 Reason:  Date:       Originator:     Comments:
 -------- ----------- -------------   ------------------------------------
 25103.7  2004-03-18  HDMPL           v6 Release
 35108.6  2006-01-24  HDMPL           Added support for 64-bit execution groups

 

Method Index
Method Description
void addAccessControlEntries(AccessControlEntry[]) Adds this list to the list of access control entries that applies to this object.
DeployResult deleteDeployedObjects(DeployedObject[], long) Asks the Configuration Manager to remove deployed objects from the execution group.
DeployResult deleteDeployedObjectsByName(String[], long) Asks the Configuration Manager to remove deployed objects from the execution group.
void deploy(InputStream) Starts an incremental deploy of the BAR file, whose contents are embedded in the supplied InputStream, to the execution group.
DeployResult deploy(InputStream, String, boolean, long) Starts a deploy of the BAR file, whose contents are embedded in the supplied InputStream, to the execution group.
void deploy(String) Starts an incremental deploy of the BAR file pointed to by the supplied filename, to the execution group.
DeployResult deploy(String, boolean, long) Starts a deploy of the BAR file pointed to by the supplied filename, to the execution group.
AccessControlEntry[] getAccessControlEntries() Creates and returns a set of AccessControlEntry objects that describes the set of (principal,permission) tuples that have been applied specifically to this object.
ConfigurationObjectType getConfigurationObjectType() Returns the ConfigurationObjectType associated with this AdministeredObject type.
ConfigurationObjectType getConfigurationObjectTypeOfParent() Returns the ConfigurationObjectType associated with the logical parent of this AdministeredObject type.
DeployedObject getDeployedObjectByName(String) Returns a reference to the deployed object with the supplied name (e.g.
DeployedObject getDeployedObjectFromSubcomponentString(String) If the supplied string is the value part of a property in the dependency or subcomponent groups, AND it represents a DeployedObject instance (including subcomponents beginning with the v5 syntax 'messageset'), this method returns a DeployedObject instance that represents it.
Enumeration getDeployedObjects() Returns an Enumeration of all the objects deployed to the current execution group.
Enumeration getDeployedObjects(String) Returns an enumeration of all the deployed objects with the supplied extension that are deployed to the current execution group.
int getDeployedObjectsCount(String) Returns the number of deployed objects that match the supplied name.
Enumeration getManagedSubcomponents(Properties) Returns an Enumeration of MessageFlowProxy objects that match the supplied filter.
Enumeration getManagedSubcomponents(Properties, boolean) Returns an Enumeration of MessageFlowProxy objects, or an Enumeration of Strings representing MessageFlowProxy objects, that match the supplied filter.
MessageFlowProxy getMessageFlow(Properties) Returns the first MessageflowProxy object that matches the filter specified by the Properties argument.
MessageFlowProxy getMessageFlowByName(String) Returns the MessageFlowProxy object with the supplied name, or null if a flow of that name does not exist or if the supplied argument was null.
Enumeration getMessageFlowDependencies() Returns an Enumeration of all the dependencies deployed to the current execution group.
Enumeration getMessageFlows(Properties) Returns an enumeration of all the MessageFlowProxy objects that match the filter specified by the Properties argument.
Enumeration getMessageSets() Returns an Enumeration of all the Message Sets deployed to the current execution group.
int getProcessorArchitecture() Returns the processor architecture of this execution group.
boolean isRunning() Returns true if and only if the execution group is running.
void removeAccessControlEntries(AccessControlEntry[]) Deletes this list from the list of access control entries that applies to this object.
void setAccessControlEntries(AccessControlEntry[]) Sets the complete list of access control entries that apply to this object.
void setUserTrace(MessageFlowProxy.UserTrace) Configures the user trace settings for every deployed message flow under the execution group's control.
void startMessageFlows() Asks the broker to start all message flows in the deployed execution group.
void stopMessageFlows(boolean) Invokes the stopMessageFlows() method for each Message Flow within the execution group's control.
Properties withName(String) Returns a new Properties object that has the UUID attribute set to the supplied String, and the type attribute to be the name of the subclass of AdministeredObject being used.
Properties withUUID(String) Returns a new Properties object that has the UUID attribute set to the supplied String, and the type attribute to be the name of the subclass of AdministeredObject being used.

Methods

addAccessControlEntries

public void addAccessControlEntries(AccessControlEntry[] accessControlList) throws ConfigManagerProxyLoggedException

Adds this list to the list of access control entries that applies to this object. Null elements in the array are ignored.

This operation is completely transactional. If the Configuration Manager successfully processes this request, all access control entries from the supplied array will be associated with this administered object. If not, the access control list for this object will have not been modified.

If the Configuration Manager to which the Configuration Manager Proxy is connected is of a version less than v6, this method will have no effect.

deleteDeployedObjects

public DeployResult deleteDeployedObjects(DeployedObject[] forDeletion,
                                          long timeToWaitMs) throws ConfigManagerProxyLoggedException

Asks the Configuration Manager to remove deployed objects from the execution group.

Note: This method causes information to be deployed to the broker and so calls to this method should be minimized. For example, should multiple objects require removal from the execution group, it is preferable to pass in all objects in a single call to this method rather than have this method called once for each object.

deleteDeployedObjectsByName

public DeployResult deleteDeployedObjectsByName(String[] forDeletion,
                                                long timeToWaitMs) throws ConfigManagerProxyLoggedException, ConfigManagerProxyPropertyNotInitializedException

Asks the Configuration Manager to remove deployed objects from the execution group.

Note: This method causes information to be deployed to the broker and so calls to this method should be minimized. For example, should multiple objects require removal from the execution group, it is preferable to pass in all objects in a single call to this method rather than have this method called once for each object.

It is acceptable to remove objects of different types in the same request. It is the caller's responsibility to ensure that the supplied names refer to exactly one object deployed in the execution group. If a deployed object with the supplied name cannot be found, that element of the array is ignored and no exception is thrown. If an ambiguous String is supplied (e.g. "doc1" when "doc1.xsl" and "doc1.dictionary" are both deployed) then the call will fail with ConfigManagerProxyLoggedException.

deploy

public void deploy(InputStream barStream) throws ConfigManagerProxyLoggedException

Starts an incremental deploy of the BAR file, whose contents are embedded in the supplied InputStream, to the execution group. The method reads the contents of the file, enqueues the deployment message for the Configuration Manager and then immediately returns. The name of the BAR file will not be available to any DeployedObject objects that result from this deployment.

deploy

public DeployResult deploy(InputStream barStream,
                           String barFileLabel,
                           boolean isIncremental,
                           long timeToWaitMs) throws ConfigManagerProxyLoggedException

Starts a deploy of the BAR file, whose contents are embedded in the supplied InputStream, to the execution group.

deploy

public void deploy(String barFileName) throws ConfigManagerProxyLoggedException, IOException

Starts an incremental deploy of the BAR file pointed to by the supplied filename, to the execution group. The method reads the contents of the file, enqueues the deployment message for the Configuration Manager and then immediately returns.

If the connected Configuration Manager is of at least version 6, the supplied filename will be used as the return value from getBARFileName() for any DeployedObject instances that result from this deploy operation.

deploy

public DeployResult deploy(String barFileName,
                           boolean isIncremental,
                           long timeToWaitMs) throws ConfigManagerProxyLoggedException, IOException

Starts a deploy of the BAR file pointed to by the supplied filename, to the execution group.

If the connected Configuration Manager is of at least version 6, the supplied filename will be used as the return value from getBARFileName() for any DeployedObject instances that result from this deploy operation.

getAccessControlEntries

public AccessControlEntry[] getAccessControlEntries() 

Creates and returns a set of AccessControlEntry objects that describes the set of (principal,permission) tuples that have been applied specifically to this object.

This method does not return details of permissions that have been implicitly granted by inherited access control entries.

getConfigurationObjectType

public ConfigurationObjectType getConfigurationObjectType() 

Returns the ConfigurationObjectType associated with this AdministeredObject type.

getConfigurationObjectTypeOfParent

public ConfigurationObjectType getConfigurationObjectTypeOfParent() 

Returns the ConfigurationObjectType associated with the logical parent of this AdministeredObject type.

getDeployedObjectByName

public DeployedObject getDeployedObjectByName(String filename) throws ConfigManagerProxyPropertyNotInitializedException

Returns a reference to the deployed object with the supplied name (e.g. "mset1") or fullname (e.g. "mset1.dictionary") that is deployed to the current execution group.

If there is more than one dependency that matches the supplied filter, an arbitrary (unspecified) match is returned.

This method discovers deployed objects that are required by message flows in order to run (e.g. message sets). In order to discover message flows themselves, use getMessageFlowByName() instead.

getDeployedObjectFromSubcomponentString

public DeployedObject getDeployedObjectFromSubcomponentString(String subcomponentString) 

If the supplied string is the value part of a property in the dependency or subcomponent groups, AND it represents a DeployedObject instance (including subcomponents beginning with the v5 syntax 'messageset'), this method returns a DeployedObject instance that represents it. Otherwise, this method returns null.

getDeployedObjects

public Enumeration getDeployedObjects() throws ConfigManagerProxyPropertyNotInitializedException

Returns an Enumeration of all the objects deployed to the current execution group. This method is the same as calling getDeployedObjects(null).

This method discovers all objects deployed on the execution group, including message flows, message sets and others.

getDeployedObjects

public Enumeration getDeployedObjects(String fileExtension) throws ConfigManagerProxyPropertyNotInitializedException

Returns an enumeration of all the deployed objects with the supplied extension that are deployed to the current execution group. The enumeration will have no elements if no matching objects are deployed.

getDeployedObjectsCount

public int getDeployedObjectsCount(String name) throws ConfigManagerProxyPropertyNotInitializedException

Returns the number of deployed objects that match the supplied name. Use this method before calling deleteDeployedObjectsByName() to ensure that the object being deleted is not ambiguously specified; a value greater than one means that the name requires greater precision. To avoid ambiguity, always specify deployed objects for deletion with their correct file extension; for example, "flow1.cmf" rather than "flow".

getManagedSubcomponents

public Enumeration getManagedSubcomponents(Properties filter) throws ConfigManagerProxyPropertyNotInitializedException

Returns an Enumeration of MessageFlowProxy objects that match the supplied filter.

getManagedSubcomponents

public Enumeration getManagedSubcomponents(Properties filter,
                                           boolean returnContainsStrings) throws ConfigManagerProxyPropertyNotInitializedException

Returns an Enumeration of MessageFlowProxy objects, or an Enumeration of Strings representing MessageFlowProxy objects, that match the supplied filter.

getMessageFlow

public MessageFlowProxy getMessageFlow(Properties props) throws ConfigManagerProxyPropertyNotInitializedException

Returns the first MessageflowProxy object that matches the filter specified by the Properties argument. If multiple message flows match the supplied filter, an arbitrary match is returned.

getMessageFlowByName

public MessageFlowProxy getMessageFlowByName(String messageFlowName) throws ConfigManagerProxyPropertyNotInitializedException

Returns the MessageFlowProxy object with the supplied name, or null if a flow of that name does not exist or if the supplied argument was null.

getMessageFlowDependencies

public Enumeration getMessageFlowDependencies() throws ConfigManagerProxyPropertyNotInitializedException

Returns an Enumeration of all the dependencies deployed to the current execution group.

This method discovers deployed objects that are required by message flows in order to run (e.g. message sets). In order to discover everything deployed to this execution group (i.e. including message flows themselves), use getDeployedObjects() instead.

getMessageFlows

public Enumeration getMessageFlows(Properties filter) throws ConfigManagerProxyPropertyNotInitializedException

Returns an enumeration of all the MessageFlowProxy objects that match the filter specified by the Properties argument.

getMessageSets

public Enumeration getMessageSets() throws ConfigManagerProxyPropertyNotInitializedException

Returns an Enumeration of all the Message Sets deployed to the current execution group. The enumeration will have no elements if no message sets are deployed.

This method is the same as calling getDeployedObjects("dictionary").

getProcessorArchitecture

public int getProcessorArchitecture() throws ConfigManagerProxyPropertyNotInitializedException

Returns the processor architecture of this execution group. Possible values are AttributeConstants.EG_PROCESSOR_ARCHITECTURE_32BIT and AttributeConstants.EG_PROCESSOR_ARCHITECTURE_64BIT, which represent 32-bit and 64-bit architectures respectively.

If the Configuration Manager to which this Configuration Manager Proxy is connected is of a version earlier than V6 Fixpack 01, all execution groups will be reported as 32-bit.

isRunning

public boolean isRunning() throws ConfigManagerProxyPropertyNotInitializedException

Returns true if and only if the execution group is running.

removeAccessControlEntries

public void removeAccessControlEntries(AccessControlEntry[] accessControlList) throws ConfigManagerProxyLoggedException

Deletes this list from the list of access control entries that applies to this object. Null elements in the array are ignored. In addition, if any elements of the array are not associated with the administered object, they will be ignored.

This operation is completely transactional. If the Configuration Manager successfully processes this request, no access control entries from the supplied array will be associated with this administered object. If not, the access control list for this object will have not been modified.

If the Configuration Manager to which the Configuration Manager Proxy is connected is of a version less than v6, this method will have no effect.

setAccessControlEntries

public void setAccessControlEntries(AccessControlEntry[] accessControlList) throws ConfigManagerProxyLoggedException

Sets the complete list of access control entries that apply to this object. Null elements in the array are ignored. If the array itself is null or empty, all access control entries for this object are removed.

This method submits only changed access control entries to the Configuration Manager. It converts the supplied array into a set of access control entries to add and a set of access control entries to remove, based on the information currently supplied from the Configuration Manager. The add and remove operations are processed separately by the Configuration Manager as two atomic, transactional requests.

If the Configuration Manager to which the Configuration Manager Proxy is connected is of a version less than v6, this method will have no effect.

setUserTrace

public void setUserTrace(MessageFlowProxy.UserTrace newTrace) throws ConfigManagerProxyLoggedException, ConfigManagerProxyPropertyNotInitializedException

Configures the user trace settings for every deployed message flow under the execution group's control.

startMessageFlows

public void startMessageFlows() throws ConfigManagerProxyLoggedException

Asks the broker to start all message flows in the deployed execution group.

If this method is called before the execution group has been successfully deployed to the broker, a ConfigManagerProxyLoggedException will be thrown. In order to deploy the execution group, use one of the deploy() methods. Checking that isDeployed() returns true prior to this method will ensure that the execution group has been successfully deployed.

stopMessageFlows

public void stopMessageFlows(boolean immediate) throws ConfigManagerProxyLoggedException

Invokes the stopMessageFlows() method for each Message Flow within the execution group's control.

If this method is called before the execution group has been successfully deployed to the broker, a ConfigManagerProxyLoggedException will be thrown. In order to deploy the execution group, use one of the deploy() methods. Checking that isDeployed() returns true prior to this method will ensure that the execution group has been successfully deployed.

withName

public static Properties withName(String name) 

Returns a new Properties object that has the UUID attribute set to the supplied String, and the type attribute to be the name of the subclass of AdministeredObject being used. This provides an easy way of supplying filters to the get*() calls. For example, broker1.getManagedSubcomponent(ExecutionGroup.withName("eg1")); will return the execution group with Name "eg1" that exists in broker1.

withUUID

public static Properties withUUID(String uuid) 

Returns a new Properties object that has the UUID attribute set to the supplied String, and the type attribute to be the name of the subclass of AdministeredObject being used. This provides an easy way of supplying filters to the get*() calls. For example, broker1.getExecutionGroup(ExecutionGroup.withUUID("1234")); will return the execution group with UUID "1234" that exists in broker1.

Class Hierarchy All Classes All Fields and Methods