AMPS C/C++ Client Class Reference
AMPS C/C++ Client Version 5.3.0.2
|
A BookmarkStoreImpl implementation that logs all messages to a file. More...
#include <LoggedBookmarkStore.hpp>
Public Member Functions | |
LoggedBookmarkStore (const char *fileName_) | |
Creates a LoggedBookmarkStore using fileName_ as its file storage. More... | |
LoggedBookmarkStore (const std::string &fileName_) | |
Creates a LoggedBookmarkStore using a file name fileName_. More... | |
virtual size_t | log (Message &message_) |
Log a bookmark to the persistent log and return the corresponding sequence number for this bookmark. More... | |
virtual void | discard (const Message &message_) |
Log a Message as discarded from the store. More... | |
virtual void | discard (const Message::Field &subId_, size_t bookmarkSeqNo_) |
virtual Message::Field | getMostRecent (const Message::Field &subId_) |
Returns the most recent bookmark from the log that ought to be used for (re-)subscriptions. More... | |
virtual bool | isDiscarded (Message &message_) |
Called for each arriving message to determine if the application has already seen this bookmark and should not be reprocessed. More... | |
virtual void | purge () |
Called to purge the contents of this store. More... | |
virtual void | purge (const Message::Field &subId_) |
Called to purge the contents of this store for particular subId. More... | |
virtual void | noPersistedAcks (const Message::Field &subId_) |
Flag the subscription as not requesting persisted acks No persisted acks will be sent for any bookmarks. More... | |
void | setServerVersion (size_t version_) |
Internally used to set the server version so the store knows how to deal with persisted acks and calls to getMostRecent(). More... | |
Public Member Functions inherited from AMPS::MemoryBookmarkStore | |
virtual size_t | getOldestBookmarkSeq (const Message::Field &subId_) |
Called to find the oldest bookmark in the store. More... | |
virtual void | persisted (const Message::Field &subId_, const Message::Field &bookmark_) |
Mark the bookmark provided as replicated to all sync replication destinations for the given subscription. More... | |
virtual Message::Field | persisted (const Message::Field &subId_, size_t bookmark_) |
Mark the bookmark provided as replicated to all sync replication destinations for the given subscription. More... | |
void | setServerVersion (const VersionInfo &version_) |
Internally used to set the server version so the store knows how to deal with persisted acks and calls to getMostRecent(). More... | |
void | setServerVersion (size_t version_) |
Internally used to set the server version so the store knows how to deal with persisted acks and calls to getMostRecent(). More... | |
Public Member Functions inherited from AMPS::BookmarkStoreImpl | |
virtual void | setResizeHandler (BookmarkStoreResizeHandler handler_, void *userData_) |
Set a handler on the bookmark store that will get called whenever a resize of the store is required due to the number of stored bookmarks exceeding the currently allocated storage to hold them. More... | |
A BookmarkStoreImpl implementation that logs all messages to a file.
This class provides resumable subscriptions even when the application restarts.
|
inline |
Creates a LoggedBookmarkStore using fileName_ as its file storage.
If fileName_ already exists and has valid bookmarks in it, it will be recovered to determine the most recent bookmark and other messages received.
fileName_ | The name of the file to use. |
|
inline |
Creates a LoggedBookmarkStore using a file name fileName_.
fileName_ | The name of the file to use. |
|
inlinevirtual |
Log a Message as discarded from the store.
message_ | The Message to discard. |
Reimplemented from AMPS::MemoryBookmarkStore.
|
inlinevirtual |
Log a discard-bookmark entry to the persistent log based on a bookmark sequence number.
subId_ | The id of the subscription to which the bookmark applies. |
bookmarkSeqNo_ | The bookmark sequence number to discard. |
Reimplemented from AMPS::MemoryBookmarkStore.
|
inlinevirtual |
Returns the most recent bookmark from the log that ought to be used for (re-)subscriptions.
subId_ | The id of the subscription to check. |
Reimplemented from AMPS::MemoryBookmarkStore.
|
inlinevirtual |
Called for each arriving message to determine if the application has already seen this bookmark and should not be reprocessed.
Returns 'true' if the bookmark is in the log and should not be re-processed, false otherwise.
message_ | The Message to check. |
Reimplemented from AMPS::MemoryBookmarkStore.
|
inlinevirtual |
Log a bookmark to the persistent log and return the corresponding sequence number for this bookmark.
message_ | The Message to log. |
Reimplemented from AMPS::MemoryBookmarkStore.
|
inlinevirtual |
Flag the subscription as not requesting persisted acks No persisted acks will be sent for any bookmarks.
subId_ | The subscription id of the subscription without persisted acks. |
Reimplemented from AMPS::MemoryBookmarkStore.
|
inlinevirtual |
Called to purge the contents of this store.
Removes any tracking history associated with publishers and received messages, and may delete or truncate on-disk representations as well.
Reimplemented from AMPS::MemoryBookmarkStore.
|
inlinevirtual |
Called to purge the contents of this store for particular subId.
Removes any tracking history associated with publishers and received messages, and will remove the subId from the file as well.
Reimplemented from AMPS::MemoryBookmarkStore.
|
inlinevirtual |
Internally used to set the server version so the store knows how to deal with persisted acks and calls to getMostRecent().
version_ | The version of the server being used. |
Implements AMPS::BookmarkStoreImpl.