Websphere MQ Everyplace

com.ibm.mqe.adapters
Class MQeMirroredDiskFieldsAdapter

java.lang.Object
  |
  +--com.ibm.mqe.MQe
        |
        +--com.ibm.mqe.MQeAdapter
              |
              +--com.ibm.mqe.adapters.MQeDiskFieldsAdapter
                    |
                    +--com.ibm.mqe.adapters.MQeMirroredDiskFieldsAdapter
All Implemented Interfaces:
MQeExceptionCodes

public class MQeMirroredDiskFieldsAdapter
extends MQeDiskFieldsAdapter

This extension of the standard MQe disk adapter, com.ibm.mqe.adapters.MQeDiskFieldsAdapter, duplicates all function found in the writeObject() method of that class, but replaces the standard Java I/O operations with native 4690 mirrored file operations using the com.ibm.OS4690.POSFile class.

The default implementation creates a mirrored file that is distributed on close, and whose writes are flushed immediately. Finally, a full close is performed.


Field Summary
 
Fields inherited from class com.ibm.mqe.MQeAdapter
MQe_Adapter_BYTECOUNTS, MQe_Adapter_EXISTS, MQe_Adapter_FILENAME, MQe_Adapter_FILTER, MQe_Adapter_LIST, MQe_Adapter_READ, MQe_Adapter_RENAME, MQe_Adapter_RETRIES, MQe_Adapter_UPDATE, MQe_Adapter_WRITE
 
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
MQeMirroredDiskFieldsAdapter()
           
 
Method Summary
 void activate(java.lang.String fileDesc, java.lang.Object param, java.lang.Object options, int lrecl, int noRec)
          Calls the base class activate.
 void erase(java.lang.Object opt)
          Calls the base class erase.
 java.lang.String[] listMatchingFiles()
          Returns a list of files matching the filter held by this adapter.
 java.lang.Object readObject(java.lang.Object obj)
          Duplicates the behavior of the base class readObject.
 void writeObject(java.lang.Object opt, java.lang.Object data)
          Writes an MQeFields object to disk.
 
Methods inherited from class com.ibm.mqe.adapters.MQeDiskFieldsAdapter
close, control, open, status
 
Methods inherited from class com.ibm.mqe.MQeAdapter
read
 
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

MQeMirroredDiskFieldsAdapter

public MQeMirroredDiskFieldsAdapter()
Method Detail

writeObject

public void writeObject(java.lang.Object opt,
                        java.lang.Object data)
                 throws java.lang.Exception
Writes an MQeFields object to disk.

Note: Overides the base class by writing to a 4690 POSFile

Overrides:
writeObject in class MQeDiskFieldsAdapter
Parameters:
opt - Object not used.
data - Object MQeFields object to dump to disk.
Returns:
void
Throws:
java.lang.Exception
java.lang.Exception -

Usage Example :

mydfa.writeObject(null,myMQeFields);

listMatchingFiles

public java.lang.String[] listMatchingFiles()
Returns a list of files matching the filter held by this adapter. This method uses fields of the base class which are not accessible via getters, including filePath and filter.

Note: This method is case-insensitive to accomodate 4690 Java

Returns:
an array of Strings where each String is a filename without its path prepended

activate

public void activate(java.lang.String fileDesc,
                     java.lang.Object param,
                     java.lang.Object options,
                     int lrecl,
                     int noRec)
              throws java.lang.Exception
Calls the base class activate.

Overrides:
activate in class MQeDiskFieldsAdapter
Parameters:
fileDesc - A String containing the name of this adapter, or its' alias, followed by a colon, followed by the directory path to be opened. Note: If you want to open a file the name of the file will be specified on the open. Just the path to the file here.
param - Object that sets the adapter's parameter value. Can supply an MQeAttribute object here that will cause the data to be encoded on disk.
options - Object, A String that specifies the open options:
        MQe_Adapter_READ   - read  the file
        MQe_Adapter_WRITE  - write the file
        MQe_Adapter_UPDATE - read and write the file
 
lrecl - Not used.
Returns:
void
Throws:
java.lang.Exception -

Usage Example :

mydfa.activate("./mydir/mysubdir",null,MQe.MQeAdapter_READ,0,0);

See Also:
MQeDiskFieldsAdapter.readObject(java.lang.Object), MQeDiskFieldsAdapter.writeObject(java.lang.Object, java.lang.Object)

erase

public void erase(java.lang.Object opt)
           throws java.lang.Exception
Calls the base class erase.

Overrides:
erase in class MQeDiskFieldsAdapter
Parameters:
opt - Object String that contains the file name to be deleted. Note: Before passing to the OS's delete routine, the file name is appended to the current FileDesc value.
Returns:
void
Throws:
java.lang.Exception -

Usage Example :

mydfa.erase("myfile.txt");

readObject

public java.lang.Object readObject(java.lang.Object obj)
                            throws java.lang.Exception
Duplicates the behavior of the base class readObject. If the object specified as an argument is an MQeFields object, the base class is called directly. Otherwise, the data originates from a POSFile which is handled internally.

Overrides:
readObject in class MQeDiskFieldsAdapter
Parameters:
obj - Object MQeFields object that can be used to provide a filter within the directory object. Otherwise null.
Returns:
the dumped Object whose content is stored in the current file
Throws:
java.lang.Exception -

Usage Example :

MQeFields myFields =(MQeFields)mydfa.readObject(null);

Websphere MQ Everyplace