7#ifndef KACTIVITIES_STATS_QUERY_H
8#define KACTIVITIES_STATS_QUERY_H
10#include <initializer_list>
15#include "kactivitiesstats_export.h"
53class KACTIVITIESSTATS_EXPORT
Query
65 bool operator==(
const Query &right)
const;
66 bool operator!=(
const Query &right)
const;
69 QStringList types()
const;
70 QStringList agents()
const;
71 QStringList activities()
const;
73 QStringList urlFilters()
const;
77 QDate dateStart()
const;
78 QDate dateEnd()
const;
82 void addTypes(
const QStringList &types);
83 void addAgents(
const QStringList &agents);
84 void addActivities(
const QStringList &activities);
85 void addUrlFilters(
const QStringList &urlFilters);
103 void setOffset(
int offset);
104 void setLimit(
int limit);
109 void setDateStart(QDate date);
110 void setDateEnd(QDate date);
114 void clearActivities();
115 void clearUrlFilters();
117 void removeTypes(
const QStringList &types);
118 void removeAgents(
const QStringList &agents);
119 void removeActivities(
const QStringList &activities);
120 void removeUrlFilters(
const QStringList &urlFilters);
125 addTypes(term.values);
130 addAgents(term.values);
133 inline void addTerm(
const Terms::Activity &term)
135 addActivities(term.values);
138 inline void addTerm(
const Terms::Url &term)
140 addUrlFilters(term.values);
143 inline void addTerm(Terms::Order ordering)
145 setOrdering(ordering);
148 inline void addTerm(Terms::Select selection)
150 setSelection(selection);
153 inline void addTerm(Terms::Limit limit)
155 setLimit(limit.value);
158 inline void addTerm(Terms::Offset offset)
160 setOffset(offset.value);
163 inline void addTerm(Terms::Date date)
165 setDateStart(date.start);
166 setDateEnd(date.end);
170 template<
typename Term>
171 friend inline Query operator|(
const Query &query, Term &&term)
174 result.addTerm(term);
178 template<
typename Term>
179 friend inline Query operator|(Query &&query, Term &&term)
182 return std::move(query);
189template<
typename Term>
192 return Query(selection) | term;
198KACTIVITIESSTATS_EXPORT
The activities system tracks resources (documents, contacts, etc.) that the user has used.
Definition query.h:54
void setAgents(const Terms::Agent &agents)
void setTypes(const Terms::Type &types)
void setUrlFilters(const Terms::Url &urlFilters)
void setDate(const Terms::Date &date)
void setActivities(const Terms::Activity &activities)
Order
Enumerator specifying the ordering in which the results of the query should be listed.
Definition terms.h:32
Select
Which resources should be returned.
Definition terms.h:43
Term to filter the resources according the activity in which they were accessed.
Definition terms.h:140
Term to filter the resources according the agent (application) which accessed it.
Definition terms.h:107
On which start access date do you want to filter ?
Definition terms.h:209
Term to filter the resources according to their types.
Definition terms.h:76
Url filtering.
Definition terms.h:172