2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://www.apache.org/licenses/LICENSE-2.0
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
18 * @file FScl_CalEventInstanceImpl.h
19 * @brief This is the header file for the _CalEventInstanceImpl class.
21 * This header file contains the declarations of the _CalEventInstanceImpl class.
24 #ifndef _FSCL_INTERNAL_CAL_EVENT_INSTANCE_IMPL_H_
25 #define _FSCL_INTERNAL_CAL_EVENT_INSTANCE_IMPL_H_
27 #include <FBaseObject.h>
28 #include <FSclTypes.h>
30 namespace Tizen { namespace Base
36 namespace Tizen { namespace Social
39 class CalEventInstance;
42 * @class _CalEventInstanceImpl
43 * @brief This class provides
45 class _CalEventInstanceImpl
46 : public Tizen::Base::Object
50 * This is the default constructor for this class.
52 _CalEventInstanceImpl(void);
55 * Copying of objects using this copy constructor is allowed.
57 * @param[in] rhs An instance of _CalEventInstanceImpl
59 _CalEventInstanceImpl(const _CalEventInstanceImpl& rhs);
62 * This destructor overrides Tizen::Base::Object::~Object().
64 virtual ~_CalEventInstanceImpl(void);
67 * Compares the input Object with the calling %_CalEventInstanceImpl instance.
69 * @return @c true if the input object equals the calling %_CalEventInstanceImpl instance, @n
71 * @param[in] rhs The object instance to compare with the calling object
73 virtual bool Equals(const Tizen::Base::Object& rhs) const;
76 * Gets the hash value of the current instance.
78 * @return The hash value of the current instance
80 virtual int GetHashCode(void) const;
83 * Gets the original event ID.
87 * @return The original event ID.
89 RecordId GetOriginalEventId(void) const;
92 * Gets the calendar ID.
96 * @return The calendar ID, @n
97 * else @c INVALID_RECORD_ID if the instance is not associated with any calendar.
99 RecordId GetCalendarId(void) const;
102 * Gets the start time.
106 * @return The start time.
108 Tizen::Base::DateTime GetStartTime(void) const;
115 * @return The end time.
117 Tizen::Base::DateTime GetEndTime(void) const;
124 * @return The subject.
126 Tizen::Base::String GetSubject(void) const;
129 * Gets the description.
133 * @return The description.
135 Tizen::Base::String GetDescription(void) const;
142 * @return The location.
144 Tizen::Base::String GetLocation(void) const;
147 * Checks whether the original event of this instance is an all day event.
151 * @return @c true if the original event of this instance is an all day event, @n
154 bool IsAllDayEvent(void) const;
157 * Gets the busy status.
161 * @return The busy status.
163 BusyStatus GetBusyStatus(void) const;
166 * Gets the event status of the original event.
170 * @return The event status of the original event.
172 EventStatus GetStatus(void) const;
175 * Gets the priority level of the original event.
179 * @return The priority level
181 EventPriority GetPriority(void) const;
184 * Gets the sensitivity of the original event.
188 * @return The sensitivity of the original event
190 RecordSensitivity GetSensitivity(void) const;
193 * Checks whether the event instance has a recurring pattern.
197 * @return @c true if the event instance has a recurring pattern, @n
200 bool IsRecurring(void) const;
203 * Checks whether the event instance has reminders.
207 * @return @c true if the event instance has reminders, @n
210 bool HasReminder(void) const;
213 // Sets the original event ID
215 void SetOriginalEventId(RecordId originalEventId);
218 // Sets the calendar ID
220 void SetCalendarId(RecordId calendarId);
223 // Sets the start time
225 void SetStartTime(const Tizen::Base::DateTime& startTime);
230 void SetEndTime(const Tizen::Base::DateTime& endTime);
235 void SetSubject(const Tizen::Base::String& subject);
238 // Sets the description
240 void SetDescription(const Tizen::Base::String& description);
245 void SetLocation(const Tizen::Base::String& location);
248 // Sets whether the event instance is all day event or not
250 void SetAllDayEvent(bool isAllDayEvent);
253 // Sets the busy status
255 void SetBusyStatus(BusyStatus busyStatus);
260 void SetStatus(EventStatus status);
265 void SetPriority(EventPriority priority);
268 // Sets the sensitivity
270 void SetSensitivity(RecordSensitivity sensitivity);
273 // Sets whether the event instance is recurring or not
275 void SetRecurring(bool isRecurring);
278 // Sets whether the event instance is reminder or not
280 void SetHasReminder(bool hasReminder);
283 * Gets the Impl instance.
285 * @return The pointer to _CalEventInstanceImpl
286 * @param[in] eventInstance An instance of %CalEventInstance class
288 static _CalEventInstanceImpl* GetInstance(CalEventInstance& eventInstance);
291 * Gets the Impl instance.
293 * @return The pointer to const _CalEventInstanceImpl
294 * @param[in] eventInstance A const instance of %CalEventInstance class
296 static const _CalEventInstanceImpl* GetInstance(const CalEventInstance& eventInstance);
299 * Copying of objects using this copy assignment operator is allowed.
301 * @param[in] rhs An instance of _CalEventInstanceImpl
303 _CalEventInstanceImpl& operator =(const _CalEventInstanceImpl& rhs);
306 RecordId __originalEventId;
307 RecordId __calendarId;
308 Tizen::Base::DateTime __startDateTime;
309 Tizen::Base::DateTime __endDateTime;
310 Tizen::Base::String __subject;
311 Tizen::Base::String __description;
312 Tizen::Base::String __location;
313 bool __isAllDayEvent;
314 BusyStatus __busyStatus;
315 EventStatus __status;
316 EventPriority __priority;
317 RecordSensitivity __sensitivity;
321 // _CalEventInstanceImpl
325 #endif//_FSCL_INTERNAL_CAL_EVENT_INSTANCE_IMPL_H_