Skip to main content

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.