diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-09-27 11:25:49 +0200 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-09-27 11:25:49 +0200 |
commit | 577c2c344079c1a87d3d93be5f957e5f2d935bff (patch) | |
tree | d158857f9a832649e1c0b498b768a30d614fc613 /common/query.h | |
parent | fd532607ef29aac49b52c861e5aecda6dfa19e82 (diff) | |
download | sink-577c2c344079c1a87d3d93be5f957e5f2d935bff.tar.gz sink-577c2c344079c1a87d3d93be5f957e5f2d935bff.zip |
Don't access the propertyFilter list directly.
Diffstat (limited to 'common/query.h')
-rw-r--r-- | common/query.h | 28 |
1 files changed, 23 insertions, 5 deletions
diff --git a/common/query.h b/common/query.h index 3021fe2..0c6260b 100644 --- a/common/query.h +++ b/common/query.h | |||
@@ -235,22 +235,40 @@ public: | |||
235 | template <typename T> | 235 | template <typename T> |
236 | Query &filter(const QVariant &value) | 236 | Query &filter(const QVariant &value) |
237 | { | 237 | { |
238 | propertyFilter.insert(T::name, value); | 238 | return filter(T::name, value); |
239 | return *this; | ||
240 | } | 239 | } |
241 | 240 | ||
242 | template <typename T> | 241 | template <typename T> |
243 | Query &filter(const Comparator &comparator) | 242 | Query &filter(const Comparator &comparator) |
244 | { | 243 | { |
245 | propertyFilter.insert(T::name, comparator); | 244 | return filter(T::name, comparator); |
245 | } | ||
246 | |||
247 | Query &filter(const QByteArray &property, const Comparator &comparator) | ||
248 | { | ||
249 | propertyFilter.insert(property, comparator); | ||
246 | return *this; | 250 | return *this; |
247 | } | 251 | } |
248 | 252 | ||
253 | Comparator getFilter(const QByteArray &property) const | ||
254 | { | ||
255 | return propertyFilter.value(property); | ||
256 | } | ||
257 | |||
258 | bool hasFilter(const QByteArray &property) const | ||
259 | { | ||
260 | return propertyFilter.contains(property); | ||
261 | } | ||
262 | |||
263 | QHash<QByteArray, Comparator> getBaseFilters() const | ||
264 | { | ||
265 | return propertyFilter; | ||
266 | } | ||
267 | |||
249 | template <typename T> | 268 | template <typename T> |
250 | Query &filter(const ApplicationDomain::Entity &value) | 269 | Query &filter(const ApplicationDomain::Entity &value) |
251 | { | 270 | { |
252 | propertyFilter.insert(T::name, QVariant::fromValue(value.identifier())); | 271 | return filter(T::name, QVariant::fromValue(value.identifier())); |
253 | return *this; | ||
254 | } | 272 | } |
255 | 273 | ||
256 | Query &filter(const ApplicationDomain::SinkResource &resource) | 274 | Query &filter(const ApplicationDomain::SinkResource &resource) |