#include <limits.h>
#include <JmsCommon.h>
#include <JmsEnumeration.h>
#include <JmsDestination.h>
#include <JmsTypes.h>
Go to the source code of this file.
Defines | |
#define | JMS_NON_PERSISTENT 1 |
#define | JMS_PERSISTENT 2 |
#define | JMS_DEFAULT_DELIVERY_MODE JMS_PERSISTENT |
#define | JMS_DEFAULT_PRIORITY 4 |
#define | JMS_DEFAULT_TIME_TO_LIVE 0 |
#define | JMS_UNKNOWN_SUBCLASS -1 |
#define | JMS_TEXT_MESSAGE 0 |
#define | JMS_BYTES_MESSAGE 1 |
#define | JMS_STREAM_MESSAGE 2 |
#define | JMS_MAP_MESSAGE 3 |
#define | JMS_OBJECT_MESSAGE 4 |
Typedefs | |
typedef JmsMessage | JmsMessage |
Functions | |
int JMSENTRY | JmsMessageGetSubclass (JmsMessage *message, int *subclass, JMS64I flags) |
int JMSENTRY | JmsMessageAcknowledge (JmsMessage *message, JMS64I flags) |
int JMSENTRY | JmsMessageGetMessageId (JmsMessage *message, JmsString *messageId, JMS64I flags) |
int JMSENTRY | JmsMessageGetTimestamp (JmsMessage *message, JMS64I *timestamp, JMS64I flags) |
int JMSENTRY | JmsMessageGetCorrelationId (JmsMessage *message, JmsString *correlationId, JMS64I flags) |
int JMSENTRY | JmsMessageSetCorrelationId (JmsMessage *message, JmsString *correlationId, JMS64I flags) |
int JMSENTRY | JmsMessageGetReplyTo (JmsMessage *message, JmsDestination **destination, JMS64I flags) |
int JMSENTRY | JmsMessageSetReplyTo (JmsMessage *message, JmsDestination *destination, JMS64I flags) |
int JMSENTRY | JmsMessageGetDestination (JmsMessage *message, JmsDestination **destination, JMS64I flags) |
int JMSENTRY | JmsMessageSetDestination (JmsMessage *message, JmsDestination *destination, JMS64I flags) |
int JMSENTRY | JmsMessageGetDeliveryMode (JmsMessage *message, int *deliveryMode, JMS64I flags) |
int JMSENTRY | JmsMessageGetRedelivered (JmsMessage *message, int *redelivered, JMS64I flags) |
int JMSENTRY | JmsMessageSetType (JmsMessage *message, JmsString *type, JMS64I flags) |
int JMSENTRY | JmsMessageGetType (JmsMessage *message, JmsString *type, JMS64I flags) |
int JMSENTRY | JmsMessageGetExpiration (JmsMessage *message, JMS64I *expiration, JMS64I flags) |
int JMSENTRY | JmsMessageGetPriority (JmsMessage *message, int *priority, JMS64I flags) |
int JMSENTRY | JmsMessageClearProperties (JmsMessage *message, JMS64I flags) |
int JMSENTRY | JmsMessagePropertyExists (JmsMessage *message, JmsString *name, int *exists, JMS64I flags) |
int JMSENTRY | JmsMessageGetPropertyNames (JmsMessage *message, JmsEnumeration **enumeration, JMS64I flags) |
int JMSENTRY | JmsMessageGetBooleanProperty (JmsMessage *message, JmsString *name, int *value, JMS64I flags) |
int JMSENTRY | JmsMessageSetBooleanProperty (JmsMessage *message, JmsString *name, int value, JMS64I flags) |
int JMSENTRY | JmsMessageGetByteProperty (JmsMessage *message, JmsString *name, unsigned char *value, JMS64I flags) |
int JMSENTRY | JmsMessageSetByteProperty (JmsMessage *message, JmsString *name, unsigned char value, JMS64I flags) |
int JMSENTRY | JmsMessageGetShortProperty (JmsMessage *message, JmsString *name, short *value, JMS64I flags) |
int JMSENTRY | JmsMessageSetShortProperty (JmsMessage *message, JmsString *name, short value, JMS64I flags) |
int JMSENTRY | JmsMessageGetIntProperty (JmsMessage *message, JmsString *name, JMS32I *value, JMS64I flags) |
int JMSENTRY | JmsMessageSetIntProperty (JmsMessage *message, JmsString *name, JMS32I value, JMS64I flags) |
int JMSENTRY | JmsMessageGetLongProperty (JmsMessage *message, JmsString *name, JMS64I *value, JMS64I flags) |
int JMSENTRY | JmsMessageSetLongProperty (JmsMessage *message, JmsString *name, JMS64I value, JMS64I flags) |
int JMSENTRY | JmsMessageGetFloatProperty (JmsMessage *message, JmsString *name, float *value, JMS64I flags) |
int JMSENTRY | JmsMessageSetFloatProperty (JmsMessage *message, JmsString *name, float value, JMS64I flags) |
int JMSENTRY | JmsMessageGetDoubleProperty (JmsMessage *message, JmsString *name, double *value, JMS64I flags) |
int JMSENTRY | JmsMessageSetDoubleProperty (JmsMessage *message, JmsString *name, double value, JMS64I flags) |
int JMSENTRY | JmsMessageGetStringProperty (JmsMessage *message, JmsString *name, JmsString *value, JMS64I flags) |
int JMSENTRY | JmsMessageSetStringProperty (JmsMessage *message, JmsString *name, JmsString *value, JMS64I flags) |
int JMSENTRY | JmsMessageClearBody (JmsMessage *message, JMS64I flags) |
int JMSENTRY | JmsMessageDestroy (JmsMessage *message, JMS64I flags) |
This file describes the functions that can be performed on a JmsMessage handle A JmsMessage handle corresponds to javax.jms.Message
|
The message subclass is javax.jms.BytesMessage, the handle is JmsBytesMessage |
|
The default delivery mode, which is persistent |
|
The default priority |
|
The default time to live |
|
The message subclass is javax.jms.MapMessage, the handle is JmsMapMessage |
|
A message has a non-persistent quality of service |
|
The message subclass is javax.jms.ObjectMessage |
|
A message has a persistent quality of service |
|
The message subclass is javax.jms.StreamMessage, the handle is JmsStreamMessage |
|
The message subclass is javax.jms.TextMessage, the handle is JmsTextMessage |
|
The message subclass is unknown |
|
A message handle that represents the class javax.jms.Message |
|
Acknowledges all consumed messages of the session of this consumed message. All consumed JMS messages support the acknowledge method for use when a client has specified that its JMS session's consumed messages are to be explicitly acknowledged. By invoking acknowledge on a consumed message, a client acknowledges all messages consumed by the session that the message was delivered to. Calls to acknowledge are ignored for both transacted sessions and sessions specified to use implicit acknowledgement modes. A client may individually acknowledge each message as it is consumed, or it may choose to acknowledge messages as an application-defined group (which is done by calling acknowledge on the last received message of the group, thereby acknowledging all messages consumed by the session.) Messages that have been received but not acknowledged may be redelivered.
|
|
Clears out the message body. Clearing a message's body does not clear its header values or property entries. If this message body was read-only, calling this method leaves the message body in the same state as an empty body in a newly created message.
|
|
Clears a message's properties. The message's header fields and body are not cleared.
|
|
Destroys the message. After a call to this function the message handle is no longer valid and should not be referenced
|
|
Gets the boolean property of the given name on the given message
|
|
Gets the byte property of the given name on the given message
|
|
Gets the correlation ID for the message. This method is used to return correlation ID values that are either provider-specific message IDs or application-specific String values.
|
|
Gets the delivery mode of this message handle
|
|
Gets the Destination object for this message. The JMSDestination header field contains the destination to which the message is being sent. When a message is sent, this field is ignored. After completion of the send or publish method, the field holds the destination specified by the method. When a message is received, its JMSDestination value must be equivalent to the value assigned when it was sent.
|
|
Gets the double property of the given name on the given message
|
|
Gets the message's expiration value. When a message is sent, the JMSExpiration header field is left unassigned. After completion of the send or publish method, it holds the expiration time of the message. This is the sum of the time-to-live value specified by the client and the GMT at the time of the send or publish. If the time-to-live is specified as zero, JMSExpiration is set to zero to indicate that the message does not expire. When a message's expiration time is reached, a provider should discard it. The JMS API does not define any form of notification of message expiration. Clients should not receive messages that have expired; however, the JMS API does not guarantee that this will not happen.
|
|
Gets the float property of the given name on the given message
|
|
Gets the integer property of the given name on the given message
|
|
Gets the long property of the given name on the given message
|
|
Gets the message ID. The JMSMessageID header field contains a value that uniquely identifies each message sent by a provider. When a message is sent, JMSMessageID can be ignored. When the send method returns, it contains a provider-assigned value. A JMSMessageID is a String value that should function as a unique key for identifying messages in a historical repository. The exact scope of uniqueness is provider-defined. It should at least cover all messages for a specific installation of a provider, where an installation is some connected set of message routers. All JMSMessageID values must start with the prefix 'ID:'. Uniqueness of message ID values across different providers is not required. Since message IDs take some effort to create and increase a message's size, some JMS providers may be able to optimize message overhead if they are given a hint that the message ID is not used by an application. By calling the MessageProducer.setDisableMessageID method, a JMS client enables this potential optimization for all messages sent by that message producer. If the JMS provider accepts this hint, these messages must have the message ID set to null; if the provider ignores the hint, the message ID must be set to its normal unique value.
|
|
Gets the message priority level. The JMS API defines ten levels of priority value, with 0 as the lowest priority and 9 as the highest. In addition, clients should consider priorities 0-4 as gradations of normal priority and priorities 5-9 as gradations of expedited priority. The JMS API does not require that a provider strictly implement priority ordering of messages; however, it should do its best to deliver expedited messages ahead of normal messages.
|
|
Gets an enumeration handle containing the names of all the properties on this message handle
|
|
Gets the redelivered attribute of this message handle
|
|
Gets the JmsDestination handle to which a reply to this message should be sent.
|
|
Gets the short property of the given name on the given message
|
|
Gets the string property of the given name on the given message
|
|
Gets the subclass of the given message handle
|
|
Gets the message timestamp. The JMSTimestamp header field contains the time a message was handed off to a provider to be sent. It is not the time the message was actually transmitted, because the actual send may occur later due to transactions or other client-side queueing of messages. When a message is sent, JMSTimestamp is ignored. When the send or publish method returns, it contains a time value somewhere in the interval between the call and the return. The value is in the format of a normal millis time value in the Java programming language. Since timestamps take some effort to create and increase a message's size, some JMS providers may be able to optimize message overhead if they are given a hint that the timestamp is not used by an application. By calling the MessageProducer.setDisableMessageTimestamp method, a JMS client enables this potential optimization for all messages sent by that message producer. If the JMS provider accepts this hint, these messages must have the timestamp set to zero; if the provider ignores the hint, the timestamp must be set to its normal value.
|
|
Gets the message type identifier supplied by the client when the message was sent.
|
|
Determines whether a property of a given name exists on a message
|
|
Sets a boolean property with the given name on the given message
|
|
Sets a byte property with the given name on the given message
|
|
Sets the correlation ID for the message. A client can use the JMSCorrelationID header field to link one message with another. A typical use is to link a response message with its request message. JMSCorrelationID can hold one of the following:
Since each message sent by a JMS provider is assigned a message ID value, it is convenient to link messages via message ID. All message ID values must start with the 'ID:' prefix. In some cases, an application (made up of several clients) needs to use an application-specific value for linking messages. For instance, an application may use JMSCorrelationID to hold a value referencing some external information. Application-specified values must not start with the 'ID:' prefix; this is reserved for provider-generated message ID values. If a provider supports the native concept of correlation ID, a JMS client may need to assign specific JMSCorrelationID values to match those expected by clients that do not use the JMS API. A byte[] value is used for this purpose. JMS providers without native correlation ID values are not required to support byte[] values. The use of a byte[] value for JMSCorrelationID is non-portable.
|
|
Sets the Destination object for this message. JMS providers set this field when a message is sent. This method can be used to change the value for a message that has been received.
|
|
Sets a double property with the given name on the given message
|
|
Sets a float property with the given name on the given message
|
|
Sets an integer property with the given name on the given message
|
|
Sets a long property with the given name on the given message
|
|
Sets the JmsDestination handle to which a reply to this message should be sent.
|
|
Sets a short property with the given name on the given message
|
|
Sets a string property with the given name on the given message
|
|
Sets the message type. Some JMS providers use a message repository that contains the definitions of messages sent by applications. The JMSType header field may reference a message's definition in the provider's repository. The JMS API does not define a standard message definition repository, nor does it define a naming policy for the definitions it contains. Some messaging systems require that a message type definition for each application message be created and that each message specify its type. In order to work with such JMS providers, JMS clients should assign a value to JMSType, whether the application makes use of it or not. This ensures that the field is properly set for those providers that require it. To ensure portability, JMS clients should use symbolic values for JMSType that can be configured at installation time to the values defined in the current provider's message repository. If string literals are used, they may not be valid type names for some JMS providers.
|
Oracle Fusion Middleware
JMS C API Reference for Oracle WebLogic Server
12c (12.2.1.4.0)
Part Number E90603-01