10e7407fb2d98eec5f25523c8c917ae49103b2da
[framework/web/wrt-plugins-common.git] / src / modules / API / Task / TaskFilter.cpp
1 /*
2  * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  *    Licensed under the Apache License, Version 2.0 (the "License");
5  *    you may not use this file except in compliance with the License.
6  *    You may obtain a copy of the License at
7  *
8  *        http://www.apache.org/licenses/LICENSE-2.0
9  *
10  *    Unless required by applicable law or agreed to in writing, software
11  *    distributed under the License is distributed on an "AS IS" BASIS,
12  *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  *    See the License for the specific language governing permissions and
14  *    limitations under the License.
15  */
16 /**
17  * @file        TaskFilter.cpp
18  * @author      Shi Hezhang (hezhang.shi@samsung.com)
19  * @author      Pan Rui (r.pan@samsung.com)
20  * @version     0.1
21  */
22
23 #include "TaskFilter.h"
24 #include <dpl/log/log.h>
25
26 /**
27  * @file        TaskFilter.cpp
28  * @author      Lukasz Marek (l.marek@samsung.com)
29  * @version     0.1
30  */
31
32 namespace WrtDeviceApis {
33 namespace Task {
34 namespace Api {
35
36 TaskFilter::TaskFilter() :
37     m_id(TASK_FILTER_UNDEFINED_ID),
38     m_taskId(TASK_FILTER_UNDEFINED_TASK_ID),
39     m_dueDateMin(TASK_FILTER_UNDEFINED_TIME_T_MEMBERS),
40     m_dueDateMax(TASK_FILTER_UNDEFINED_TIME_T_MEMBERS),
41     //   m_priority(CalendarTask::UNDEFINED_PRIORITY),
42     //   m_status(CalendarTask::UNDEFINED_STATUS),
43     m_status(new StatusList()),
44     m_priority(new PriorityList()),
45     m_descriptionIsSet(false),
46     m_subjectIsSet(false),
47     m_locationIsSet(false)
48 {
49 }
50
51 TaskFilter::~TaskFilter()
52 {
53 }
54
55 int TaskFilter::getIdFilter() const
56 {
57     return m_id;
58 }
59
60 void TaskFilter::setIdFilter(int value)
61 {
62     m_id = value;
63 }
64
65 int TaskFilter::getTaskIdFilter() const
66 {
67     return m_taskId;
68 }
69
70 void TaskFilter::setTaskIdFilter(int value)
71 {
72     m_taskId = value;
73 }
74
75 std::string TaskFilter::getDescriptionFilter() const
76 {
77     return m_description;
78 }
79
80 void TaskFilter::setDescriptionFilter(const std::string &value)
81 {
82     m_description = value;
83     m_descriptionIsSet = true;
84 }
85
86 std::string TaskFilter::getSubjectFilter() const
87 {
88     return m_subject;
89 }
90
91 void TaskFilter::setSubjectFilter(const std::string &value)
92 {
93     m_subject = value;
94     m_subjectIsSet = true;
95 }
96
97 time_t TaskFilter::getDueDateMinFilter() const
98 {
99     return m_dueDateMin;
100 }
101
102 time_t TaskFilter::getDueDateMaxFilter() const
103 {
104     return m_dueDateMax;
105 }
106
107 void TaskFilter::setDueDateMinFilter(time_t value)
108 {
109     m_dueDateMin = value;
110 }
111
112 void TaskFilter::setDueDateMaxFilter(time_t value)
113 {
114     m_dueDateMax = value;
115 }
116
117 void TaskFilter::setDueDateFilter(time_t value)
118 {
119     setDueDateMinFilter(value);
120     setDueDateMaxFilter(value);
121 }
122
123 PriorityListPtr TaskFilter::getPriorityFilter() const
124 {
125     return m_priority;
126 }
127 void TaskFilter::setPriorityFilter(const PriorityListPtr &value)
128 {
129     m_priority = value;
130 }
131
132 StatusListPtr TaskFilter::getStatusFilter() const
133 {
134     return m_status;
135 }
136 void TaskFilter::setStatusFilter(const StatusListPtr &value)
137 {
138     m_status = value;
139 }
140
141 //CalendarTask::TaskPriority TaskFilter::getPriorityFilter() const
142 //{
143 //    return m_priority;
144 //}
145
146 //void TaskFilter::setPriorityFilter(CalendarTask::TaskPriority value )
147 //{
148 //    m_priority = value;
149 //}
150
151 //CalendarTask::TaskStatus TaskFilter::getStatusFilter() const
152 //{
153 //    return m_status;
154 //}
155
156 //void TaskFilter::setStatusFilter(CalendarTask::TaskStatus value )
157 //{
158 //    m_status = value;
159 //}
160
161 bool TaskFilter::getIdIsSet() const
162 {
163     return m_id != TASK_FILTER_UNDEFINED_ID;
164 }
165
166 bool TaskFilter::getTaskIdIsSet() const
167 {
168     return m_taskId != TASK_FILTER_UNDEFINED_TASK_ID;
169 }
170
171 bool TaskFilter::getDescriptionIsSet() const
172 {
173     return m_descriptionIsSet;
174 }
175
176 bool TaskFilter::getSubjectIsSet() const
177 {
178     return m_subjectIsSet;
179 }
180
181 bool TaskFilter::getDueDateIsSet() const
182 {
183     return (m_dueDateMin != TASK_FILTER_UNDEFINED_TIME_T_MEMBERS ||
184             m_dueDateMax != TASK_FILTER_UNDEFINED_TIME_T_MEMBERS);
185 }
186
187 //bool TaskFilter::getPriorityIsSet() const
188 //{
189 //    return m_priority != CalendarTask::UNDEFINED_PRIORITY;
190 //}
191
192 //bool TaskFilter::getStatusIsSet() const
193 //{
194 //    return m_status != CalendarTask::UNDEFINED_STATUS;
195 //}
196
197 bool TaskFilter::getPriorityIsSet() const
198 {
199     if (m_priority) {
200         return m_priority->size() > 0;
201     }
202     return false;
203 }
204
205 bool TaskFilter::getStatusIsSet() const
206 {
207     if (m_status) {
208         return m_status->size() > 0;
209     }
210     return false;
211 }
212
213 }
214 }
215 }