virtual unsigned int GetNumberOfChildren(tree::Node* n);
//====================================================================
+ //====================================================================
+ /// Returns the attribute requested. Useful for synchronization.
+ virtual void GetAttribute(std::string levelDescriptor,
+ std::string searchParam,
+ std::string searchVal,
+ std::string key,
+ std::string& result);
+ //====================================================================
+
+
//====================================================================
/// Recursively loads the children of node 'parent' until maxlevel
// is reached.
virtual bool SetAttribute(tree::Node*,
const std::string& key,
const std::string& value);
+ // Sets an attribute
+ virtual void SetAttribute(const std::string& levelDescriptor,
+ const std::string& key,
+ const std::string& value,
+ const std::string& searchParam,
+ const std::string& searchVal);
+ //Deletes the tuple that matches the parameters given
+ virtual void DeleteTuple(std::string levelDescriptor, std::string key, std::string value);
+
//====================================================================
const std::string& value);
//======================================================================
//======================================================================
-
+ /// Sets an attribute and updates the database
+ void DBSetAttribute(const std::string& levelDescriptor,
+ const std::string& key,
+ const std::string& value,
+ const std::string& searchParam,
+ const std::string& searchVal);
+ //======================================================================
+ //======================================================================
+
/// Inserts the Node in the database
void DBInsert(tree::Node* n);
//======================================================================
+
+ //======================================================================
+
+ /// Deletes the tuple that matches the value specified in the given key and that belongs to the given level
+ void DBDelete(std::string levelDescriptor, std::string key, std::string value);
+ //======================================================================
+
/// Recursively Removes the nodes whose parent is given as a parameter
void DBRecursiveRemoveNode(tree::Node* node);
bool mWritable;
void SetWritable(bool w) { mWritable; }
bool GetWritable() const { return mWritable; }
+ bool mIsAdding;
/*
struct TypeId