Websphere MQ Everyplace

com.ibm.mqe
Class MQeRule

java.lang.Object
  |
  +--com.ibm.mqe.MQe
        |
        +--com.ibm.mqe.MQeRule
All Implemented Interfaces:
MQeExceptionCodes
Direct Known Subclasses:
DestructiveMQSyncQueuePurgerRule, MQeAttributeRule, MQeQueueManagerRule, MQeQueueRule, MQeStartupRule, MQeSyncQueuePurgerRule, MQeUndeliveredMessageRule, UndeliveredMQMessageToDLQRule

public class MQeRule
extends MQe

This is a superclass from which all WebSphere MQ Everyplace rule classes derive their basic function.

This class is a descendant of MQe

Note:Any unexpected exception thrown from a user's rule method (for instance, a null pointer exception) will result in the default behaviour being applied as though the rule invocation had never occurred.


Field Summary
 
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
MQeRule()
           Constructs an MQeRule object.
 
Method Summary
 void activate(java.lang.Object thisOwner)
           Called when the rule is activated.
 void close()
          This method signals that the rule should be deactivated.
 MQeRule newRule(java.lang.Object owner, MQeRule thisRule)
          Authorise change of rule class.
 
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, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MQeRule

public MQeRule()

Constructs an MQeRule object.

Throws:
None
Method Detail

activate

public void activate(java.lang.Object thisOwner)

Called when the rule is activated.

This method is called after the constructor but before the rule is used. Subclasses may override this method.

Parameters:
thisOwner - The object that owns this rule. Depending on the type of rule, it could be a reference to a queue manager, a queue,or some other WebSphere MQ Everyplace object.
Returns:
None
Throws:
None

close

public void close()

This method signals that the rule should be deactivated. Subclasses may override this method.

Returns:
None
Throws:
None

newRule

public MQeRule newRule(java.lang.Object owner,
                       MQeRule thisRule)
                throws java.lang.Exception

Authorise change of rule class.

The current rule is being used to dictate the behavior of the owning object. This method is called when the owning object wishes to change the current rule for a different rule, to see if the current rule allows another rule to replace it.

By default, the MQeRule class allows any non-null MQeRule object reference to replace it.

If you want to prevent a rule being replaced with a different rule, override this rule in a subclass, and throw an exception, for example, code=Except_Rule.

Parameters:
owner - The object that owns this rule. The currrent rule class determines the behavior of this method.
thisRule - A reference to a descendent of MQeRule that may or may not replace the current rule.
Returns:
The rule that will become the active rule for the owner object.
Throws:
MQeException - Except_Rule, If this rule does not allow the active rule for the owning object to be changed.
java.lang.Exception
Example:
 public MQeRule newRule(Object owner, MQeRule thisRule) throws Exception {
     
     throw new MQeException(MQe.Except_Rule, "Disallowed by rule");
 
 }
 
 

Websphere MQ Everyplace