SendData Method
Publishes a message with a raw data payload.
Syntax
ANSI (Cross Platform) int SendData(const char* lpszDestination, const char* lpData, int lenData); Unicode (Windows) INT SendData(LPCWSTR lpszDestination, LPCSTR lpData, INT lenData);
- (void)sendData:(NSString*)destination :(NSData*)data;
#define MID_STOMP_SENDDATA 13 IPWORKSMQ_EXTERNAL int IPWORKSMQ_CALL IPWorksMQ_STOMP_Do(void *lpObj, int methid, int cparam, void *param[], int cbparam[], int64 *lpllVal);
Remarks
This method publishes a STOMP message with a raw data payload to the specified Destination. The MessageOut event will fire after the message has been sent.
The STOMP specification does not place any restrictions on Destination names. Instead, each STOMP server is free to define its own requirements for, and/or interpretations of, a Destination name; for example, a server might prohibit certain characters, require a specific format, or interpret some patterns in a special manner. Be sure to consult the documentation for your STOMP server to determine how to build proper Destination names.
In addition to the payload, the outgoing messages will include:
- All user-defined headers held by the Header* properties.
- If the TransactionId property is populated, the transaction Id that it specifies (which associates the message with that transaction).
If RequestReceipts is enabled when this method is called, the class will request that the server send back a receipt to confirm it has received the message. Refer to RequestReceipts for more information.
Note that no content type is defined for raw data payload messages; so the ContentType property is ignored by this method.
Send String Message Example
stomp1.SendMessage("test/a/b", "Hello, world!");
Send Binary Message Example
byte[] fileContent = File.ReadAllBytes("C:\test\stuff.dat");
stomp1.SendData("test/a/b", fileContent);
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)