26 #ifndef _RECOVERYPOINT_H_ 27 #define _RECOVERYPOINT_H_ 29 #include <BookmarkStore.hpp> 56 virtual void clear() = 0;
81 return _body.get().getSubId();
88 return _body.get().getBookmark();
100 return _body.get().
deepCopy(original_._body.get());
106 return _body.get().clear();
109 RefHandle<RecoveryPointImpl> _body;
116 const Field& bookmark_);
136 : _subId(subId_), _bookmark(bookmark_), _owner(
false)
146 _subId.deepCopy(subId_);
147 _bookmark.deepCopy(bookmark_);
152 _bookmark = bookmark_;
189 _subId.deepCopy(original_.
getSubId());
240 if (_owner) _subId.
deepCopy(subId_);
258 _bookmark = _store.getMostRecent(_subId);
275 _subId.deepCopy(original_.
getSubId());
276 if (
typeid(*
this) ==
typeid(original_))
299 mutable Field _bookmark;
308 #endif //_RECOVERYPOINT_H_ virtual const Field & getBookmark() const
Get the bookmark for this recovery point.
Definition: RecoveryPoint.hpp:170
void clear()
Clear the internal state, possibly reclaiming memory.
Definition: RecoveryPoint.hpp:104
virtual const Field & getSubId() const
Get the sub id for this recovery point.
Definition: RecoveryPoint.hpp:251
RecoveryPoint deepCopy(const RecoveryPoint &original_)
Make self a deep copy of original_.
Definition: RecoveryPoint.hpp:98
virtual const Field & getSubId() const =0
Get the sub id for this recovery point.
virtual const Field & getSubId() const
Get the sub id for this recovery point.
Definition: RecoveryPoint.hpp:165
virtual void clear()
Clear the internal state, possibly reclaiming memory.
Definition: RecoveryPoint.hpp:284
RecoveryPoint provides access to the subId and bookmark needed to restart a subscription.
Definition: RecoveryPoint.hpp:62
RecoveryPointImpl virtual base class provides access to the subId and bookmark needed to restart a su...
Definition: RecoveryPoint.hpp:41
static RecoveryPoint create(const Field &subId_, const Field &, const BookmarkStore &store_)
Use this function in BookmarkStore::setRecoveryPointFactory( std::bind(&DynamicRecoveryPoint::create...
Definition: RecoveryPoint.hpp:229
Defines the AMPS::Field class, which represents the value of a field in a message.
Interface for BookmarkStoreImpl classes.
Definition: BookmarkStore.hpp:225
virtual RecoveryPointImpl * deepCopy()=0
Return a deep copy of self.
virtual RecoveryPointImpl * deepCopy(const RecoveryPointImpl &original_)
Make self a deep copy of original_.
Definition: RecoveryPoint.hpp:180
virtual RecoveryPointImpl * deepCopy()
Return a deep copy of self.
Definition: RecoveryPoint.hpp:175
RecoveryPoint deepCopy()
Return a deep copy of self.
Definition: RecoveryPoint.hpp:92
virtual RecoveryPointImpl * deepCopy(const RecoveryPointImpl &original_)
Make self a deep copy of original_.
Definition: RecoveryPoint.hpp:267
DynamicRecoveryPoint is a RecoveryPoint implementation where subId is set explicitly but bookmark is ...
Definition: RecoveryPoint.hpp:223
Field represents the value of a single field in a Message.
Definition: Field.hpp:84
static RecoveryPoint create(const Field &subId_, const Field &bookmark_)
Use this function in BookmarkStore::setRecoveryPointFactory( std::bind(&FixedRecoveryPoint::create, std::placeholder::_1, std::placeholder::_2))
Definition: RecoveryPoint.hpp:128
virtual const Field & getBookmark() const
Get the bookmark for this recovery point.
Definition: RecoveryPoint.hpp:256
FixedRecoveryPoint is a RecoveryPoint implementation where subId and bookmark are set explicitly...
Definition: RecoveryPoint.hpp:122
virtual void clear()
Clear the internal state, possibly reclaiming memory.
Definition: RecoveryPoint.hpp:195
virtual const Field & getBookmark() const =0
Get the bookmark for this recovery point.
virtual void clear()=0
Clear the internal state, possibly reclaiming memory.
Definition: ampsplusplus.hpp:105
const Field & getSubId() const
Get the sub id for this recovery point.
Definition: RecoveryPoint.hpp:79
virtual RecoveryPointImpl * deepCopy()
Return a deep copy of self.
Definition: RecoveryPoint.hpp:262
const Field & getBookmark() const
Get the bookmark for this recovery point.
Definition: RecoveryPoint.hpp:86