Method Publish
Publish(Message, DeliveryOption, Boolean)
This method is used to publish the message in the cache with the specified DeliveryOption. And the option to notify the publisher if the message has failed to deliver because of expiration, eviction or internal system issue.
Declaration
void Publish(Message message, DeliveryOption deliverOption, bool notifyDeliveryFailure = false)
Parameters
Type | Name | Description |
---|---|---|
Message | message | Message to be published. |
DeliveryOption | deliverOption | Specified delivery option. |
System.Boolean | notifyDeliveryFailure | Specifies if MessageDeliveryFailure event is required for this message. |
Examples
The following example demonstrates how to publish message on a topic.
First, initialize the cache.
ICache cache = CacheManager.GetCache("myCache");
Then, get messaging service from the cache.
IMessagingService messagingService=cache.MessagingService;
Then, get the topic from the messagingService.
ITopic topic=messagingService.GetTopic("mytopic");
if(topic==null) //If topic not exists create it.
{
topic=messagingService.CreateTopic("mytopic");
}
Then, publish the message on the topic.
object payload = "mymessage";
Message message = new Message(payload); //creating message
topic.Publish(message, DeliveryOption.All);
Publish(Message, DeliveryOption, String, Boolean)
This method is used to publish the message in the cache with the specified DeliveryOption and the SequenceName. The order of messages with the same sequence name is retained. And the option to notify the publisher if the message has failed to deliver because of expiration, eviction or internal system issue.
Declaration
void Publish(Message message, DeliveryOption deliverOption, string sequenceName, bool notifyDeliveryFailure = false)
Parameters
Type | Name | Description |
---|---|---|
Message | message | Message to be published. |
DeliveryOption | deliverOption | Delivery Option. |
System.String | sequenceName | Sequence name of the message to be publsihed. The messages with same sequence name will be delivered in the same order as they are published. |
System.Boolean | notifyDeliveryFailure | Specifies if MessageDeliveryFailure event required for the specified message. |
Examples
The following example demonstrates how to publish message on a topic.
First, initialize the cache.
ICache cache = CacheManager.GetCache("myCache");
Then, get the messaging service from the cache.
IMessagingService messagingService=cache.MessagingService;
Then, get the topic from the messagingService.
ITopic topic=messagingService.GetTopic("mytopic");
if(topic==null) //If topic not exists create it.
{
topic=messagingService.CreateTopic("mytopic");
}
Then, publish the message on the topic.
object payload = "mymessage";
string sequenceName = "myOrderedMessages";
Message message = new Message(payload); //creating message
topic.Publish(message, DeliveryOption.All, sequenceName);