Update change log and spec for wrt-plugins-tizen_0.4.46
[platform/framework/web/wrt-plugins-tizen.git] / src / Callhistory / CallHistoryEntryProperties.h
1 //
2 // Tizen Web Device API
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 //
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
8 //
9 // http://www.apache.org/licenses/LICENSE-2.0
10 //
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.
16 //
17
18
19 #ifndef TIZENAPIS_API_CALLHISTORY_ENTRY_PROPERTIES_H_
20 #define TIZENAPIS_API_CALLHISTORY_ENTRY_PROPERTIES_H_
21
22 #include <dpl/shared_ptr.h>
23 #include <string>
24 #include <vector>
25 #include "RemoteParty.h"
26
27 namespace DeviceAPI {
28 namespace CallHistory {
29
30 class CallHistoryEntryProperties;
31 typedef DPL::SharedPtr<CallHistoryEntryProperties> CallHistoryEntryPropertiesPtr;
32 typedef std::vector<CallHistoryEntryPropertiesPtr> CallHistoryEntryList;
33 typedef DPL::SharedPtr<CallHistoryEntryList> CallHistoryEntryListPtr;
34 typedef std::vector<std::string> StringArray;
35 typedef DPL::SharedPtr<StringArray> StringArrayPtr;
36
37 class CallHistoryEntryProperties
38 {
39 private:
40         unsigned long m_entryId;
41         std::string m_serviceId;
42         std::string m_callType;
43         StringArrayPtr m_tags;
44         RemotePartyListPtr m_remoteParties;
45         RemotePartyPtr m_forwardedFrom;
46         time_t m_startTime;
47         unsigned long m_duration;
48         std::string m_endReason;
49         std::string m_direction;
50         StringArrayPtr m_recording;
51         unsigned long m_cost;
52         std::string m_currency;
53
54         bool m_filterMark;
55
56 public:
57         void setEntryId(const unsigned long EntryId);
58         void setServiceId(const std::string ServiceId);
59         void setCallType(const std::string CallType);
60         void setTags(const StringArrayPtr &Tags);
61         void setRemoteParties(const RemotePartyListPtr &RemoteParties);
62         void setForwardedFrom(const RemotePartyPtr &ForwardedFrom);
63         void setStartTime(const time_t StartTime);
64         void setDuration(const unsigned long Duration);
65         void setEndReason(const std::string EndReason);
66         void setDirection(const std::string Direction);
67         void setRecording(const StringArrayPtr &Recording);
68         void setCost(const unsigned long Cost);
69         void setCurrency(const std::string Currency);
70         void setFilterMark(const bool mark);
71
72         unsigned long getEntryId() const;
73         std::string getServiceId() const;
74         std::string getCallType() const;
75         StringArrayPtr getTags() const;
76         RemotePartyListPtr getRemoteParties() const;
77         RemotePartyPtr getForwardedFrom() const;
78         time_t getStartTime() const;
79         unsigned long getDuration() const;
80         std::string getEndReason() const;
81         std::string getDirection() const;
82         StringArrayPtr getRecording() const;
83         unsigned long getCost() const;
84         std::string getCurrency() const;
85         bool getFilterMark() const;
86         
87         CallHistoryEntryProperties();
88 };
89 }
90 }
91 #endif