com.ibm.mq.headers.pcf

Class PCFMessage

  1. java.lang.Object
  2. extended bycom.ibm.mq.jmqi.JmqiObject
  3. extended bycom.ibm.mq.headers.internal.Header
  4. extended bycom.ibm.mq.headers.pcf.PCFHeader
  5. extended bycom.ibm.mq.headers.pcf.PCFMessage
All implemented interfaces:
MQData, MQHeader, PCFContent

  1. public class PCFMessage
  2. extends PCFHeader
  3. implements PCFContent
Class encapsulating a PCF message. A PCFMessage typically represents a PCF request or response or an event message, which consists of an MQCFH header followed by a set of PCFParameter structures (type MQCFIN, MQCFIL, MQCFST and so on). A PCFMessage instance can be constructed and manipulated without direct reference to the PCF header and parameter structures themselves.
See Also:
PCFMessageAgent

Nested Class Summary

Nested classes/interfaces inherited from interface com.ibm.mq.headers.MQHeader
MQHeader.Field

Field Summary

Fields inherited from class com.ibm.mq.headers.internal.Header
DEFAULT_CCSID, DEFAULT_ENCODING
Fields inherited from class com.ibm.mq.jmqi.JmqiObject
COMP_JM, COMP_JN, COMP_JO

Constructor Summary

Constructor and Description
PCFMessage(java.io.DataInput message)
Initializes a PCFMessage from the contents of an MQMessage.
PCFMessage(int command)
Initializes a PCFMessage as a PCF request with the specified MQCFH command identifier.
PCFMessage(int type,int command,int msgSeqNumber,boolean last)
Initializes a PCFMessage with the specified MQCFH type, command identifier, sequence number and control indicator.

Method Summary

Modifier and Type Method and Description
  1. void
addFilterParameter(int parameter,int operator,byte[] value)
  1. void
addFilterParameter(int parameter,int operator,int value)
  1. void
addFilterParameter(int parameter,int operator,java.lang.String value)
  1. void
addParameter(int parameter,byte[] value)
  1. void
addParameter(int parameter,int value)
  1. void
addParameter(int parameter,int[] values)
  1. void
addParameter(int parameter,long value)
  1. void
addParameter(int parameter,long[] values)
  1. void
addParameter(int parameter,java.lang.String value)
  1. void
addParameter(int parameter,java.lang.String[] values)
  1. void
addParameter(PCFParameter parameter)
Adds a PCFParameter to the PCFMessage.
  1. boolean
equals(java.lang.Object obj)
Returns true when invoked with another PCFMessage instance with matching header and equivalent parameters in the same order.
  1. byte[]
getBytesParameterValue(int parameter)
  1. int
getCommand()
Returns the PCF command identifier
  1. int
getCompCode()
Returns the completion code in the MQCFH.
  1. int
getControl()
Returns the PCF header control indicator.
  1. long
getInt64ParameterValue(int parameter)
  1. long[]
getIntList64ParameterValue(int parameter)
  1. int[]
getIntListParameterValue(int parameter)
  1. int
getIntParameterValue(int parameter)
  1. int
getMsgSeqNumber()
Returns the PCF message sequence number
  1. PCFParameter
getParameter(int parameter)
  1. int
getParameterCount()
Returns the number of parameter structures in the PCF message.
  1. java.util.Enumeration
getParameters()
  1. java.lang.Object
getParameterValue(int parameter)
  1. int
getReason()
Returns the reason code in the MQCFH.
  1. java.lang.String[]
getStringListParameterValue(int parameter)
  1. java.lang.String
getStringParameterValue(int parameter)
  1. int
getType()
Returns the PCF type identifier
  1. void
initialize(int command)
Initializes a PCFMessage for re-use with the specified command identifier and no parameters.
  1. void
initialize(int type,int command,int msgSeqNumber,boolean last)
Initializes a PCFMessage for re-use with the specified type, command identifier, sequence number, control indicator and no parameters.
  1. void
setHeader(PCFHeader header)
Set the PCFHeader
  1. int
size()
Returns the size of this PCFMessage in bytes.
  1. java.lang.String
toString()
Returns the string representation of the class instance
  1. int
write(java.io.DataOutput message)
Writes the content of this PCFMessage to, e.g., an MQMessage.
Methods 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, store, store, type, validate, write
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait

Constructor Detail

PCFMessage

  1. public PCFMessage(int command)
Initializes a PCFMessage as a PCF request with the specified MQCFH command identifier. The parameter count is incremented from zero as parameters are added.
Parameters:
command - the PCF command identifier

PCFMessage

  1. public PCFMessage(int type,
  2. int command,
  3. int msgSeqNumber,
  4. boolean last)
Initializes a PCFMessage with the specified MQCFH type, command identifier, sequence number and control indicator. The parameter count is incremented from zero as parameters are added.

Most applications will not need to use this constructor. PCF request messages, which always have type MQCFT_COMMAND, sequence number 1 and control indicator set to MQCFC_LAST, are more easily constructed using the PCFMessage(int command) form instead.

Parameters:
type - the PCF message type
command - the PCF command identifier
msgSeqNumber - the sequence number of the message
last - if set, indicates this message is the last in a sequence

PCFMessage

  1. public PCFMessage(java.io.DataInput message)
  2. throws MQDataException
  3. java.io.IOException
Initializes a PCFMessage from the contents of an MQMessage.
Parameters:
message - the message to read from
Throws:
MQDataException - if the message contents do not yield a valid PCFMessage
java.io.IOException - if there is a problem reading the message

Method Detail

initialize

  1. public void initialize(int command)
Initializes a PCFMessage for re-use with the specified command identifier and no parameters.
Parameters:
command - the PCF command identifier

initialize

  1. public void initialize(int type,
  2. int command,
  3. int msgSeqNumber,
  4. boolean last)
Initializes a PCFMessage for re-use with the specified type, command identifier, sequence number, control indicator and no parameters.

Most applications will not need to use this method. PCF request messages, which always have type MQCFT_COMMAND, sequence number 1 and control indicator set to MQCFC_LAST, can more easily be initialized using the initialize(int command) form instead.

Parameters:
type - the PCF message type
command - the PCF command identifier
msgSeqNumber - the sequence number of the message
last - if set, indicates this message is the last in a sequence

addParameter

  1. public void addParameter(PCFParameter parameter)
Adds a PCFParameter to the PCFMessage. The MQCFH version is updated automatically if necessary to correspond with the parameter type. (For example, the version must be set to MQCFH_VERSION_3 if a PCF filter parameter is added.)
Specified by:
addParameter in interface PCFContent
Parameters:
parameter - the parameter structure to add (MQCFIN, MQCFIL, MQCFST and so on)
See Also:

addParameter

  1. public void addParameter(int parameter,
  2. int value)
Description copied from interface: PCFContent
Adds an integer parameter to the group.
Specified by:
addParameter in interface PCFContent
Parameters:
parameter - the integer parameter identifier
value - the integer value
See Also:

addParameter

  1. public void addParameter(int parameter,
  2. int[] values)
Description copied from interface: PCFContent
Adds an integer list parameter to the group.
Specified by:
addParameter in interface PCFContent
Parameters:
parameter - the integer list parameter identifier
values - the array of integer values
See Also:

addParameter

  1. public void addParameter(int parameter,
  2. long value)
Description copied from interface: PCFContent
Adds a 64-bit integer parameter to the group.
Specified by:
addParameter in interface PCFContent
Parameters:
parameter - the integer parameter identifier
value - the integer value
See Also:

addParameter

  1. public void addParameter(int parameter,
  2. long[] values)
Description copied from interface: PCFContent
Adds a 64-bit integer list parameter to the group.
Specified by:
addParameter in interface PCFContent
Parameters:
parameter - the integer list parameter identifier
values - the array of integer values
See Also:

addParameter

  1. public void addParameter(int parameter,
  2. java.lang.String value)
Description copied from interface: PCFContent
Adds a string parameter to the group.
Specified by:
addParameter in interface PCFContent
Parameters:
parameter - the string parameter identifier
value - the string value
See Also:

addParameter

  1. public void addParameter(int parameter,
  2. java.lang.String[] values)
Description copied from interface: PCFContent
Adds a string list parameter to the group.
Specified by:
addParameter in interface PCFContent
Parameters:
parameter - the string list parameter identifier
values - the array of string values
See Also:

addParameter

  1. public void addParameter(int parameter,
  2. byte[] value)
Description copied from interface: PCFContent
Adds a byte array parameter to the group.
Specified by:
addParameter in interface PCFContent
Parameters:
parameter - the string list parameter identifier
value - the array of string values
See Also:

addFilterParameter

  1. public void addFilterParameter( int parameter,
  2. int operator,
  3. int value)
Description copied from interface: PCFContent
Adds an integer filter parameter to the group.
Specified by:
Parameters:
parameter - the filter parameter identifier
operator - one of the MQCFOP_* filter operator constants
value - the filter value
See Also:

addFilterParameter

  1. public void addFilterParameter( int parameter,
  2. int operator,
  3. java.lang.String value)
Description copied from interface: PCFContent
Adds a string filter parameter to the group.
Specified by:
Parameters:
parameter - the filter parameter identifier
operator - one of the MQCFOP_* filter operator constants
value - the filter value
See Also:

addFilterParameter

  1. public void addFilterParameter( int parameter,
  2. int operator,
  3. byte[] value)
Description copied from interface: PCFContent
Adds a bytes string filter parameter to the group.
Specified by:
Parameters:
parameter - the filter parameter identifier
operator - one of the MQCFOP_* filter operator constants
value - the filter value
See Also:

getType

  1. public int getType()
Returns the PCF type identifier
Specified by:
getType in class PCFHeader
Returns:
the value of the type field from the MQCFH

getCommand

  1. public int getCommand()
Returns the PCF command identifier
Returns:
the value of the command field from the MQCFH

getMsgSeqNumber

  1. public int getMsgSeqNumber()
Returns the PCF message sequence number
Returns:
the value of the msgSeqNumber field from the MQCFH

getControl

  1. public int getControl()
Returns the PCF header control indicator.
Returns:
the value of the control field from the MQCFH

getCompCode

  1. public int getCompCode()
Returns the completion code in the MQCFH.
Returns:
the value of the compCode field from the MQCFH

getReason

  1. public int getReason()
Returns the reason code in the MQCFH.
Returns:
the value of the reason field from the MQCFH

getParameterCount

  1. public int getParameterCount()
Returns the number of parameter structures in the PCF message.
Specified by:
Returns:
the value of the parameterCount field from the MQCFH
See Also:

getParameters

  1. public java.util.Enumeration getParameters( )
Description copied from interface: PCFContent
Returns an enumeration of the parameters in the group. The elements of the Enumeration returned are individual PCFParameter instances (instances of MQCFIN, MQCFIL, MQCFST or MQCFSL etc.).
Specified by:
getParameters in interface PCFContent
Returns:
the PCF message parameter structures
See Also:

setHeader

  1. public void setHeader(PCFHeader header)
Set the PCFHeader
Parameters:
header - The value to set

getParameter

  1. public PCFParameter getParameter( int parameter)
Description copied from interface: PCFContent
Returns the PCFParameter structure for the specified parameter, or null if the parameter is not found.
Specified by:
getParameter in interface PCFContent
Returns:
the specified parameter object
See Also:

getParameterValue

  1. public java.lang.Object getParameterValue( int parameter)
Description copied from interface: PCFContent
Returns the value of the specified parameter, or null if the parameter is not found. The object returned is a single Integer, a single String, an array of integers or array of Strings depending on the type of PCFParameter. The caller can infer the expected return type from the supplied parameter identifier.
Specified by:
Returns:
the specified parameter value
See Also:

getIntParameterValue

  1. public int getIntParameterValue( int parameter)
  2. throws PCFException
Description copied from interface: PCFContent
Returns the value of the specified integer parameter (MQCFIN) as an integer.
Specified by:
Parameters:
parameter - the integer parameter identifier
Returns:
the integer parameter value
Throws:
PCFException - if the specified parameter does not exist in the message (the reason code given is MQRCCF_CFIN_PARM_ID_ERROR)
See Also:

getIntListParameterValue

  1. public int[] getIntListParameterValue( int parameter)
  2. throws PCFException
Description copied from interface: PCFContent
Returns the value of the specified integer list parameter (MQCFIL) as an array of integers.
Specified by:
Parameters:
parameter - the integer list parameter identifier
Returns:
the integer list parameter values
Throws:
PCFException - if the specified parameter does not exist in the group (the reason code given is MQRCCF_CFIL_PARM_ID_ERROR)
See Also:

getInt64ParameterValue

  1. public long getInt64ParameterValue( int parameter)
  2. throws PCFException
Description copied from interface: PCFContent
Returns the value of the specified integer parameter (MQCFIN64) as an integer.
Specified by:
Parameters:
parameter - the integer parameter identifier
Returns:
the integer parameter value
Throws:
PCFException - if the specified parameter does not exist in the message (the reason code given is MQRCCF_CFIN_PARM_ID_ERROR)
See Also:

getIntList64ParameterValue

  1. public long[] getIntList64ParameterValue( int parameter)
  2. throws PCFException
Description copied from interface: PCFContent
Returns the value of the specified integer list parameter (MQCFIL64) as an array of integers.
Specified by:
Parameters:
parameter - the integer list parameter identifier
Returns:
the integer list parameter values
Throws:
PCFException - if the specified parameter does not exist in the group (the reason code given is MQRCCF_CFIL_PARM_ID_ERROR)
See Also:

getStringParameterValue

  1. public java.lang.String getStringParameterValue( int parameter)
  2. throws PCFException
Description copied from interface: PCFContent
Returns the value of the specified string parameter (MQCFST) as a string.
Specified by:
Parameters:
parameter - the string parameter identifier
Returns:
the string parameter value
Throws:
PCFException - if the specified parameter does not exist in the group (the reason code given is MQRCCF_CFST_PARM_ID_ERROR)
See Also:

getStringListParameterValue

  1. public java.lang.String[] getStringListParameterValue( int parameter)
  2. throws PCFException
Description copied from interface: PCFContent
Returns the value of the specified string list parameter (MQCFSL) as an array of strings.
Specified by:
Parameters:
parameter - the string list parameter identifier
Returns:
the string list parameter values
Throws:
PCFException - if the specified parameter does not exist in the group (the reason code given is MQRCCF_CFSL_PARM_ID_ERROR; no more specific error code is defined)
See Also:

getBytesParameterValue

  1. public byte[] getBytesParameterValue( int parameter)
  2. throws PCFException
Description copied from interface: PCFContent
Returns the value of the specified byte array parameter (MQCFBS).
Specified by:
Parameters:
parameter - the byte array parameter identifier
Returns:
the byte array parameter value
Throws:
PCFException - if the specified parameter does not exist in the group (the reason code given is MQRCCF_CFBS_PARM_ID_ERROR)
See Also:

write

  1. public int write(java.io.DataOutput message)
  2. throws java.io.IOException
Writes the content of this PCFMessage to, e.g., an MQMessage.
Specified by:
write in interface MQData
Overrides:
write in class com.ibm.mq.headers.internal.Header
Parameters:
message - the message.
Throws:
java.io.IOException
See Also:
Header.write(DataOutput)

size

  1. public int size()
Returns the size of this PCFMessage in bytes.
Specified by:
size in interface MQData
Overrides:
size in class com.ibm.mq.headers.internal.Header
See Also:
Header.size()

equals

  1. public boolean equals(java.lang.Object obj)
Returns true when invoked with another PCFMessage instance with matching header and equivalent parameters in the same order.
Overrides:
equals in class java.lang.Object
Parameters:
obj - The object to compare against
Returns:
true of the object equals this one

toString

  1. public java.lang.String toString( )
Returns the string representation of the class instance
Overrides:
toString in class com.ibm.mq.headers.internal.Header
Returns:
The string representation