Websphere MQ Everyplace

com.ibm.mqe.mqbridge
Class MQeCharacteristicLabels

java.lang.Object
  |
  +--com.ibm.mqe.mqbridge.MQeCharacteristicLabels

public class MQeCharacteristicLabels
extends java.lang.Object

This class groups together all the labels used in any MQeFields object used in the Websphere MQ-bridge code.

These labels are used by administration messages, and by the administered object runtime characteristics, and persistent registry entry objects.

This class extends Object.


Field Summary
static java.lang.String MQE_FIELD_LABEL_ADMINISTERED_OBJECT_CLASS
          Used by all administered object registry entries.
static java.lang.String MQE_FIELD_LABEL_AFFECT_CHILDREN
          Used to control whether a start or delete action affects child objects when applied to an administered object.
static java.lang.String MQE_FIELD_LABEL_BRIDGE_NAME
          A label for the unicode field that contains the name of the MQBridge object.
static java.lang.String MQE_FIELD_LABEL_CCSID
          The label for the field holding the CCSID used on the underlying Websphere MQ Classes for Java client channel.
static java.lang.String MQE_FIELD_LABEL_CHILD
          The label of the unicode field that holds the name of the child of an administered object.
static java.lang.String MQE_FIELD_LABEL_CHILDREN
          The label associated with the children of the WebSphere MQ Everyplace field.
static java.lang.String MQE_FIELD_LABEL_CLIENT_CONNECTION_NAME
          Label for the WebSphere MQ Everyplace unicode field that holds the name of the client connection that the administration message is being sent to.
static java.lang.String MQE_FIELD_LABEL_DEAD_LETTER_Q_NAME
          Label for the unicode field holding the name of the dead letter queue on the Websphere MQ system.
static java.lang.String MQE_FIELD_LABEL_DEFAULT_TRANSFORMER
          Label holding the name of the WebSphere MQ Everyplace field that holds the name of the default transformer class that is used to convert from WebSphere MQ Everyplace to Websphere MQ and from Websphere MQ to WebSphere MQ Everyplace message formats.
static java.lang.String MQE_FIELD_LABEL_DESCRIPTION
          A Unicode description field, for the convenience of the administrator, in which a description of an administered object can be placed.
static java.lang.String MQE_FIELD_LABEL_FLOWS_PER_COMMIT
          Label holding the name of the WMQe field which indicates how many messages the listener conveys to MQe before the sync queue on the Websphere MQ system is cleaned up.
static java.lang.String MQE_FIELD_LABEL_HEARTBEAT_INTERVAL
          The label holding the int value of the time interval (in minutes) which dictates the period of each "heartbeat" event.
static java.lang.String MQE_FIELD_LABEL_HOST_NAME
          WebSphere MQ Everyplace field label for the hostname field.
static java.lang.String MQE_FIELD_LABEL_LISTENER_NAME
          Label for the unicode field holding the Websphere MQ transmission queue listener name.
static java.lang.String MQE_FIELD_LABEL_LISTENER_STATE_STORE_ADAPTER
          Label holding the name of the WebSphere MQ Everyplace field that holds the name of the adapter class used by the listener to store its state.
static java.lang.String MQE_FIELD_LABEL_MAX_CONNECTION_IDLE_TIME
          The label for the integer field holding the maximum time value that a Websphere MQ client connection is kept open if it is idle.
static java.lang.String MQE_FIELD_LABEL_MQ_BRIDGE_ADAPTER_CLASS
          The label for the field holding the name of the Websphere MQ-bridge adapter class.
static java.lang.String MQE_FIELD_LABEL_MQ_Q_MGR_PROXY_NAME
          Label of the unicode field holding the name of the Websphere MQ queue manager proxy object.
static java.lang.String MQE_FIELD_LABEL_NAME
          Label holding the name of the WebSphere MQ Everyplace field that holds the name of the Websphere MQ-bridge, proxy, client connection, or listener.
static java.lang.String MQE_FIELD_LABEL_PASSWORD
          Label of the unicode field holding the password used with the user ID when the Websphere MQ-bridge talks to Websphere MQ.
static java.lang.String MQE_FIELD_LABEL_PORT
          Label for the WebSphere MQ Everyplace field that holds the port number of the Websphere MQ channel listener.
static java.lang.String MQE_FIELD_LABEL_RECEIVE_EXIT
          Label for the field holding the receive exit java class used on the underlying Websphere MQ Classes for Java client channel.
static java.lang.String MQE_FIELD_LABEL_RUN_STATE
          The label of the integer field that holds the snapshot of the current state of the administered object.
static java.lang.String MQE_FIELD_LABEL_SECONDS_WAIT_FOR_MSG
          Label for the field holding the seconds that the Websphere MQ transmission queue listener uses in the Websphere MQ Classes for Java client GetMessage(wait) method.
static java.lang.String MQE_FIELD_LABEL_SECURITY_EXIT
          Label for the unicode field holding the security exit used on the underlying Websphere MQ Classes for Java client channel.
static java.lang.String MQE_FIELD_LABEL_SEND_EXIT
          Label for the unicode field holding the send exit used on the underlying Websphere MQ Classes for Java client channel.
static java.lang.String MQE_FIELD_LABEL_STARTUP_RULE_CLASS
          The name of the unicode field holding the startup rule java class used by all the administered object registry entries.
static java.lang.String MQE_FIELD_LABEL_SYNC_Q_NAME
          The name of a field holding the SyncQName.
static java.lang.String MQE_FIELD_LABEL_SYNC_Q_PURGE_INTERVAL
          The name of an integer field holding the time interval between successive purges of the sync queue expressed in minutes.
static java.lang.String MQE_FIELD_LABEL_SYNC_Q_PURGER_RULES_CLASS
          label for unicode field containing the SyncQPurgerRulesClass.
static java.lang.String MQE_FIELD_LABEL_TRANSFORMER
          Label indicating which transformer class should be used to convert the Websphere MQ message to an WebSphere MQ Everyplace message before it is dispatched to the WebSphere MQ Everyplace network.
static java.lang.String MQE_FIELD_LABEL_UNDELIVERED_MESSAGE_RULE_CLASS
          Label for the field holding the Java class name of the rule to use when the message cannot be delivered to its destination.
static java.lang.String MQE_FIELD_LABEL_USER_ID
          Label for the unicode field which holds the userid assumed by the WebSphere MQ-bridge when talking to Websphere MQ.
 
Constructor Summary
MQeCharacteristicLabels()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MQE_FIELD_LABEL_NAME

public static final java.lang.String MQE_FIELD_LABEL_NAME

Label holding the name of the WebSphere MQ Everyplace field that holds the name of the Websphere MQ-bridge, proxy, client connection, or listener.

See Also:
Constant Field Values
Example:
 String fieldName = results.getUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_NAME);
 
 
 

MQE_FIELD_LABEL_CHILDREN

public static final java.lang.String MQE_FIELD_LABEL_CHILDREN

The label associated with the children of the WebSphere MQ Everyplace field. The value of the field holds a list of resource names.

The field is of type FieldsArray.

Each fields object within that array has a field whose name is MQE_FIELD_LABEL_CHILD

See Also:
MQE_FIELD_LABEL_CHILD, Constant Field Values
Example:
 MQeFields[] children = results.getFieldsArray(MQeCharacteristicLabels.MQE_FIELD_LABEL_CHILDREN);
 
 
 

MQE_FIELD_LABEL_CHILD

public static final java.lang.String MQE_FIELD_LABEL_CHILD

The label of the unicode field that holds the name of the child of an administered object.

For example, a child of a bridges resource is a bridge. Similarly, a child of an WebSphere MQ queue manager proxy is an WebSphere MQ client connection.

When queried, a bridge resource will return an FieldsArray,where each MQeFields object in the array refers to a single child resource. The name of that child resource is held within the MQeFields in a unicode field.

See Also:
MQE_FIELD_LABEL_CHILDREN, Constant Field Values
Example:
 String bridgeName = children[childIndex].getUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_CHILD);
 
 
 

MQE_FIELD_LABEL_RUN_STATE

public static final java.lang.String MQE_FIELD_LABEL_RUN_STATE

The label of the integer field that holds the snapshot of the current state of the administered object.

See Also:
MQeRunState, Constant Field Values
Example:
 int runState = results.getInt(MQeCharacteristicLabels.MQE_FIELD_LABEL_RUN_STATE);
 
 
 

MQE_FIELD_LABEL_AFFECT_CHILDREN

public static final java.lang.String MQE_FIELD_LABEL_AFFECT_CHILDREN

Used to control whether a start or delete action affects child objects when applied to an administered object.

See Also:
Constant Field Values
Example:
 results.putBoolean(MQeCharacteristicLabels.MQE_FIELD_LABEL_AFFECT_CHILDREN, true);
 
 

MQE_FIELD_LABEL_ADMINISTERED_OBJECT_CLASS

public static final java.lang.String MQE_FIELD_LABEL_ADMINISTERED_OBJECT_CLASS

Used by all administered object registry entries. Indicates the class that should be loaded when you want to instantiate the administered object.

The field contains a java class name, or the name of an MQe alias which resolves to a java class name. The '.class' extension is not required.

Changing the value configured here would allow a subclass of the default class to be plugged-in and used by MQe at run-time. This feature may be used by the IBM service team to 'patch' a configuration by configuring a 'debug' or changed version of the implementation.

Valid characters are in the ranges '0'..'9' 'A'..'Z' 'a'..'z' '-' '.' '%' '/'

The class is not loaded or checked at the time the administration message acts, bad input containing mis-spelt or unavailable classes will not result in errors until the bridge resource is re-started after the administration action has completed.

We recommend that only IBM staff change this value away from the default value.

The class name is name of the implementation of the particular administered resource. The value supplied will be defaulted depending on which administration message is using the resource.
Default values in this field.
Resource being configured Default field value
A bridge object com.ibm.mqe.mqbridge.MQeMQBridge
Websphere MQ Everyplace queue manager proxy com.ibm.mqe.mqbridge.MQeMQQMgrProxy
Websphere MQ Everyplace client connection com.ibm.mqe.mqbridge.MQeClientConnection
Websphere MQ transmission queue listener com.ibm.mqe.mqbridge.MQeListener

See Also:
Constant Field Values
Example:
 String adminClass = results.getUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_ADMINISTERED_OBJECT_CLASS);
 
 
 

MQE_FIELD_LABEL_STARTUP_RULE_CLASS

public static final java.lang.String MQE_FIELD_LABEL_STARTUP_RULE_CLASS

The name of the unicode field holding the startup rule java class used by all the administered object registry entries.

Indicates the class that should be used to decide whether or not the administered object is started up when the queue manager starts or not.

This field is optional. If unspecified it will default to refer to the com.ibm.mqe.mqbridge.MQeStartupRule class. This default causes the administered object, and all its' parents to start.

If this field is set to "" (blank) the administered object is not started.

See Also:
Constant Field Values
Example:
 String ruleClass = results.getUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_STARTUP_RULE_CLASS);
 
 
 

MQE_FIELD_LABEL_DESCRIPTION

public static final java.lang.String MQE_FIELD_LABEL_DESCRIPTION

A Unicode description field, for the convenience of the administrator, in which a description of an administered object can be placed.

No character or length restrictions are checked in the data.

We recommend that readable information is placed here, and that the value is not used programmatically in any way.

See Also:
Constant Field Values
Example:
 String desc = results.getUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_DESCRIPTION);
 
 
 

MQE_FIELD_LABEL_BRIDGE_NAME

public static final java.lang.String MQE_FIELD_LABEL_BRIDGE_NAME

A label for the unicode field that contains the name of the MQBridge object.

Note that for create operations this property is required. After the create operation has occurred, this field cannot be changed with an update action.

The value in this field forms part of the name information required to access resources beneath the bridge in the resources hierarchy.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_BRIDGE_NAME, "MQBridgeV100");
 
 

MQE_FIELD_LABEL_DEFAULT_TRANSFORMER

public static final java.lang.String MQE_FIELD_LABEL_DEFAULT_TRANSFORMER

Label holding the name of the WebSphere MQ Everyplace field that holds the name of the default transformer class that is used to convert from WebSphere MQ Everyplace to Websphere MQ and from Websphere MQ to WebSphere MQ Everyplace message formats.

An alias of the class could also be used, providing that the alias has previously been set up using the MQe class alias mechanism.

This value is used if no transformer is specified on the target queue definition.

This parameter is optional. No validation of the value in this field is performed. If not specified, the class MQeBaseTransformer will be used as a default.

When a message is passed in either direction between Websphere MQ and Websphere MQ Everyplace queue managers, this class will be dynamically loaded and used. As a consequence, at the time the administration message acts on the bridge resource, errors such as mis-spelt class names, or names of classes used where the class itself is not available will be found at a later time, when the bridge is re-started after the administration change.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_DEFAULT_TRANSFORMER,
     "com.ibm.mqe.mqbridge.MQeJMSRFHTransformer");
 
 

MQE_FIELD_LABEL_HEARTBEAT_INTERVAL

public static final java.lang.String MQE_FIELD_LABEL_HEARTBEAT_INTERVAL
The label holding the int value of the time interval (in minutes) which dictates the period of each "heartbeat" event.

The bridge implementation uses a heartbeat event to provide a regular low-priority stimulus to the bridge resources. The bridge resources perform low-priority monitoring, cleanup and timeout operations using this stimulus. For example, the closure of client connections to MQ which have remained idle beyond a specific timeout period.

This affects the accuracy of any timer mechanisms in the Websphere MQ-bridge, as these all use the heartbeat as a "tick" or their timer.

1 <=value<=60

Setting this value lower increases the accuracy of the timer-related heartbeat events.

Default value of 5 minutes.

See Also:
Constant Field Values
Example:
 results.putInt(MQeCharacteristicLabels.MQE_FIELD_LABEL_HEARTBEAT_INTERVAL, 5);
 
 

MQE_FIELD_LABEL_MQ_Q_MGR_PROXY_NAME

public static final java.lang.String MQE_FIELD_LABEL_MQ_Q_MGR_PROXY_NAME

Label of the unicode field holding the name of the Websphere MQ queue manager proxy object.

This field is used as addressing information to identify the proxy resource, or its' children.

See Also:
Constant Field Values
Example:
 String name = results.getUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_MQ_Q_MGR_PROXY_NAME);
 
 
 

MQE_FIELD_LABEL_HOST_NAME

public static final java.lang.String MQE_FIELD_LABEL_HOST_NAME

WebSphere MQ Everyplace field label for the hostname field.

Used to create connections to a Websphere MQ queue manager via the MQ Java classes. If not specified, then the MQ queue manager will be assumed to be on the same machine as the JVM, so the java bindings will be used to talk to the MQ system.

Note: A blank value is NOT the same as specifying "localhost".

If a blank value is used, then the bridge will use the MQ java bindings, which talk to MQ directly (which is faster), if you specify "localhost", although it has exactly the same effect, it causes the bridge to use the MQ java client classes, which means all talk to MQ is done through the network (TCP/IP) stack, which is slower by about 10%.

The value specified here is not validated at all until it is used. If invalid, a problem will occur when starting the MQ queue manager proxy resource.

If you use a symbolic name, it may take longer to detect that this machine is not switched on, or if the name server is not working. You can instead use the dotted decimal I/P address notation in this field if this causes problems.

See Also:
Constant Field Values
Example:
 // Using an IP address...
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_HOST_NAME, "127.0.0.1");
 // Using a host in the default domain
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_HOST_NAME, "lizzie");
 // Using a fully qualified hostname
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_HOST_NAME, "daytona2.hursley.ibm.com");
 // Using the WebSphere MQ  Java Bindings on localhost
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_HOST_NAME, ""); 
 
 

MQE_FIELD_LABEL_CLIENT_CONNECTION_NAME

public static final java.lang.String MQE_FIELD_LABEL_CLIENT_CONNECTION_NAME

Label for the WebSphere MQ Everyplace unicode field that holds the name of the client connection that the administration message is being sent to.

It should be no more than 20 characters long.

This characteristic forms part of the addressing information for some bridge resources.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_CLIENT_CONNECTION_NAME, "SYSTEM.DEF.SVRCONN");
 
 

MQE_FIELD_LABEL_PORT

public static final java.lang.String MQE_FIELD_LABEL_PORT

Label for the WebSphere MQ Everyplace field that holds the port number of the Websphere MQ channel listener.

The field with this name should be an Integer field.

Used to create connections to the MQ queue manager using the MQ Java classes beneath MQe.

If not specified, then the MQ queue manager will be assumed to be on the same machine as the JVM, so the java bindings will be used to talk to the MQ system.

valid range 0 .. MAXINT

See Also:
Constant Field Values
Example:
 results.putInt(MQeCharacteristicLabels.MQE_FIELD_LABEL_PORT, 1414);
 
 

MQE_FIELD_LABEL_USER_ID

public static final java.lang.String MQE_FIELD_LABEL_USER_ID

Label for the unicode field which holds the userid assumed by the WebSphere MQ-bridge when talking to Websphere MQ.

The field with this name should be a Unicode field.

"" (empty string) will be used as a default if not specified.

Optional field.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_USER_ID, "mqm");
 
 

MQE_FIELD_LABEL_PASSWORD

public static final java.lang.String MQE_FIELD_LABEL_PASSWORD

Label of the unicode field holding the password used with the user ID when the Websphere MQ-bridge talks to Websphere MQ.

An optional field of type Unicode.

"" will be used as a default value if it is not specified.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_PASSWORD, "chocolate");
 
 

MQE_FIELD_LABEL_SECURITY_EXIT

public static final java.lang.String MQE_FIELD_LABEL_SECURITY_EXIT

Label for the unicode field holding the security exit used on the underlying Websphere MQ Classes for Java client channel.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_SECURITY_EXIT, "my.SecurityExit");
 
 

MQE_FIELD_LABEL_RECEIVE_EXIT

public static final java.lang.String MQE_FIELD_LABEL_RECEIVE_EXIT

Label for the field holding the receive exit java class used on the underlying Websphere MQ Classes for Java client channel.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_RECEIVE_EXIT, "my.ReceiveExit");
 
 

MQE_FIELD_LABEL_SEND_EXIT

public static final java.lang.String MQE_FIELD_LABEL_SEND_EXIT

Label for the unicode field holding the send exit used on the underlying Websphere MQ Classes for Java client channel.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_SEND_EXIT, "my.SendExit");
 
 

MQE_FIELD_LABEL_CCSID

public static final java.lang.String MQE_FIELD_LABEL_CCSID

The label for the field holding the CCSID used on the underlying Websphere MQ Classes for Java client channel.

The field is of type integer. Default is 819.

See the Websphere MQ documentation for more detail on this parameter.

Valid values are 0 .. MAXINT

See Also:
Constant Field Values
Example:
 results.putInt(MQeCharacteristicLabels.MQE_FIELD_LABEL_CCSID, 819);
 
 

MQE_FIELD_LABEL_MQ_BRIDGE_ADAPTER_CLASS

public static final java.lang.String MQE_FIELD_LABEL_MQ_BRIDGE_ADAPTER_CLASS

The label for the field holding the name of the Websphere MQ-bridge adapter class. The Websphere MQ-bridge adapter is a Java class that allows messages sent to a Websphere MQ-bridge queue to be moved to the Websphere MQ system.

If this adapter is not specified, a default of com.ibm.mqe.mqbridge.MQeMQAdapter is used.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_MQ_BRIDGE_ADAPTER_CLASS, "com.ibm.mqe.mqbridge.MQeMQAdapter");
 
 

MQE_FIELD_LABEL_SYNC_Q_PURGER_RULES_CLASS

public static final java.lang.String MQE_FIELD_LABEL_SYNC_Q_PURGER_RULES_CLASS

label for unicode field containing the SyncQPurgerRulesClass.

This class is used when a message on the sync queue indicates a Websphere MQ Everyplace message has been put to the bridge, and not confirmed for some time.

This field is optional. If not supplied, a default of com.ibm.mqe.mqbridge.MQeSyncQueuePurgerRule is used. This rule simply reports in the MQe trace that this condition has been detected, and some details about the message which is in this state. User-coded subclasses of this rule can control whether such "debris" on the sync queue is removed or not.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_SYNC_Q_PURGER_RULES_CLASS, 
     "com.ibm.mqe.mqbridge.MQeSyncQueuePurgerRule");
 
 

MQE_FIELD_LABEL_MAX_CONNECTION_IDLE_TIME

public static final java.lang.String MQE_FIELD_LABEL_MAX_CONNECTION_IDLE_TIME
The label for the integer field holding the maximum time value that a Websphere MQ client connection is kept open if it is idle.

Connections that are idle for more than this time are closed by the Websphere MQ-bridge.

Each client connection object in the bridge maintains a "pool" of MQ java client connections to it's MQ system.

When an MQ connection becomes idle, through lack of use, whether it is in the pool or not, a timer is started. If the timer reaches the current value of this parameter, then the idle connection is thrown away. This is known as "reaping" the connection.

We do this in order to save resources when the connection is idle.

The connection pool is an efficiency device used within the MQ bridge.

Creation of new MQ client connections is an expensive operation.

If there are idle connections in the pool, then one of these is re-used, thus saving time/cpu in an expensive "get new connection" operation.

The higher this value, the more likely there is going to be an idle connection waiting in the connection pool, but the more client connections there are sitting around doing nothing, and consuming resources in the JVM.

Setting this value lower, decreases the likelyhood of an idle connection being available, but also decreases the likelyhood that idle connections will sit around doing nothing, so less resources will be consumed.

The time is expressed in units of 1 minute.

Valid range: 0 <= value <= 720 (12 hours). Default is 5 (minutes)

Setting this value to 0 effectively means "don't use a connection pool". Whenever an MQ client connection is idle, it is reaped/discarded. This is an inefficient way of using this parameter.

The granularity of any timeouts specified in the bridge are only checked with a timer granularity equal to the heartbeatInterval bridge parameter.

This parameter can have a direct effect on the length of time it takes to shut down an MQ system.

See Also:
Constant Field Values
Example:
 results.putInt(MQeCharacteristicLabels.MQE_FIELD_LABEL_MAX_CONNECTION_IDLE_TIME, 5);
 
 

MQE_FIELD_LABEL_SYNC_Q_NAME

public static final java.lang.String MQE_FIELD_LABEL_SYNC_Q_NAME

The name of a field holding the SyncQName.

Used to keep track of the state of progress through the assured delivery flows. The name of the sync queue which will be used by the MQ bridge on this MQ queue manager.

Default is "MQE.SYNCQ.DEFAULT"

Valid characters forming the name are: '0'-'9' 'A'-'Z' 'a'-'z' '_' '.' '%' '/'

The sync queue is an MQ queue which is used to keep track of which messages are in the process of moving from MQe to MQ.

If a message is part way through the logic which assures the once-only delivery of a message, then there will be another message on the sync queue, indicating how far through the logic the message has progressed.

If the MQe system is shut down cleanly, then the sync queue should be empty.

If the MQe system crashes, then some persistent state information is left in the sync queue, for use when the MQe system re-starts, and continues where it left off.

The name of the sync queue can be the same between client connections on the same bridge, or on different bridges, providing the send,receive and security exits used when talking to that sync queue are the same.

The sync queues must exist on the MQ queue manager for MQe->MQ message transfer to work. If the listener state class is the MQeMQAdapter, it means that this sync queue is used for storing persistent state information about the listeners also, so it must exist on MQ for the listeners, in order to move MQ messages to MQe.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_SYNC_Q_NAME, "com.ibm.mqe.mqbridge.MQeSyncQueueName");
 
 

MQE_FIELD_LABEL_SYNC_Q_PURGE_INTERVAL

public static final java.lang.String MQE_FIELD_LABEL_SYNC_Q_PURGE_INTERVAL

The name of an integer field holding the time interval between successive purges of the sync queue expressed in minutes.

When this interval elapses, the sync queue will be scanned. If a message which has not been confirmed is found on the Sync queue, then the syncQPurgerRules class is invoked to deal with this situation.

Values of less than zero are invalid.

A zero value indicates that the sync queue should never be purged.

A default is 60 minutes is used.

The actual granularity of the purging operation is dictated by the heartbeat-interval of the owning bridge definition. For example: If the hearbeat interval is set to 10 minutes, but the purge interval is set to 9 minutes, then the purge operation will occur after 10 minutes. If, however, the purge interval is changed to 11 minutes, the purge operation will occur after 20 minutes.

See Also:
Constant Field Values
Example:
 results.putInt(MQeCharacteristicLabels.MQE_FIELD_LABEL_SYNC_Q_PURGE_INTERVAL, 60);
 
 

MQE_FIELD_LABEL_LISTENER_NAME

public static final java.lang.String MQE_FIELD_LABEL_LISTENER_NAME

Label for the unicode field holding the Websphere MQ transmission queue listener name. The listener name corresponds to the name of the transmit queue on Websphere MQ.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_LISTENER_NAME, "MQE.XMITQ");
 
 

MQE_FIELD_LABEL_DEAD_LETTER_Q_NAME

public static final java.lang.String MQE_FIELD_LABEL_DEAD_LETTER_Q_NAME

Label for the unicode field holding the name of the dead letter queue on the Websphere MQ system.

Valid characters forming the name are: '0'-'9' 'A'-'Z' 'a'-'z' '_' '.' '%' '/'

The dead letter queue name is optional. If not specified, the value of "SYSTEM.DEAD.LETTER.QUEUE" will be used.

If the gateway finds it cannot deliver a message from MQ to MQe ,possibly due to a size restriction on the target MQe queue, then the message cannot be processed by the gateway, and will be placed on a dead letter queue on the MQ system.

This parameter defines which queue the erroneous message is delivered to.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_DEAD_LETTER_Q_NAME, "MQE.DLQ");
 
 

MQE_FIELD_LABEL_SECONDS_WAIT_FOR_MSG

public static final java.lang.String MQE_FIELD_LABEL_SECONDS_WAIT_FOR_MSG

Label for the field holding the seconds that the Websphere MQ transmission queue listener uses in the Websphere MQ Classes for Java client GetMessage(wait) method. (For development use only).

See Also:
Constant Field Values
Example:
 results.putInt(MQeCharacteristicLabels.MQE_FIELD_LABEL_SECONDS_WAIT_FOR_MSG, 10);
 
 

MQE_FIELD_LABEL_UNDELIVERED_MESSAGE_RULE_CLASS

public static final java.lang.String MQE_FIELD_LABEL_UNDELIVERED_MESSAGE_RULE_CLASS

Label for the field holding the Java class name of the rule to use when the message cannot be delivered to its destination.

The name of a class such as the com.ibm.mqe.mqbridge.MQeUndeliveredMessageRule class.

When a message moving from MQ to MQe cannot be delivered, this rule class is consulted to decide what action the listener should take. ie: Should it wait for a while, and retry ? perhaps stop the listener with a failure ? or move the undelivered message onto the MQ dead letter queue ?

The default behaviour, if a null or blank class name is specified, is to assume a rule which consults the message reporting options, to see if the message should be put onto the MQ dead letter queue or not.

The field is an optional unicode field.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_UNDELIVERED_MESSAGE_RULE_CLASS,
     "com.ibm.mqe.mqbridge.MQeUndeliveredMessageRule");
 
 

MQE_FIELD_LABEL_LISTENER_STATE_STORE_ADAPTER

public static final java.lang.String MQE_FIELD_LABEL_LISTENER_STATE_STORE_ADAPTER

Label holding the name of the WebSphere MQ Everyplace field that holds the name of the adapter class used by the listener to store its state.

In order to provide assured message delivery of persistent messages, the listener class uses an adapter to store state information. This is the class name ,or alias of the classname, of the adapter which will be loaded to manage the storing and recovery of the state information to or from disk.

Two adapters are currently supported MQeDiskFieldsAdapter which stores state information on the local filesystem, and com.ibm.mqe.mqbridge.MQeMQAdapter which stores state information on the MQ server.

The disk adapter is generally quicker than using the MQ-based adapter.

The classname can be followed by a colon separated list of arguments, although only the MQeDiskFieldsAdapter uses them. In this case MQeDiskFieldsAdapter can be followed by a colon and a fully qualified path name to a file which will contain the state information. For example, in order to use the disk fields adapter to store the listener's state information in the file c:\folder\state.sta, the listener-state-store-adapter field should contain the value com.ibm.mqe.adapters.MQeDiskFieldsAdapter:c:\folder\state.sta

A file specified by this parameter need not exist already.

If the supplied path name ends in a folder separator (e.g. '\' in DOS) then it is assumed that the supplied parameter is a directory, and creates a state file called <ListenerName>-listener.sta inside it (where <ListenerName> is the name of the listener, from the registry entry).

If no path name is supplied, the listener uses a file called <ListenerName>-listener.sta inside the current Java working directory

If the MQeMQAdapter is being used, no additional arguments are required.

See Also:
Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_LISTENER_STATE_STORE_ADAPTER,
     "com.ibm.mqe.adapters.MQeDiskFieldsAdapter");
 
 

MQE_FIELD_LABEL_FLOWS_PER_COMMIT

public static final java.lang.String MQE_FIELD_LABEL_FLOWS_PER_COMMIT

Label holding the name of the WMQe field which indicates how many messages the listener conveys to MQe before the sync queue on the Websphere MQ system is cleaned up.

Different values here have no functional difference, but performance may be impacted if this value is set too low.

The listener executes a logic flows when it transfers a single message from WMQ to WMQe. Each flow causes some debris state information to build-up on the MQ sync queue, if the ListenerStateStoreAdapter is set to use the MQeMQAdapter class, and not the DiskFieldsAdapter.

This parameter tells the listener to clean up the sync queue after <n> messages have been moved to WMQe.

The "cleaning the sync queue" operation requires that the sync queue is manipulated under a unit of work, and the changes which removed now-irrelevent debris messages are committed.

Commit is an expensive operation in Websphere MQ, so if this is set to a higher number, then debris-removal will be done in one more-efficient pass, rather than lots of passes which remove fewer debris messages. However, each flow expands the sync queue size, so setting this value higher also increases the storage required on the MQ sync queue.

It is used to balance storage versus time of execution.

The field with this name is an integer field. The default value is 100.

Value should be 0 or greater.

See Also:
Constant Field Values
Example:
 results.putInt(MQeCharacteristicLabels.MQE_FIELD_LABEL_FLOWS_PER_COMMIT, 100);
 
 

MQE_FIELD_LABEL_TRANSFORMER

public static final java.lang.String MQE_FIELD_LABEL_TRANSFORMER

Label indicating which transformer class should be used to convert the Websphere MQ message to an WebSphere MQ Everyplace message before it is dispatched to the WebSphere MQ Everyplace network.

This is the name of the java class which will be used to convert the MQ message into an MQe message. The class specified must implement the MQeTransformerInterface

When the messages is taken from MQ by the listener, it gets transformed into an MQe format message using the specified transformer.

If the transformer class is specified as "null" or a blank string, then the DefaultTransformerClass parameter provided on the bridge configuration parameters will be used as the transformer. If the default is also set to null/blank, then no messages are transferrable.

See Also:
MQeMQBridgeAdminMsg, MQE_FIELD_LABEL_DEFAULT_TRANSFORMER, Constant Field Values
Example:
 results.putUnicode(MQeCharacteristicLabels.MQE_FIELD_LABEL_TRANSFORMER, 
     "com.ibm.mqe.mqbridge.MQeJMSRFHTransformer");
 
 
Constructor Detail

MQeCharacteristicLabels

public MQeCharacteristicLabels()

Websphere MQ Everyplace