|
|
The PersistentEntitySegment class is the base class for all memory segments containing memoryx::Entity instances to be stored permanently in MongoDB. More...
#include <MemoryX/core/memory/PersistentEntitySegment.h>
Inheritance diagram for PersistentEntitySegment:Public Member Functions | |
| std::string | addEntity (const EntityBasePtr &entity, const ::Ice::Current &c=Ice::emptyCurrent) override |
addEntity add new entity and return the newly generated entity ID More... | |
| EntityIdList | addEntityList (const EntityBaseList &entityList, const Ice::Current &=Ice::emptyCurrent) override |
| addEntityList adds all entities contained in \entityList to this segment and returns a list of created entity IDs More... | |
| virtual EntityIdList | addEntityListThreadUnsafe (const EntityBaseList &entityList) |
| virtual std::string | addEntityThreadUnsafe (const EntityBasePtr &entity) |
| void | addReadCollection (const CollectionInterfacePrx &coll, const ::Ice::Current &=Ice::emptyCurrent) override |
| void | clear (const ::Ice::Current &=Ice::emptyCurrent) override |
| clear removes all elements from the current memoryx::PersistentEntitySegment::writeCollection More... | |
| void | clearReadCollections (const ::Ice::Current &=Ice::emptyCurrent) override |
| EntityRefList | findRefsByQuery (const std::string &query, const Ice::Current &c) override |
| retrieves Entity Refs that match the query. More... | |
| EntityBaseList | getAllEntities (const ::Ice::Current &=Ice::emptyCurrent) const override |
| getAllEntities returns a list of all entities managed by this memory segment More... | |
| EntityIdList | getAllEntityIds (const ::Ice::Current &=Ice::emptyCurrent) const override |
| virtual EntityIdList | getAllEntityIdsThreadUnsafe () const |
| EntityBaseList | getEntitiesByAttrValue (const ::std::string &attrName, const ::std::string &attrValue, const ::Ice::Current &=Ice::emptyCurrent) const override |
| EntityBaseList | getEntitiesByAttrValueList (const ::std::string &attrName, const NameList &attrValueList, const ::Ice::Current &=Ice::emptyCurrent) const override |
| EntityBasePtr | getEntityById (const ::std::string &entityId, const ::Ice::Current &=Ice::emptyCurrent) const override |
| virtual EntityBasePtr | getEntityByIdThreadUnsafe (const ::std::string &entityId) const |
| EntityBasePtr | getEntityByName (const ::std::string &name, const ::Ice::Current &=Ice::emptyCurrent) const override |
| virtual EntityBasePtr | getEntityByNameThreadUnsafe (const ::std::string &name) const |
| EntityRefBasePtr | getEntityRefById (const std::string &id, const Ice::Current &) const override |
| EntityRefBasePtr | getEntityRefByName (const std::string &name, const Ice::Current &c) const override |
| ::Ice::Identity | getIceId (const ::Ice::Current &=Ice::emptyCurrent) const override |
| IdEntityMap | getIdEntityMap (const ::Ice::Current &=Ice::emptyCurrent) const override |
| std::string | getObjectTypeId (const ::Ice::Current &=Ice::emptyCurrent) const override |
| NameList | getReadCollectionsNS (const ::Ice::Current &=Ice::emptyCurrent) const override |
| std::string | getSegmentName (const ::Ice::Current &=Ice::emptyCurrent) const override |
| std::string | getWriteCollectionNS (const ::Ice::Current &=Ice::emptyCurrent) const override |
| bool | hasEntityById (const std::string &entityId, const Ice::Current &=Ice::emptyCurrent) const override |
| bool | hasEntityByIdThreadUnsafe (const std::string &entityId) const |
| bool | hasEntityByName (const std::string &entityName, const Ice::Current &=Ice::emptyCurrent) const override |
| bool | hasEntityByNameThreadUnsafe (const std::string &entityName) const |
| PersistentEntitySegment (CollectionInterfacePrx entityCollection, Ice::CommunicatorPtr ic, bool useMongoIds=true) | |
| void | print (const ::Ice::Current &=Ice::emptyCurrent) const override |
| void | removeAllEntities (const ::Ice::Current &c=Ice::emptyCurrent) override |
| removeAllEntities collects all entities managed by this memory segment and removes them from the segment More... | |
| void | removeEntity (const ::std::string &entityId, const ::Ice::Current &=Ice::emptyCurrent) override |
removeEntity removes an entity with the ID entityId More... | |
| virtual void | removeEntityThreadUnsafe (const ::std::string &entityId) |
| void | setEntityAttribute (const std::string &entityId, const EntityAttributeBasePtr &attribute, const Ice::Current &) override |
| void | setEntityAttributes (const std::string &entityId, const EntityAttributeList &attributeMap, const Ice::Current &) override |
| void | setParentMemory (const MemoryInterfacePtr &memory, const Ice::Current &) override |
| void | setSingleRWCollection (const CollectionInterfacePrx &coll, const ::Ice::Current &=Ice::emptyCurrent) override |
| void | setWriteCollection (const CollectionInterfacePrx &coll, const ::Ice::Current &=Ice::emptyCurrent) override |
| Ice::Int | size (const ::Ice::Current &=Ice::emptyCurrent) const override |
| size counts the number of memoryx::Entity instances contained available reachable throuhg memoryx::PersistentEntitySegment::readCollections. More... | |
| void | updateEntity (const ::std::string &entityId, const EntityBasePtr &update, const ::Ice::Current &=Ice::emptyCurrent) override |
| virtual void | updateEntityThreadUnsafe (const ::std::string &entityId, const EntityBasePtr &update) |
| std::string | upsertEntity (const std::string &entityId, const EntityBasePtr &entity, const ::Ice::Current &=Ice::emptyCurrent) override |
| std::string | upsertEntityByName (const std::string &entityName, const EntityBasePtr &entity, const ::Ice::Current &=Ice::emptyCurrent) override |
| virtual std::string | upsertEntityByNameThreadUnsafe (const std::string &entityName, const EntityBasePtr &entity) |
| EntityIdList | upsertEntityList (const EntityBaseList &entityList, const Ice::Current &=Ice::emptyCurrent) override |
| virtual EntityIdList | upsertEntityListThreadUnsafe (const EntityBaseList &entityList) |
| virtual std::string | upsertEntityThreadUnsafe (const std::string &entityId, const EntityBasePtr &entity) |
| ~PersistentEntitySegment () override | |
Public Member Functions inherited from SegmentUtilImplementations | |
| EntityBaseList | getEntityWithChildrenById (const std::string &id, bool includeMetaEntities, const Ice::Current &c=Ice::emptyCurrent) const override |
| EntityBaseList | getEntityWithChildrenByName (const std::string &, bool includeMetaEntities, const Ice::Current &c=Ice::emptyCurrent) const override |
| std::string | getJSONEntityById (const std::string &id, const Ice::Current &) const override |
| ScopedSharedLockPtr | getReadLock (const Ice::Current &c) const |
| ScopedUniqueLockPtr | getWriteLock (const Ice::Current &c) const |
| bool | keepLockAlive (const std::string &token, const Ice::Current &) override |
| SegmentLockBasePtr | lockSegment (const Ice::Current &c) override |
| SegmentUtilImplementations () | |
| bool | unlockSegment (const SegmentLockBasePtr &lock, const Ice::Current &c) override |
| bool | unlockSegmentWithToken (const std::string &token, const Ice::Current &c) override |
Protected Member Functions | |
| EntityBasePtr | deserializeEntity (const DBStorableData &dbEntity) const |
| void | setSegmentName (const std::string &segmentName, const ::Ice::Current &=Ice::emptyCurrent) override |
Protected Member Functions inherited from SegmentUtilImplementations | |
| void | keepAliveCheck () |
Protected Attributes | |
| MongoSerializerPtr | dbSerializer |
| std::recursive_mutex | dbSerializerMutex |
| MemoryInterfacePtr | parentMemory |
| CollectionPrxList | readCollections |
| std::string | segmentName |
| bool | useMongoIds |
| CollectionInterfacePrx | writeCollection |
Protected Attributes inherited from SegmentUtilImplementations | |
| armarx::PeriodicTask< SegmentUtilImplementations >::pointer_type | keepAliveCheckTask |
| IceUtil::Time | keepAliveTimestamp |
| std::mutex | keepAliveTimestampMutex |
| std::string | lockToken |
| std::mutex | mutex |
| ScopedSharedLockPtr | readLock |
| std::shared_mutex | segmentMutex |
| EntityMemorySegmentInterfacePrx | selfProxy |
| std::mutex | tokenMutex |
| ScopedUniqueLockPtr | writeLock |
Additional Inherited Members | |
Public Types inherited from SegmentUtilImplementations | |
| using | ScopedSharedLock = std::unique_lock< std::shared_mutex > |
| using | ScopedSharedLockPtr = std::unique_ptr< ScopedSharedLock > |
| using | ScopedUniqueLock = std::unique_lock< std::shared_mutex > |
| using | ScopedUniqueLockPtr = std::unique_ptr< ScopedSharedLock > |
The PersistentEntitySegment class is the base class for all memory segments containing memoryx::Entity instances to be stored permanently in MongoDB.
Definition at line 105 of file PersistentEntitySegment.h.
| PersistentEntitySegment | ( | CollectionInterfacePrx | entityCollection, |
| Ice::CommunicatorPtr | ic, | ||
| bool | useMongoIds = true |
||
| ) |
Definition at line 42 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
override |
Definition at line 51 of file PersistentEntitySegment.cpp.
|
override |
addEntity add new entity and return the newly generated entity ID
| entity |
Definition at line 152 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
override |
addEntityList adds all entities contained in \entityList to this segment and returns a list of created entity IDs
Definition at line 247 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
virtual |
Definition at line 254 of file PersistentEntitySegment.cpp.
Here is the caller graph for this function:
|
virtual |
Definition at line 159 of file PersistentEntitySegment.cpp.
Here is the caller graph for this function:
|
override |
Definition at line 85 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
override |
clear removes all elements from the current memoryx::PersistentEntitySegment::writeCollection
Definition at line 573 of file PersistentEntitySegment.cpp.
|
override |
Definition at line 77 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
protected |
Definition at line 660 of file PersistentEntitySegment.cpp.
Here is the caller graph for this function:
|
override |
retrieves Entity Refs that match the query.
The query should be a mongo query like: { "attrs.endNode.value.value.entityId": "54b2a43b43b5d3199e3cb5b3" }
| query | |
| c |
Definition at line 773 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
override |
getAllEntities returns a list of all entities managed by this memory segment
Definition at line 620 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
override |
Definition at line 593 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Definition at line 600 of file PersistentEntitySegment.cpp.
Here is the caller graph for this function:
|
override |
Definition at line 473 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
override |
Definition at line 509 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
override |
Definition at line 401 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Definition at line 410 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
override |
Definition at line 442 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Definition at line 450 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
override |
Definition at line 678 of file PersistentEntitySegment.cpp.
|
override |
Definition at line 699 of file PersistentEntitySegment.cpp.
|
override |
Definition at line 579 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
override |
Definition at line 647 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
override |
Definition at line 146 of file PersistentEntitySegment.cpp.
|
override |
Definition at line 56 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
override |
Definition at line 587 of file PersistentEntitySegment.cpp.
|
override |
Definition at line 121 of file PersistentEntitySegment.cpp.
|
override |
Definition at line 326 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:| bool hasEntityByIdThreadUnsafe | ( | const std::string & | entityId | ) | const |
Definition at line 333 of file PersistentEntitySegment.cpp.
Here is the caller graph for this function:
|
override |
Definition at line 368 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:| bool hasEntityByNameThreadUnsafe | ( | const std::string & | entityName | ) | const |
Definition at line 376 of file PersistentEntitySegment.cpp.
Here is the caller graph for this function:
|
override |
Definition at line 567 of file PersistentEntitySegment.cpp.
|
override |
removeAllEntities collects all entities managed by this memory segment and removes them from the segment
| c |
Definition at line 313 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
override |
removeEntity removes an entity with the ID entityId
| entityId |
Definition at line 293 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
virtual |
Definition at line 300 of file PersistentEntitySegment.cpp.
Here is the caller graph for this function:
|
override |
Definition at line 720 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
override |
Definition at line 741 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
override |
Definition at line 766 of file PersistentEntitySegment.cpp.
|
overrideprotected |
Definition at line 813 of file PersistentEntitySegment.cpp.
|
override |
Definition at line 137 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
override |
Definition at line 127 of file PersistentEntitySegment.cpp.
Here is the caller graph for this function:
|
override |
size counts the number of memoryx::Entity instances contained available reachable throuhg memoryx::PersistentEntitySegment::readCollections.
Definition at line 546 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
override |
Definition at line 270 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Definition at line 279 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
override |
Definition at line 170 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
override |
Definition at line 222 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
virtual |
Definition at line 231 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
override |
Definition at line 194 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
|
virtual |
Definition at line 202 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Definition at line 179 of file PersistentEntitySegment.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
protected |
Definition at line 260 of file PersistentEntitySegment.h.
|
mutableprotected |
Definition at line 261 of file PersistentEntitySegment.h.
|
protected |
Definition at line 254 of file PersistentEntitySegment.h.
|
protected |
Definition at line 256 of file PersistentEntitySegment.h.
|
protected |
Definition at line 266 of file PersistentEntitySegment.h.
|
protected |
Definition at line 263 of file PersistentEntitySegment.h.
|
protected |
Definition at line 259 of file PersistentEntitySegment.h.