public class ReplayCache extends Object
StorageService
to track information associated with messages in order to detect
message replays.
This class is thread-safe and uses a basic reentrant lock to avoid corruption of the underlying store, as well as to
prevent race conditions with respect to replay checking.コンストラクタと説明 |
---|
ReplayCache(StorageService<String,ReplayCacheEntry> storageService,
long duration)
Constructor.
|
ReplayCache(StorageService<String,ReplayCacheEntry> storageService,
String storageParition,
long duration)
Constructor.
|
修飾子とタイプ | メソッドと説明 |
---|---|
protected void |
addMessageID(String messageId,
org.joda.time.DateTime expiration)
Accquires a write lock and adds the message state to the underlying storage service.
|
boolean |
isReplay(String issuerId,
String messageId)
Checks if the message has been replayed.
|
public ReplayCache(StorageService<String,ReplayCacheEntry> storageService, long duration)
storageService
- the StorageService which serves as the backing store for the cacheduration
- default length of time that message state is validpublic ReplayCache(StorageService<String,ReplayCacheEntry> storageService, String storageParition, long duration)
storageService
- the StorageService which serves as the backing store for the cachestorageParition
- name of storage service partition to useduration
- default length of time that message state is validpublic boolean isReplay(String issuerId, String messageId)
issuerId
- unique ID of the message issuermessageId
- unique ID of the messageprotected void addMessageID(String messageId, org.joda.time.DateTime expiration)
messageId
- unique ID of the messageexpiration
- time the message state expiresCopyright © 2012. All Rights Reserved.