a61eca39f421801cb674c870822b55c0cc41c5fd
[framework/osp/social.git] / inc / FSclCategoryChangeInfo.h
1 //
2 // Open Service Platform
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  * @file                FSclCategoryChangeInfo.h
19  * @brief               This is the header file for the %CategoryChangeInfo class.
20  *
21  * This header file contains the declarations of the %CategoryChangeInfo class.
22  */
23 #ifndef _FSCL_CATEGORY_CHANGE_INFO_H_
24 #define _FSCL_CATEGORY_CHANGE_INFO_H_
25
26 #include <FBaseObject.h>
27 #include <FSclTypes.h>
28 #include <FSclRecord.h>
29
30 namespace Tizen { namespace Social
31 {
32
33 /**
34  * @class       CategoryChangeInfo
35  * @brief       This class provides a category change information.
36  *
37  * @since       2.0
38  *
39  * @final       This class is not intended for extension.
40  *
41  * The %CategoryChangeInfo class provides a category change information.
42  *
43  */
44 class _OSP_EXPORT_ CategoryChangeInfo
45         : public Tizen::Base::Object
46 {
47 public:
48         /**
49          * This is the default constructor for this class.
50          *
51          * @since       2.0
52          */
53         CategoryChangeInfo(void);
54
55         /**
56          * Copying of objects using this copy constructor is allowed.
57          *
58          * @since       2.0
59          *
60          * @param[in]   rhs             An instance of %CategoryChangeInfo
61          */
62         CategoryChangeInfo(const CategoryChangeInfo& rhs);
63
64         /**
65          * This destructor overrides Tizen::Base::Object::~Object().
66          *
67          * @since       2.0
68          */
69         virtual ~CategoryChangeInfo(void);
70
71         /**
72          * Checks whether the value of the specified instance is equal to the value of the current instance of Tizen::Base::Object.
73          *
74          * @since       2.0
75          *
76          * @return      @c true if the value of the specified instance of Tizen::Base::Object is equal to the value of the current instance of %Tizen::Base::Object, @n
77          *                      else @c false
78          * @param[in]   rhs     An instance of Tizen::Base::Object to compare
79          */
80         virtual bool Equals(const Tizen::Base::Object& rhs) const;
81
82         /**
83          * Gets the hash value of the current instance.
84          *
85          * @since       2.0
86          *
87          * @return      The hash value of the current instance
88          */
89         virtual int GetHashCode(void) const;
90
91         /**
92          * Gets the addressbook ID of the changed category.
93          *
94          * @since       2.0
95          *
96          * @return      The addressbook ID
97          */
98         AddressbookId GetAddressbookId(void) const;
99
100         /**
101          * Gets the ID of the changed category.
102          *
103          * @since       2.0
104          *
105          * @return      The category ID
106          */
107         RecordId GetCategoryId(void) const;
108
109         /**
110          * Gets the version.
111          *
112          * @since       2.0
113          *
114          * @return      The version of the category
115          */
116         int GetVersion(void) const;
117
118         /**
119          * Gets the change type.
120          *
121          * @since       2.0
122          *
123          * @return      The change type
124          */
125         RecordChangeType GetChangeType(void) const;
126
127         /**
128          * Copying of objects using this copy assignment operator is allowed.
129          *
130          * @since       2.0
131          *
132          * @param[in]   rhs             An instance of %CategoryChangeInfo
133          */
134         CategoryChangeInfo& operator =(const CategoryChangeInfo& rhs);
135
136 private:
137         friend class _CategoryChangeInfoImpl;
138         class _CategoryChangeInfoImpl* __pCategoryChangeInfoImpl;
139
140 };      // CategoryChangeInfo
141
142 }}      // Tizen::Social
143
144 #endif // _FSCL_CATEGORY_CHANGE_INFO_H_