read: auto-register prefixes for inserted data
Change-Id: Iebddca056a4c74f179f7af7203881adfe1cba777
refs: #4247
diff --git a/src/storage/repo-storage.cpp b/src/storage/repo-storage.cpp
index 1828eb9..d3834ba 100644
--- a/src/storage/repo-storage.cpp
+++ b/src/storage/repo-storage.cpp
@@ -51,7 +51,10 @@
int64_t id = m_storage.insert(data);
if (id == -1)
return false;
- return m_index.insert(data, id);
+ bool didInsert = m_index.insert(data, id);
+ if (didInsert)
+ afterDataInsertion(data.getName());
+ return didInsert;
}
ssize_t
@@ -65,10 +68,13 @@
while (idName.first != 0) {
bool resultDb = m_storage.erase(idName.first);
bool resultIndex = m_index.erase(idName.second); //full name
- if (resultDb && resultIndex)
+ if (resultDb && resultIndex) {
+ afterDataDeletion(idName.second);
count++;
- else
+ }
+ else {
hasError = true;
+ }
idName = m_index.find(name);
}
if (hasError)
@@ -88,10 +94,13 @@
while (idName.first != 0) {
bool resultDb = m_storage.erase(idName.first);
bool resultIndex = m_index.erase(idName.second); //full name
- if (resultDb && resultIndex)
+ if (resultDb && resultIndex) {
+ afterDataDeletion(idName.second);
count++;
- else
+ }
+ else {
hasError = true;
+ }
idName = m_index.find(interestDelete);
}
if (hasError)