27 #include "../GridFileManager.h"
28 #include "../MongoDBRef.h"
43 return entity ? entity->getId() :
"";
49 return entity ? entity->getName() :
"";
61 this->entity = entity;
71 memoryx::EntityAttributeBasePtr newAttr)
73 if (!oldAttr || !newAttr)
78 int size = oldAttr->size();
79 int newSize = newAttr->size();
81 for (
int i = 0; i < size; ++i)
84 armarx::VariantPtr::dynamicCast(oldAttr->getValueAt(i));
90 oldDocId = oldMongoRef->getClass<
MongoDBRef>()->docId;
98 armarx::VariantPtr::dynamicCast(newAttr->getValueAt(i));
99 newDocId = newMongoRef->get<
MongoDBRef>()->docId;
102 if (i >= newSize || (!oldDocId.empty() && newDocId != oldDocId))
104 ARMARX_INFO_S <<
"Removing old file: " << oldAttr->getName();
118 int size = attr->size();
119 for (
int i = 0; i < size; ++i)
121 armarx::VariantPtr oldMongoRef = armarx::VariantPtr::dynamicCast(attr->getValueAt(i));
123 std::string oldDocId;
127 oldDocId = oldMongoRef->getClass<
MongoDBRef>()->docId;
128 if (!oldDocId.empty())
139 bool preserveOriginalFName )
const
141 std::string result =
"";
146 getEntity()->getAttribute(attrName), result, preserveOriginalFName);
153 fileManager(fileManager)