Websphere MQ Everyplace

com.ibm.mqe.administration
Class MQeStoreAndForwardQueueAdminMsg

java.lang.Object
  |
  +--com.ibm.mqe.MQe
        |
        +--com.ibm.mqe.MQeFields
              |
              +--com.ibm.mqe.MQeMsgObject
                    |
                    +--com.ibm.mqe.MQeAdminMsg
                          |
                          +--com.ibm.mqe.administration.MQeQueueAdminMsg
                                |
                                +--com.ibm.mqe.administration.MQeRemoteQueueAdminMsg
                                      |
                                      +--com.ibm.mqe.administration.MQeStoreAndForwardQueueAdminMsg
All Implemented Interfaces:
MQeExceptionCodes

public class MQeStoreAndForwardQueueAdminMsg
extends MQeRemoteQueueAdminMsg

This class is used to manage Websphere MQ Everyplace store and forward queues.

The class extends MQeRemoteQueueAdminMsg which provides most of the administration capability for remote queues. This class adds additional actions and features for managing store and forward queues.

Unlike a remote queue that handles messages for one queue on one remote queue manager, this type of queue handles messages for multiple queue managers. A store and forward queue can be configured to run in one of two modes:

The main addition to this subclass is the ability to add and remove the names of queue managers for which the store-and-forward queue can hold messages. To add and delete target queue managers, use the actions Action_AddQueueManager and Action_RemoveQueueManager. Multiple target queue manager names can be manipulated with one administration message by:

If the store-and-forward queue is to push messages to the next queue manager, the queue manager name attribute of the store-and-forward queue must be the name of the next queue manager. A connection with the same name as the next queue manager must be configured. The store-and-forward queue uses this connection as the transport mechanism for pushing messages to the next hop.

If the store-and-forward queue is to hold messages awaiting collection (pulled), the queue manager name attribute of the store-and-forward queue should

This type of queue is normally but not necessarily defined on a server or gateway. Multiple store-and-forward queues can exist on a single queue manager, but a target queue manager can only be on one store and forward queue.

For information on basic administration concepts see MQeAdminMsg and for basic information on managing queues see MQeQueueAdminMsg and MQeRemoteQueueAdminMsg.

Properties of the StoreAndForward Queue resource (in addition to those inherited from MQeAdminMsg)
Field name Actions using these fields
MQeQueueAdminMsg.Queue_QMgrName Required in all admin actions to identify which queue object to act on
MQeQueueAdminMsg.Queue_Active MQeAdminMsg.Action_Inquire.
MQeQueueAdminMsg.Queue_Description MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
MQeQueueAdminMsg.Queue_FileDesc MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create,
MQeQueueAdminMsg.Queue_Cryptor MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
MQeQueueAdminMsg.Queue_Authenticator MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
MQeQueueAdminMsg.Queue_Compressor MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
MQeQueueAdminMsg.Queue_TargetRegistry MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
MQeQueueAdminMsg.Queue_AttrRule MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
MQeQueueAdminMsg.Queue_Rule MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
MQeQueueAdminMsg.Queue_MaxMsgSize MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
MQeQueueAdminMsg.Queue_Priority MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
MQeQueueAdminMsg.Queue_Expiry MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
MQeQueueAdminMsg.Queue_MaxQSize MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
MQeQueueAdminMsg.Queue_CurrentSize MQeAdminMsg.Action_Inquire.
MQeQueueAdminMsg.Queue_CreationDate MQeAdminMsg.Action_Inquire.
MQeRemoteQueueAdminMsg.Queue_Transporter MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.
Queue_QMgrNameList MQeAdminMsg.Action_Inquire, MQeAdminMsg.Action_Create, MQeAdminMsg.Action_Update.


Field Summary
static int Action_AddQueueManager
          Action to use when adding a target queue manager.
static int Action_RemoveQueueManager
          Action to use when removing a target queue manager.
static java.lang.String Queue_QMgrNameList
          String used to identify the field in the message representing a set of target queue managers.
 
Fields inherited from class com.ibm.mqe.administration.MQeRemoteQueueAdminMsg
Queue_CloseIdle, Queue_DefaultTransporter, Queue_Transporter, Queue_TransporterXOR
 
Fields inherited from class com.ibm.mqe.administration.MQeQueueAdminMsg
Queue_Active, Queue_Asynchronous, Queue_AttrRule, Queue_Authenticator, Queue_Compressor, Queue_CreationDate, Queue_Cryptor, Queue_CurrentSize, Queue_Description, Queue_Expiry, Queue_FileDesc, Queue_MaxMsgSize, Queue_MaxQSize, Queue_Mode, Queue_NoLimit, Queue_Priority, Queue_QAliasNameList, Queue_QMgrName, Queue_RegistryNone, Queue_RegistryQMgr, Queue_RegistryQueue, Queue_Rule, Queue_Synchronous, Queue_TargetRegistry
 
Fields inherited from class com.ibm.mqe.MQeAdminMsg
Action_AddAlias, Action_Create, Action_Delete, Action_Inquire, Action_InquireAll, Action_RemoveAlias, Action_Start, Action_Stop, Action_Unknown, Action_Update, Admin_Action, Admin_Class, Admin_Errors, Admin_MaxAttempts, Admin_Name, Admin_Parms, Admin_RC, Admin_Reason, Admin_TargetQMgr, RC_Fail, RC_Mixed, RC_Success
 
Fields inherited from class com.ibm.mqe.MQeFields
ArraySeparator, TypeArrayElements, TypeAscii, TypeBoolean, TypeByte, TypeDouble, TypeFields, TypeFloat, TypeInt, TypeLong, TypeShort, TypeUnicode, TypeUnTyped
 
Fields inherited from class com.ibm.mqe.MQe
Admin_Queue_Name, Admin_Reply_Queue_Name, copyright, DeadLetter_Queue_Name, Event_Activate, Event_Attribute, Event_Authenticate, Event_Close, Event_Logoff, Event_Logon, Event_MiniCert_Validate, Event_Queue, Event_QueueManager, Event_UserBase, JMS_Version, MQ_Headers, MQe_Log_Audit_Failure, MQe_Log_Audit_Success, MQe_Log_Error, MQe_Log_Information, MQe_Log_Success, MQe_Log_Warning, Msg_BackoutCount, Msg_CorrelID, Msg_ExpireTime, Msg_LockID, Msg_MsgID, Msg_OriginQMgr, Msg_Priority, Msg_ReplyToQ, Msg_ReplyToQMgr, Msg_Resend, Msg_Style, Msg_Style_Datagram, Msg_Style_Reply, Msg_Style_Request, Msg_Time, Msg_WrapMsg, sccsid, System_Default_Queue_Name, version
 
Fields inherited from interface com.ibm.mqe.MQeExceptionCodes
Except_Active, Except_AdapterException, Except_AdapterMissingRemoteAddress, Except_Admin_ActionNotSupported, Except_Admin_InvalidField, Except_Admin_NotAdminMsg, Except_AdminAction, Except_Authenticate, Except_BadRequest, Except_BridgeListener, Except_Chnl_Attributes, Except_Chnl_ID, Except_Chnl_Limit, Except_Chnl_Overrun, Except_Closed, Except_Con_AdapterRequired, Except_Con_AliasAlreadyExists, Except_Con_AlreadyExists, Except_Con_InvalidName, Except_Connect_Failure, Except_ConnectonType, Except_Cryptor, Except_Data, Except_Duplicate, Except_JmxProperties, Except_Listener, Except_MessageStore, Except_MiniCertReg_ActivateFailed, Except_MiniCertReg_BadPIN, Except_MiniCertReg_NotOpen, Except_NotActive, Except_NotAllowed, Except_NotFound, Except_NotSupported, Except_PrivateReg_ActivateFailed, Except_PrivateReg_BadPIN, Except_PrivateReg_NotOpen, Except_PublicReg_ActivateFailed, Except_PublicReg_InvalidAddress, Except_PublicReg_InvalidRequest, Except_Q_Full, Except_Q_InvalidName, Except_Q_InvalidPriority, Except_Q_MsgTooLarge, Except_Q_NoMatchingMsg, Except_Q_TargetRegistryRequired, Except_QMgr_Activated, Except_QMgr_AlreadyExists, Except_QMgr_InvalidQMgrName, Except_QMgr_InvalidQName, Except_QMgr_NotActive, Except_QMgr_NotBridgeEnabled, Except_QMgr_NotConfigured, Except_QMgr_QDoesNotExist, Except_QMgr_QExists, Except_QMgr_QNotEmpty, Except_QMgr_RegistryDataVersion, Except_QMgr_UnknownQMgr, Except_QMgr_WrongQType, Except_Reg_AddFailed, Except_Reg_AlreadyExists, Except_Reg_AlreadyOpen, Except_Reg_CRTKeyDecFailed, Except_Reg_CRTKeySignFailed, Except_Reg_DeleteFailed, Except_Reg_DeleteRegistryFailed, Except_Reg_DoesNotExist, Except_Reg_InvalidSession, Except_Reg_ListFailed, Except_Reg_NotDefined, Except_Reg_NotSecure, Except_Reg_NullName, Except_Reg_OpenFailed, Except_Reg_ReadFailed, Except_Reg_RenameFailed, Except_Reg_ResetPINFailed, Except_Reg_SearchFailed, Except_Reg_UpdateFailed, Except_RemoteException, Except_Rule, Except_S_BadIntegrity, Except_S_BadSubject, Except_S_CertificateExpired, Except_S_Cipher, Except_S_InvalidAttribute, Except_S_InvalidSignature, Except_S_MiniCertNotAvailable, Except_S_MissingSection, Except_S_NoPresetKeyAvailable, Except_S_RegistryNotAvailable, Except_Stopped, Except_Syntax, Except_TimeOut, Except_Transporter, Except_TriggerTransmission, Except_Trnsport_QMgr, Except_Trnsport_Request, Except_Type, Except_UdpipAdapterStateException, Except_UdpipAdapterTimeOut, Except_UdpipAdapterUnableToConfirmSuccess, Except_UnCoded, Except_Uncontactable_DontTransmit
 
Constructor Summary
MQeStoreAndForwardQueueAdminMsg()
          Default constructor.
MQeStoreAndForwardQueueAdminMsg(java.lang.String qMgrName, java.lang.String qName)
          This constructor takes the name of the queue that is to be managed and puts it into the admin msg.
 
Method Summary
 void addQueueManager(java.lang.String queueManager)
          Setup the message to add a target queue manager.
 void removeQueueManager(java.lang.String queueManager)
          Setup the message to remove a target queue manager.
 
Methods inherited from class com.ibm.mqe.administration.MQeQueueAdminMsg
addAlias, changeAlias, removeAlias, setName
 
Methods inherited from class com.ibm.mqe.MQeAdminMsg
characteristics, create, delete, duplicate, getAction, getErrorFields, getFieldInError, getInputFields, getMaxAttempts, getName, getOutputFields, getRC, getReason, getTargetQMgr, inquire, inquireAll, setAction, setMaxAttempts, setName, setTargetQMgr, update
 
Methods inherited from class com.ibm.mqe.MQeMsgObject
getMsgUIDFields, getOriginQMgr, getTimeStamp, putOriginQMgr, resetMsgUIDFields, unwrapMsgObject
 
Methods inherited from class com.ibm.mqe.MQeFields
contains, copy, copy, dataType, deepCopy, delete, dump, dumpedType, dumpToString, equals, fields, getArrayLength, getArrayOfByte, getArrayOfDoubleAsLong, getArrayOfFloatAsInt, getArrayOfInt, getArrayOfLong, getArrayOfShort, getAscii, getAsciiArray, getAttribute, getBoolean, getByte, getDoubleAsLong, getFields, getFieldsArray, getFloatAsInt, getInt, getIntArray, getLong, getLongArray, getObject, getShort, getShortArray, getUnicode, getUnicodeArray, includes, isEqualTo, putArrayLength, putArrayOfByte, putArrayOfDoubleAsLong, putArrayOfFloatAsInt, putArrayOfInt, putArrayOfLong, putArrayOfShort, putAscii, putAsciiArray, putBoolean, putByte, putByteArray, putDoubleAsLong, putFields, putFieldsArray, putFloatAsInt, putInt, putIntArray, putLong, putLongArray, putObject, putShort, putShortArray, putUnicode, putUnicodeArray, rename, restore, restoreFromString, restoreFromString, restoreFromString, setAttribute, updateValue
 
Methods inherited from class com.ibm.mqe.MQe
abbreviate, alias, asciiToByte, byteToAscii, byteToHex, byteToHex, byteToInt, byteToLong, byteToShort, byteToUnicode, fileSeparator, getEventLogHandler, hexToAscii, hexToByte, intToByte, isCLDC, loadClass, loadObject, log, setEventLogHandler, setLoader, sliceByteArray, type, unicodeToByte, uniqueValue
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

Action_AddQueueManager

public static final int Action_AddQueueManager
Action to use when adding a target queue manager.

The store and forward queue will store messages on behalf of the target queue manager(s).

See Also:
MQeAdminMsg.Admin_Action, Constant Field Values

Action_RemoveQueueManager

public static final int Action_RemoveQueueManager
Action to use when removing a target queue manager.

See Also:
Constant Field Values

Queue_QMgrNameList

public static final java.lang.String Queue_QMgrNameList
String used to identify the field in the message representing a set of target queue managers.

Multiple target queue manager names can be assigned to a queue. This field holds the set of target queue managers.

The field is of type ascii array

See Also:
Constant Field Values
Constructor Detail

MQeStoreAndForwardQueueAdminMsg

public MQeStoreAndForwardQueueAdminMsg()
                                throws java.lang.Exception

Default constructor.


MQeStoreAndForwardQueueAdminMsg

public MQeStoreAndForwardQueueAdminMsg(java.lang.String qMgrName,
                                       java.lang.String qName)
                                throws java.lang.Exception
This constructor takes the name of the queue that is to be managed and puts it into the admin msg.

This constructor uses the MQeQueueAdminMsg.setName(String,String) method to put the name into the administratoin message parameters field

Parameters:
qMgrName - name of the destination queue manager.
qName - name of the Queue
Throws:
java.lang.Exception
See Also:
MQeQueueAdminMsg.setName(String, String)
Method Detail

addQueueManager

public void addQueueManager(java.lang.String queueManager)
                     throws java.lang.Exception
Setup the message to add a target queue manager.

A method that assists in setting up an administration message to add one or more target queue managers to a queue. Multiple targets can be added in one message by calling the method multiple times. The message is set to perform action Action_AddQueueManager.

The following basic fields are set:

The following fields are set in the Admin_Parms field.

The name of the queue to add an alias to is specified using method MQeQueueAdminMsg.setName(String, String) or using the constructor that takes the resource name or by setting the MQeAdminMsg.Admin_Name and MQeQueueAdminMsg.Queue_QMgrName fields

Parameters:
queueManager - name of a target queue manager.
Throws:
java.lang.Exception
See Also:
Action_AddQueueManager, Queue_QMgrNameList
Example:
 //Add target queue managers to a S&F queue
 MQeStoreAndForwardQueueAdminMsg msg =
     new MQeStoreAndForwardQueueAdminMsg();
 
 msg.setName("ExampleQM", "ExampleQ");
 
 //Set the action required and its parameters into the message
 msg.addQueueManager("Client129345");
 msg.addQueueManager("Client129387");
 
 

removeQueueManager

public void removeQueueManager(java.lang.String queueManager)
                        throws java.lang.Exception
Setup the message to remove a target queue manager.

A method that assists in setting up an administration message to remove one or more target queue managers from a queue. Multiple targets can be removed in one message by calling the method multiple times. The message is set to perform action Action_RemoveQueueManager.

The following basic fields are set:

The following fields are set in the Admin_Parms field.

The name of the queue to remove an alias to is specified using method MQeQueueAdminMsg.setName(String, String) or using the constructor that takes the resource name or by setting the MQeAdminMsg.Admin_Name and MQeQueueAdminMsg.Queue_QMgrName fields

Parameters:
queueManager - name of a target queue manager.
Throws:
java.lang.Exception
See Also:
Action_RemoveQueueManager, Queue_QMgrNameList
Example:
 // Remove target queue managers from S&F queue
 MQeStoreAndForwardQueueAdminMsg msg =
     new MQeStoreAndForwardQueueAdminMsg();
 
 msg.setName("ExampleQM", "ExampleQ");
 
 //Set the action required and its parameters into the message
 msg.removeQueueManager("Client129345");
 msg.removeQueueManager("Client129387");
 
 

Websphere MQ Everyplace