Fix the doxygen
[framework/osp/social.git] / inc / FSclContactAppLaunchData.h
1 //
2 // Copyright (c) 2013 Samsung Electronics Co., Ltd.
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 /**
18  * @file                FSclContactAppLaunchData.h
19  * @brief               This is the header file for the %ContactAppLaunchData class.
20  *
21  * This header file contains the declarations of the %ContactAppLaunchData class.
22  */
23
24 #ifndef _FSCL_CONTACT_APP_LAUNCH_DATA_H_
25 #define _FSCL_CONTACT_APP_LAUNCH_DATA_H_
26
27 #include <FBaseResult.h>
28 #include <FBaseObject.h>
29 #include <FBaseString.h>
30
31 namespace Tizen { namespace Base
32 {
33 namespace Collection
34 {
35 class IMap;
36 }
37 }}
38
39 namespace Tizen { namespace Social
40 {
41
42 /**
43  * @class       ContactAppLaunchData
44  * @brief       This class provides the information required to launch an application from a contact.
45  *
46  * @since       2.1
47  *
48  * @final       This class is not intended for extension.
49  *
50  * The %ContactAppLaunchData class provides the information required to launch an application from a contact.
51  * This information consists of the application ID, operation ID, MIME type, URI, display text, and extra data.
52  */
53
54 class _OSP_EXPORT_ ContactAppLaunchData
55         :public Tizen::Base::Object
56 {
57 public:
58         /**
59          * This is the default constructor for this class.
60          *
61          * @since       2.1
62          */
63                 ContactAppLaunchData(void);
64
65         /**
66          * Copying of objects using this copy constructor is allowed.
67          *
68          * @since       2.1
69          *
70          * @param[in]   rhs             An instance of %ContactAppLaunchData to copy
71          */
72                 ContactAppLaunchData(const ContactAppLaunchData& rhs);
73
74         /**
75          * This destructor overrides Tizen::Base::Object::~Object().
76          *
77          * @since       2.1
78          *
79          */
80         virtual ~ContactAppLaunchData(void);
81
82         /**
83          * Checks whether the value of the specified instance is equal to the value of the current instance of Tizen::Base::Object.
84          *
85          * @since       2.1
86          *
87          * @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
88          *                      else @c false
89          * @param[in]   rhs             An instance of Tizen::Base::Object to compare
90          */
91         virtual bool Equals(const Tizen::Base::Object& rhs) const;
92
93         /**
94          * Gets the hash value of the current instance.
95          *
96          * @since       2.1
97          *
98          * @return      The hash value of the current instance
99          */
100         virtual int GetHashCode(void) const;
101
102         /**
103          * Gets the display text that describes the data of the contact app launch.
104          *
105          * @since       2.1
106          *
107          * @return      The text that describes the data of the contact app launch
108          */
109         Tizen::Base::String GetDisplayText(void) const;
110
111         /**
112          * Gets the application ID.
113          *
114          * @since       2.1
115          *
116          * @return      The application ID
117          */
118         Tizen::Base::String GetAppId(void) const;
119
120         /**
121          * Gets the operation ID.
122          *
123          * @since       2.1
124          *
125          * @return      The operation ID
126          */
127         Tizen::Base::String GetOperationId(void) const;
128
129         /**
130          * Gets the URI of an application.
131          *
132          * @since       2.1
133          *
134          * @return      The URI of the application
135          */
136         Tizen::Base::String GetUri(void) const;
137
138         /**
139          * Gets the MIME type of an application.
140          *
141          * @since       2.1
142          *
143          * @return      The MIME type of the application
144          */
145         Tizen::Base::String GetMime(void) const;
146
147         /**
148          * Gets the extra data for a map.
149          *
150          * @since       2.1
151          *
152          * @return      The key-value map of the extended data where the key and value are of type Tizen::Base::String, @n
153          *                      else an empty map if there is no extra data, or @c null if an exception occurs
154          * @remarks     The specific error code can be accessed using the GetlastResult() method.
155          */
156         Tizen::Base::Collection::IMap* GetExtraDataN(void) const;
157
158         /**
159          * Sets the display text that describes the data of the contact app launch.
160          *
161          * @since               2.1
162          *
163          * @param[in]   displayText             The text that describes the data of the contact app launch
164          */
165         void SetDisplayText(const Tizen::Base::String& displayText);
166
167         /**
168          * Sets the application ID.
169          *
170          * @since               2.1
171          *
172          * @param[in]   appId           The application ID to set
173          */
174         void SetAppId(const Tizen::Base::String& appId);
175
176         /**
177          * Sets the operation ID.
178          *
179          * @since               2.1
180          *
181          * @param[in]   operationId             The operation ID to set
182          */
183         void SetOperationId(const Tizen::Base::String& operationId);
184
185         /**
186          * Sets the URI of an application.
187          *
188          * @since               2.1
189          *
190          * @param[in]   uri             The URI of the application to set
191          */
192         void SetUri(const Tizen::Base::String& uri);
193
194         /**
195          * Sets the MIME type of an application.
196          *
197          * @since       2.1
198          *
199          * @param[in]   mime    The MIME type of the application to set
200          */
201         void SetMime(const Tizen::Base::String& mime);
202
203         /**
204          * Sets the extra data to be delivered to an application.
205          *
206          * @since       2.1
207          *
208          * @param[in]   pExtraData              A pointer to the argument map of the key and value pair where the key and value are of type Tizen::Base::String @n
209          *                                                              If @c null is passed, the current extra data is removed.
210          */
211         result SetExtraData(const Tizen::Base::Collection::IMap* pExtraData);
212
213         /**
214          * Copying of objects using this copy assignment operator is allowed.
215          *
216          * @since       2.1
217          *
218          * @param[in]   rhs             An instance of %ContactAppLaunchData to copy
219          */
220         ContactAppLaunchData& operator =(const ContactAppLaunchData& rhs);
221
222         friend bool operator ==(const ContactAppLaunchData& lhs, const ContactAppLaunchData& rhs);
223
224 private:
225         friend class _ContactAppLaunchDataImpl;
226         class _ContactAppLaunchDataImpl* __pContactAppLaunchDataImpl;
227
228 }; // ContactAppLaunchData
229
230 /**
231  * Compares the two specified instances of %ContactAppLaunchData for equality.
232  *
233  * @since       2.1
234  *
235  * @return              @c true if the data of the two specified instances are equal, @n
236  *                              else @c false
237  * @param[in]   lhs             An instance of %ContactAppLaunchData
238  * @param[in]   rhs             An instance of %ContactAppLaunchData
239  */
240 _OSP_EXPORT_ bool operator ==(const ContactAppLaunchData& lhs, const ContactAppLaunchData& rhs);
241
242 /**
243  * Compares the two specified instances of %ContactAppLaunchData for inequality.
244  *
245  * @since       2.1
246  *
247  * @return              @c true if the data of the two specified instances are not equal, @n
248  *                              else @c false
249  * @param[in]   lhs             An instance of %ContactAppLaunchData
250  * @param[in]   rhs             An instance of %ContactAppLaunchData
251  */
252 _OSP_EXPORT_ bool operator !=(const ContactAppLaunchData& lhs, const ContactAppLaunchData& rhs);
253
254 }} // Tizen::Social
255
256 #endif // _FSCL_CONTACT_APP_LAUNCH_DATA_H_