Enable build with iniparser v 3.1
[platform/framework/native/appfw.git] / inc / FAppIMapDataControlResponseListener.h
1 //
2 // Copyright (c) 2012 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         FAppIMapDataControlResponseListener.h
19 * @brief        This is the header file for the %IMapDataControlResponseListener interface.
20 *
21 * This header file contains the declarations of the %IMapDataControlResponseListener interface.
22 */
23
24 #ifndef _FAPP_IMAP_DATA_CONTROL_RESPONSE_LISTENER_H_
25 #define _FAPP_IMAP_DATA_CONTROL_RESPONSE_LISTENER_H_
26
27 #include <FBaseDataType.h>
28 #include <FBaseString.h>
29 #include <FBaseColIList.h>
30 #include <FBaseRtIEventListener.h>
31
32 namespace Tizen { namespace App
33 {
34
35 /**
36 * @interface    IMapDataControlResponseListener
37 * @brief                This interface defines a listener for the key-value structured data control response.
38 *
39 * @since        2.0
40 *
41 * The %IMapDataControlResponseListener interface defines a listener for the key-value structured data control response.
42 */
43 class _OSP_EXPORT_ IMapDataControlResponseListener
44         : virtual public Tizen::Base::Runtime::IEventListener
45 {
46
47 public:
48         /**
49          * This polymorphic destructor should be overridden if required. @n
50          * This way, the destructors of the derived classes are called when the destructor of this interface is called.
51          *
52          * @since       2.0
53          */
54         virtual ~IMapDataControlResponseListener(void) {}
55
56         /**
57         * Called when the result value list is received from the key-value structured data control provider. @n
58         * The application requesting the data control can get the result value list by implementing this listener. @n
59         * This listener must be registered by the MapDataControl::SetMapDataControlResponseListener() method for receiving the result value set.
60         * It is called after the MapDataControl::GetValue() method.
61         *
62         * @since        2.0
63         *
64         * @param[in]    reqId                           The request ID
65         * @param[in]    providerId                      The data control provider ID
66         * @param[in]    dataId                          The string that identifies the specific map to obtain from @n
67         *                                                                       The string consists of one or more components, separated by a slash('/').
68         * @param[in]    resultValueList         The result value list of the data control request that gets the matching values @n
69         *                                                                       The type of objects contained in the specified @c resultValueList are
70         *                                                                       Tizen::Base::String.
71         * @param[in]    providerResult          Set to @c true if the data control provider successfully processed the request getting the values, @n
72         *                                                                       else @c false
73         * @param[in]    pErrorMsg                       The error message from the data control provider
74         */
75         virtual void OnMapDataControlGetValueResponseReceived(RequestId reqId, const Tizen::Base::String& providerId,
76                         const Tizen::Base::String& dataId, Tizen::Base::Collection::IList& resultValueList,
77                         bool providerResult, const Tizen::Base::String* pErrorMsg) = 0;
78
79         /**
80         * Called when the response is received from the key-value structured data control provider. @n
81         * The application requesting the data control can get the result by implementing this listener. @n
82         * This listener must be registered by the MapDataControl::SetMapDataControlResponseListener() method for receiving the result response.
83         * It is called after the MapDataControl::AddValue() method.
84         *
85         * @since        2.0
86         *
87         * @param[in]    reqId                           The request ID
88         * @param[in]    providerId                      The data control provider ID
89         * @param[in]    dataId                          The string that identifies the specific map to add to @n
90         *                                                                       The string consists of one or more components, separated by a slash('/').
91         * @param[in]    providerResult          Set to @c true if the data control provider successfully processed the request adding a value, @n
92         *                                                                       else @c false
93         * @param[in]    pErrorMsg                       The error message from the data control provider
94         */
95         virtual void OnMapDataControlAddValueResponseReceived(RequestId reqId, const Tizen::Base::String& providerId,
96                         const Tizen::Base::String& dataId, bool providerResult, const Tizen::Base::String* pErrorMsg) = 0;
97
98         /**
99         * Called when the response is received from the key-value structured data control provider. @n
100         * The application requesting the data control can get the result by implementing this listener. @n
101         * This listener must be registered by the MapDataControl::SetMapDataControlResponseListener() method for receiving the result response.
102         * It is called after the MapDataControl::SetValue() method.
103         *
104         * @since        2.0
105         *
106         * @param[in]    reqId                           The request ID
107         * @param[in]    providerId                      The data control provider ID
108         * @param[in]    dataId                          The string that identifies the specific map to update @n
109         *                                                                       The string consists of one or more components, separated by a slash('/').
110         * @param[in]    providerResult          Set to @c true if the data control provider successfully processed the request replacing a value, @n
111         *                                                                       else @c false
112         * @param[in]    pErrorMsg                       The error message from the data control provider
113         */
114         virtual void OnMapDataControlSetValueResponseReceived(RequestId reqId, const Tizen::Base::String& providerId,
115                         const Tizen::Base::String& dataId, bool providerResult, const Tizen::Base::String* pErrorMsg) = 0;
116
117         /**
118         * Called when the response is received from the key-value structured data control provider. @n
119         * The application requesting the data control can get the result by implementing this listener. @n
120         * This listener must be registered by the MapDataControl::SetMapDataControlResponseListener() method for receiving the result response.
121         * It is called after the MapDataControl::RemoveValue() method.
122         *
123         * @since        2.0
124         *
125         * @param[in]    reqId                           The request ID
126         * @param[in]    providerId                      The data control provider ID
127         * @param[in]    dataId                          The string that identifies the specific map to remove from @n
128         *                                                                       The string consists of one or more components, separated by a slash('/').
129         * @param[in]    providerResult          Set to @c true if the data control provider successfully processed the request removing a value, @n
130         *                                                                       else @c false
131         * @param[in]    pErrorMsg                       The error message from the data control provider
132         */
133         virtual void OnMapDataControlRemoveValueResponseReceived(RequestId reqId, const Tizen::Base::String& providerId,
134                         const Tizen::Base::String& dataId, bool providerResult, const Tizen::Base::String* pErrorMsg) = 0;
135
136 protected:
137         //
138         // This method is for internal use only.
139         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
140         //
141         // This method is reserved and may change its name at any time without prior notice.
142         //
143         // @since       2.0
144         //
145         virtual void IMapDataControlResponseListener_Reserved1(void) {}
146
147         //
148         // This method is for internal use only.
149         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
150         //
151         // This method is reserved and may change its name at any time without prior notice.
152         //
153         // @since       2.0
154         //
155         virtual void IMapDataControlResponseListener_Reserved2(void) {}
156
157         //
158         // This method is for internal use only.
159         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
160         //
161         // This method is reserved and may change its name at any time without prior notice.
162         //
163         // @since       2.0
164         //
165         virtual void IMapDataControlResponseListener_Reserved3(void) {}
166
167         //
168         // This method is for internal use only.
169         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
170         //
171         // This method is reserved and may change its name at any time without prior notice.
172         //
173         // @since       2.0
174         //
175         virtual void IMapDataControlResponseListener_Reserved4(void) {}
176
177         //
178         // This method is for internal use only.
179         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
180         //
181         // This method is reserved and may change its name at any time without prior notice.
182         //
183         // @since       2.0
184         //
185         virtual void IMapDataControlResponseListener_Reserved5(void) {}
186
187 }; // IMapDataControlResponseListener
188
189 }} // Tizen::App
190
191 #endif // _FAPP_IMAP_DATA_CONTROL_RESPONSE_LISTENER_H_
192