summaryrefslogtreecommitdiffstats
path: root/common/typeindex.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/typeindex.h')
-rw-r--r--common/typeindex.h17
1 files changed, 9 insertions, 8 deletions
diff --git a/common/typeindex.h b/common/typeindex.h
index 4e5a555..a701e9c 100644
--- a/common/typeindex.h
+++ b/common/typeindex.h
@@ -23,6 +23,7 @@
23#include "query.h" 23#include "query.h"
24#include "log.h" 24#include "log.h"
25#include "indexer.h" 25#include "indexer.h"
26#include "storage/key.h"
26#include <QByteArray> 27#include <QByteArray>
27 28
28namespace Sink { 29namespace Sink {
@@ -89,9 +90,9 @@ public:
89 addSampledPeriodIndex<typename Begin::Type, typename End::Type>(Begin::name, End::name); 90 addSampledPeriodIndex<typename Begin::Type, typename End::Type>(Begin::name, End::name);
90 } 91 }
91 92
92 void add(const QByteArray &identifier, const Sink::ApplicationDomain::ApplicationDomainType &entity, Sink::Storage::DataStore::Transaction &transaction, const QByteArray &resourceInstanceId); 93 void add(const Sink::Storage::Identifier &identifier, const Sink::ApplicationDomain::ApplicationDomainType &entity, Sink::Storage::DataStore::Transaction &transaction, const QByteArray &resourceInstanceId);
93 void modify(const QByteArray &identifier, const Sink::ApplicationDomain::ApplicationDomainType &oldEntity, const Sink::ApplicationDomain::ApplicationDomainType &newEntity, Sink::Storage::DataStore::Transaction &transaction, const QByteArray &resourceInstanceId); 94 void modify(const Sink::Storage::Identifier &identifier, const Sink::ApplicationDomain::ApplicationDomainType &oldEntity, const Sink::ApplicationDomain::ApplicationDomainType &newEntity, Sink::Storage::DataStore::Transaction &transaction, const QByteArray &resourceInstanceId);
94 void remove(const QByteArray &identifier, const Sink::ApplicationDomain::ApplicationDomainType &entity, Sink::Storage::DataStore::Transaction &transaction, const QByteArray &resourceInstanceId); 95 void remove(const Sink::Storage::Identifier &identifier, const Sink::ApplicationDomain::ApplicationDomainType &entity, Sink::Storage::DataStore::Transaction &transaction, const QByteArray &resourceInstanceId);
95 96
96 QVector<QByteArray> query(const Sink::QueryBase &query, QSet<QByteArrayList> &appliedFilters, QByteArray &appliedSorting, Sink::Storage::DataStore::Transaction &transaction, const QByteArray &resourceInstanceId); 97 QVector<QByteArray> query(const Sink::QueryBase &query, QSet<QByteArrayList> &appliedFilters, QByteArray &appliedSorting, Sink::Storage::DataStore::Transaction &transaction, const QByteArray &resourceInstanceId);
97 QVector<QByteArray> lookup(const QByteArray &property, const QVariant &value, Sink::Storage::DataStore::Transaction &transaction); 98 QVector<QByteArray> lookup(const QByteArray &property, const QVariant &value, Sink::Storage::DataStore::Transaction &transaction);
@@ -133,7 +134,7 @@ public:
133 134
134private: 135private:
135 friend class Sink::Storage::EntityStore; 136 friend class Sink::Storage::EntityStore;
136 void updateIndex(Action action, const QByteArray &identifier, const Sink::ApplicationDomain::ApplicationDomainType &entity, Sink::Storage::DataStore::Transaction &transaction, const QByteArray &resourceInstanceId); 137 void updateIndex(Action action, const Sink::Storage::Identifier &identifier, const Sink::ApplicationDomain::ApplicationDomainType &entity, Sink::Storage::DataStore::Transaction &transaction, const QByteArray &resourceInstanceId);
137 QByteArray indexName(const QByteArray &property, const QByteArray &sortProperty = QByteArray()) const; 138 QByteArray indexName(const QByteArray &property, const QByteArray &sortProperty = QByteArray()) const;
138 QByteArray sortedIndexName(const QByteArray &property) const; 139 QByteArray sortedIndexName(const QByteArray &property) const;
139 QByteArray sampledPeriodIndexName(const QByteArray &rangeBeginProperty, const QByteArray &rangeEndProperty) const; 140 QByteArray sampledPeriodIndexName(const QByteArray &rangeBeginProperty, const QByteArray &rangeEndProperty) const;
@@ -147,8 +148,8 @@ private:
147 QSet<QPair<QByteArray, QByteArray>> mSampledPeriodProperties; 148 QSet<QPair<QByteArray, QByteArray>> mSampledPeriodProperties;
148 QList<Sink::Indexer::Ptr> mCustomIndexer; 149 QList<Sink::Indexer::Ptr> mCustomIndexer;
149 Sink::Storage::DataStore::Transaction *mTransaction; 150 Sink::Storage::DataStore::Transaction *mTransaction;
150 QHash<QByteArray, std::function<void(Action, const QByteArray &identifier, const QVariant &value, Sink::Storage::DataStore::Transaction &transaction)>> mIndexer; 151 QHash<QByteArray, std::function<void(Action, const Sink::Storage::Identifier &identifier, const QVariant &value, Sink::Storage::DataStore::Transaction &transaction)>> mIndexer;
151 QHash<QByteArray, std::function<void(Action, const QByteArray &identifier, const QVariant &value, Sink::Storage::DataStore::Transaction &transaction)>> mSortIndexer; 152 QHash<QByteArray, std::function<void(Action, const Sink::Storage::Identifier &identifier, const QVariant &value, Sink::Storage::DataStore::Transaction &transaction)>> mSortIndexer;
152 QHash<QByteArray, std::function<void(Action, const QByteArray &identifier, const QVariant &value, const QVariant &sortValue, Sink::Storage::DataStore::Transaction &transaction)>> mGroupedSortIndexer; 153 QHash<QByteArray, std::function<void(Action, const Sink::Storage::Identifier &identifier, const QVariant &value, const QVariant &sortValue, Sink::Storage::DataStore::Transaction &transaction)>> mGroupedSortIndexer;
153 QHash<QPair<QByteArray, QByteArray>, std::function<void(Action, const QByteArray &identifier, const QVariant &begin, const QVariant &end, Sink::Storage::DataStore::Transaction &transaction)>> mSampledPeriodIndexer; 154 QHash<QPair<QByteArray, QByteArray>, std::function<void(Action, const Sink::Storage::Identifier &identifier, const QVariant &begin, const QVariant &end, Sink::Storage::DataStore::Transaction &transaction)>> mSampledPeriodIndexer;
154}; 155};