diff options
author | Mark Spruiell <mes@zeroc.com> | 2014-08-22 13:57:27 -0700 |
---|---|---|
committer | Mark Spruiell <mes@zeroc.com> | 2014-08-22 13:57:27 -0700 |
commit | 72f8cc4a94b6ff77be9c8d08f28ed6b23d59568e (patch) | |
tree | 3c3a82331886bb85928b2edff98f36c147ca88f1 /cpp/src/Freeze/BackgroundSaveEvictorI.h | |
parent | remove convertssl.py from RPMs (diff) | |
download | ice-72f8cc4a94b6ff77be9c8d08f28ed6b23d59568e.tar.bz2 ice-72f8cc4a94b6ff77be9c8d08f28ed6b23d59568e.tar.xz ice-72f8cc4a94b6ff77be9c8d08f28ed6b23d59568e.zip |
ICE-5225 - Freeze changes
Diffstat (limited to 'cpp/src/Freeze/BackgroundSaveEvictorI.h')
-rw-r--r-- | cpp/src/Freeze/BackgroundSaveEvictorI.h | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/cpp/src/Freeze/BackgroundSaveEvictorI.h b/cpp/src/Freeze/BackgroundSaveEvictorI.h index 12037c53275..51001a28385 100644 --- a/cpp/src/Freeze/BackgroundSaveEvictorI.h +++ b/cpp/src/Freeze/BackgroundSaveEvictorI.h @@ -130,13 +130,30 @@ public: // virtual void run(); - struct StreamedObject + struct StreamedObject : public IceUtil::Shared { - Key key; - Value value; + StreamedObject() : + key(0), value(0) + { + } + + ~StreamedObject() + { + delete key; + delete value; + } + + ObjectStoreBase::KeyMarshaler* key; + ObjectStoreBase::ValueMarshaler* value; Ice::Byte status; ObjectStore<BackgroundSaveEvictorElement>* store; + + private: + + StreamedObject(const StreamedObject&) {} + void operator=(const StreamedObject&) {} }; + typedef IceUtil::Handle<StreamedObject> StreamedObjectPtr; protected: @@ -154,7 +171,7 @@ private: void addToModifiedQueue(const BackgroundSaveEvictorElementPtr&); void fixEvictPosition(const BackgroundSaveEvictorElementPtr&); - void stream(const BackgroundSaveEvictorElementPtr&, Ice::Long, StreamedObject&); + void stream(const BackgroundSaveEvictorElementPtr&, Ice::Long, const StreamedObjectPtr&); // // The _evictorList contains a list of all objects we keep, |