subscribe-bookmark-rate-gap
Including the basic AMPS library:
import com.crankuptheamps.client.*;
import com.crankuptheamps.client.exception.*;
Constructing the command:
Command cmd = new Command(Message.Command.Subscribe)
.setTopic(topic)
// Consistent sub id for recovery purposes
.setSubId(subId)
// Start at the recovery point in the bookmark store
.setBookmark(Client.Bookmarks.MOST_RECENT)
// Set options for replay: in this case, deliver
// at the original rate, *except* if there is a gap
// of more than 1s in the original publish stream.
// If that happens, deliver the next message
// after a maximum of 1s
.setOptions(Message.Options.Rate("1x")
+ Message.Options.RateMaxGap("1s"))
;
The command can now be used in execute or executeAsync.