XMS supports three kinds of message property: JMS defined properties, IBM defined properties, and application-defined properties.
This is the name by which the property is known in JMS or WebSphere JMS, and it is also the name that is transmitted with a message that has this property. An XMS application uses this name to identify the property in a message selector expression.
In addition to the predefined properties, an XMS application can create and use its own set of message properties. These properties are called application defined properties.
For information about getting and setting the properties of messages, see Object Properties in C or Properties in C++.
After an application creates a message, the properties of the message are readable and writable. The properties remain readable and writable after the application sends the message. When an application receives a message, the properties of the message are read-only. If an application calls the Clear Properties method of the Message class when the properties of a message are read-only, the properties become readable and writable. The method also clears the properties.
The received message, when forwarded after clearing up the message properties, will behave in a manner consistent with the behavior of forwarding a standard WMQ XMS for C/C++ BytesMessage with message properties cleared up.
To determine the values of all the properties of a message, an application can call the Get Properties method of the Message class. The method creates an iterator that encapsulates a list of Property objects, where each Property object represents a property of the message. The application can then use the methods of the Iterator class to retrieve each Property object in turn, and it can use the methods of the Property class to retrieve the name, data type, and value of each property. For a sample fragment of C code that performs a similar function, see Iterators.