Package com.ibm.mq.headers
Class MQMD
java.lang.Object
com.ibm.mq.jmqi.JmqiObject
com.ibm.mq.headers.internal.Header
com.ibm.mq.headers.MQMD1
com.ibm.mq.headers.MQMD
- All Implemented Interfaces:
MQChainable,MQData,MQHeader
MQMD (message descriptor) header class. This class represents both version 1 and version 2 MQMD
structures. The default version is version 2.
In addition to being able to read or write its content from a message body or byte stream, this class can get or set field values from the MQMD portion of an MQMessage object using the copyFrom or copyTo methods.
struct tag MQMD {
MQCHAR4 StrucId; // Structure identifier
MQLONG Version; // Structure version number
MQLONG Report; // Options for report messages
MQLONG MsgType; // Message type
MQLONG Expiry; // Message lifetime
MQLONG Feedback; // Feedback or reason code
MQLONG Encoding; // Numeric encoding of message data
MQLONG CodedCharSetId; // Character set identifier of message data
MQCHAR8 Format; // Format name of message data
MQLONG Priority; // Message priority
MQLONG Persistence; // Message persistence
MQBYTE24 MsgId; // Message identifier
MQBYTE24 CorrelId; // Correlation identifier
MQLONG BackoutCount; // Backout counter
MQCHAR48 ReplyToQ; // Name of reply queue
MQCHAR48 ReplyToQMgr; // Name of reply queue manager
MQCHAR12 UserIdentifier; // User identifier
MQBYTE32 AccountingToken; // Accounting token
MQCHAR32 ApplIdentityData; // Application data relating to identity
MQLONG PutApplType; // Type of application that put the message
MQCHAR28 PutApplName; // Name of application that put the message
MQCHAR8 PutDate; // Date when message was put
MQCHAR8 PutTime; // Time when message was put
MQCHAR4 ApplOriginData; // Application data relating to origin
MQBYTE24 GroupId; // Group identifier
MQLONG MsgSeqNumber; // Sequence number of logical message within group
MQLONG Offset; // Offset of data in physical message from start of logical message
MQLONG MsgFlags; // Message flags
MQLONG OriginalLength; // Length of original message
}
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.ibm.mq.headers.MQHeader
MQHeader.Field -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intSize of a Version 1 MQMD structure in bytesstatic final intSize of a version 2 MQMD structure in bytesFields inherited from class com.ibm.mq.headers.internal.Header
DEFAULT_CCSID, DEFAULT_ENCODING, delegateFields inherited from class com.ibm.mq.jmqi.JmqiObject
COMP_JM, COMP_JN, COMP_JO -
Constructor Summary
ConstructorsConstructorDescriptionMQMD()Constructs an MQMD instance with default field values.MQMD(int version) Constructs an MQMD instance of the given version with default field values.Constucts an MQMD populated from the content of an MQMD or MQMD1 instance.Constructs an MQMD instance populated from an byte stream representing an MQ Message as stored in the queue.Constructs an MQMD instance populated from a DataInput source. -
Method Summary
Modifier and TypeMethodDescriptionSets the MQMD extension fields in this MQMD from an MQMDE.voidduplicate the content of an MQMD header into this headervoidduplicate the content of this header into an MQMD headerbyte[]gets the Group identifierintgets the Message flagsintgets the Sequence number of logical message within groupintgets the Offset of data in physical message from start of logical messageintgets the Length of original messagebooleanindicates whether the header has extension contentvoidsetGroupId(byte[] value) sets the Group identifiervoidsetMsgFlags(int value) sets the Message flagsvoidsetMsgSeqNumber(int value) sets the Sequence number of logical message within groupvoidsetOffset(int value) sets the Offset of data in physical message from start of logical messagevoidsetOriginalLength(int value) sets the Length of original messageMethods inherited from class com.ibm.mq.headers.MQMD1
format, getAccountingToken, getApplIdentityData, getApplOriginData, getBackoutCount, getCodedCharSetId, getCorrelId, getEncoding, getExpiry, getFeedback, getFormat, getMsgId, getMsgType, getPersistence, getPriority, getPutApplName, getPutApplType, getPutDate, getPutDateTime, getPutTime, getReplyToQ, getReplyToQMgr, getReport, getStrucId, getUserIdentifier, getVersion, nextCharacterSet, nextCharacterSet, nextEncoding, nextEncoding, nextFormat, nextFormat, setAccountingToken, setApplIdentityData, setApplOriginData, setBackoutCount, setCodedCharSetId, setCorrelId, setEncoding, setExpiry, setFeedback, setFormat, setMsgId, setMsgType, setPersistence, setPriority, setPutApplName, setPutApplType, setPutDate, setPutDateTime, setPutTime, setReplyToQ, setReplyToQMgr, setReport, setUserIdentifierMethods inherited from class com.ibm.mq.headers.internal.Header
characterSet, encoding, fields, getBytesValue, getCharValue, getCharValue, getIntValue, getJmqiEnv, getStringValue, getValue, headerType, read, read, read, setBytesValue, setCharValue, setCharValue, setIntValue, setStringValue, setValue, size, store, store, toString, type, validate, write, writeMethods inherited from class com.ibm.mq.jmqi.JmqiObject
getJmqiEnvironment
-
Field Details
-
SIZE1
public static final int SIZE1Size of a Version 1 MQMD structure in bytes- See Also:
-
SIZE2
public static final int SIZE2Size of a version 2 MQMD structure in bytes- See Also:
-
-
Constructor Details
-
MQMD
public MQMD()Constructs an MQMD instance with default field values. -
MQMD
Constructs an MQMD instance populated from an byte stream representing an MQ Message as stored in the queue.This is not suitable for application to an MQMessage object - create an empty MQMD1 object and use the copyfrom(com.ibm.mq.MQMD) method in this instance
- Parameters:
message- the message to read- Throws:
MQDataException- if the message content does not yield a valid MQMD stuctureIOException- if there is a problem reading the message content
-
MQMD
Constructs an MQMD instance populated from a DataInput source.- Parameters:
message- the MQMessage or other DataInput source to readencoding- the initial numeric encoding of the data in the messagecharacterSet- the initial CCSID of the data in the message- Throws:
MQDataException- if the message content does not yield a valid MQMD stuctureIOException- if there is a problem reading the message content
-
MQMD
Constucts an MQMD populated from the content of an MQMD or MQMD1 instance.- Parameters:
md-- Throws:
IOException
-
MQMD
public MQMD(int version) Constructs an MQMD instance of the given version with default field values.- Parameters:
version-
-
-
Method Details
-
getGroupId
public byte[] getGroupId()gets the Group identifier- Returns:
- the Group identifier
-
setGroupId
public void setGroupId(byte[] value) sets the Group identifier- Parameters:
value- the Group identifier
-
getMsgSeqNumber
public int getMsgSeqNumber()gets the Sequence number of logical message within group- Returns:
- the Sequence number of logical message within group
-
setMsgSeqNumber
public void setMsgSeqNumber(int value) sets the Sequence number of logical message within group- Parameters:
value- the Sequence number of logical message within group
-
getOffset
public int getOffset()gets the Offset of data in physical message from start of logical message- Returns:
- the Offset of data in physical message from start of logical message
-
setOffset
public void setOffset(int value) sets the Offset of data in physical message from start of logical message- Parameters:
value- the Offset of data in physical message from start of logical message
-
getMsgFlags
public int getMsgFlags()gets the Message flags- Returns:
- the Message flags
-
setMsgFlags
public void setMsgFlags(int value) sets the Message flags- Parameters:
value- the Message flags
-
getOriginalLength
public int getOriginalLength()gets the Length of original message- Returns:
- the Length of original message
-
setOriginalLength
public void setOriginalLength(int value) sets the Length of original message- Parameters:
value- the Length of original message
-
copyFrom
Description copied from class:MQMD1duplicate the content of an MQMD header into this header -
copyTo
Description copied from class:MQMD1duplicate the content of this header into an MQMD header- Overrides:
copyToin classMQMD1- Parameters:
md- - the header to copy into- Throws:
MQDataException- See Also:
-
coalesce
Sets the MQMD extension fields in this MQMD from an MQMDE. If the relink flag is set, the Format, Encoding and CodedCharSetId fields of the MQMD are also replaced with the values from the MQMDE.- Parameters:
mde-relink-- Returns:
- the MQMD itself
-
hasExtensionContent
public boolean hasExtensionContent()Description copied from class:MQMD1indicates whether the header has extension content- Overrides:
hasExtensionContentin classMQMD1- Returns:
- whether the MQMD has Extension Content
-