Abstract interface of a datastore of all publication documents processed by DUM.
More...
|
| | PublicationPersistenceManager ()=default |
| |
| virtual | ~PublicationPersistenceManager ()=default |
| |
| virtual void | addUpdateDocument (const PubDocument &document)=0 |
| |
| virtual void | addUpdateDocument (const Data &eventType, const Data &documentKey, const Data &eTag, uint64_t expirationTime, const Contents *contents, const SecurityAttributes *securityAttributes, bool syncPublication=false) |
| |
| virtual bool | removeDocument (const Data &eventType, const Data &documentKey, const Data &eTag, uint64_t lastUpdated, bool syncPublication=false)=0 |
| |
| virtual bool | getMergedETags (const Data &eventType, const Data &documentKey, ETagMerger &merger, Contents *destination)=0 |
| |
| virtual bool | documentExists (const Data &eventType, const Data &documentKey, const Data &eTag)=0 |
| |
| virtual bool | getDocument (const resip::Data &eventType, const resip::Data &documentKey, const resip::Data &eTag, PubDocument &document) |
| |
| virtual bool | checkExpired (const Data &eventType, const Data &documentKey, const Data &eTag, uint64_t lastUpdated)=0 |
| |
| virtual void | lockDocuments ()=0 |
| |
| virtual KeyToETagMap & | getDocuments ()=0 |
| |
| virtual void | unlockDocuments ()=0 |
| |
Abstract interface of a datastore of all publication documents processed by DUM.
Derived classes implement the actual storage of publication documents. resip::InMemorySyncPubDb is an example of a local datastore.
Definition at line 20 of file PublicationPersistenceManager.hxx.