subscribe-bookmark-rate-replace
Importing the AMPS client library:
using AMPS.Client;
using AMPS.Client.Exceptions;
Constructing the subscribe command:
Command cmd = new Command(Message.Commands.Subscribe)
.setTopic(topic)
// consistent ID for recovery purposes and for use in replacing the subscription
.setSubId(subId)
// Recover from the bookmark store's
// replay point, or the beginning of the
// txlog if there is no existing recovery point
.setBookmark(Client.Bookmarks.MOST_RECENT)
// Set options for replay: in this case, maximum of
// 10,000 messages/sec for this subscription
.setOptions(Message.Options.Rate("1000"))
;
The command can now be used in execute or executeAsync.
Constructing the replace command:
Command cmd = new Command(Message.Commands.Subscribe)
.setTopic(topic)
// Set ID of subscription to be replaced
.setSubId(subId)
// Set options for updated subscription: in this case, maximum of
// 100 messages/sec, and replace to update the current rate option.
.setOptions(Message.Options.Rate("100")
+ Message.Options.Replace())
;
The command can now be used in execute or executeAsync to update the previous subscriptions rate option.