Merge "Add store client appId for installation" into tizen_2.1
[platform/framework/native/appfw.git] / src / io / inc / FIo_IDbUserListener.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 // This method is for internal use only. The Tizen platform team is not
18 // responsible for any behavioral correctness, consistency, and
19 // security-related issues that might arise after using this method.
20 //
21 // @file                FIo_IDbUserListener.h
22 // @brief       This is the header file for the %_IDbUserFunctionListener,
23 //           %_IDbUserAggregateListener, and %_IUserCollationCompareListener classes.
24 //
25 // This header file contains the declarations of the %_IDbUserFunctionListener
26 // %_IDbUserAggregateListener, and %_IUserCollationCompareListener classes.
27
28 #ifndef _FIO_INTERNAL_IDB_USER_LISTENER_H_
29 #define _FIO_INTERNAL_IDB_USER_LISTENER_H_
30
31 #include <FBaseRtIEventListener.h>
32 #include <FOspConfig.h>
33 #include <FIo_DbContextImpl.h>
34
35 namespace Tizen { namespace Io
36 {
37
38 // This method is for internal use only. The Tizen platform team is not
39 // responsible for any behavioral correctness, consistency, and
40 // security-related issues that might arise after using this method.
41 //
42 // @interface    _IDbUserFunctionListener
43 // @brief        This interface defines a listener for the user defined SQL function.
44 // @since 2.1
45
46 class _OSP_EXPORT_ _IDbUserFunctionListener
47         : public Tizen::Base::Runtime::IEventListener
48 {
49 public:
50         // This method is for internal use only. The Tizen platform team is not
51         // responsible for any behavioral correctness, consistency, and
52         // security-related issues that might arise after using this method.
53         //
54         // Called when the user defined SQL function is executed.
55         //
56         // @since 2.1
57         // @param[in]   context        The database context
58         // @param[in]   argumentCount  The number of the user defined SQL function
59         // @see          Tizen::Io::_DbContextImpl
60         //
61         virtual void OnDbUserFunction(_DbContextImpl& context, int argumentCount) = 0;
62
63 protected:
64         // This method is for internal use only. The Tizen platform team is not
65         // responsible for any behavioral correctness, consistency, and
66         // security-related issues that might arise after using this method.
67         //
68         // Following method is reserved and may change its name at any time without prior notice.
69         //
70         // @since 2.1
71         //
72         virtual void _IDbUserFunctionListener_Reserverd1(void) {}
73
74         // This method is for internal use only. The Tizen platform team is not
75         // responsible for any behavioral correctness, consistency, and
76         // security-related issues that might arise after using this method.
77         //
78         // Following method is reserved and may change its name at any time without prior notice.
79         //
80         // @since 2.1
81         //
82         virtual void _IDbUserFunctionListener_Reserverd2(void) {}
83
84         // This method is for internal use only. The Tizen platform team is not
85         // responsible for any behavioral correctness, consistency, and
86         // security-related issues that might arise after using this method.
87         //
88         // Following method is reserved and may change its name at any time without prior notice.
89         //
90         // @since 2.1
91         //
92         virtual void _IDbUserFunctionListener_Reserverd3(void) {}
93
94 }; // IDbUserFunctionListener
95
96 // This method is for internal use only. The Tizen platform team is not
97 // responsible for any behavioral correctness, consistency, and
98 // security-related issues that might arise after using this method.
99 //
100 // @interface    _IDbUserAggregateListener
101 // @brief        This interface defines a listener for the user defined SQL aggregate.
102 // @since 2.1
103 class _OSP_EXPORT_ _IDbUserAggregateListener
104         : public Tizen::Base::Runtime::IEventListener
105 {
106 public:
107         // This method is for internal use only. The Tizen platform team is not
108         // responsible for any behavioral correctness, consistency, and
109         // security-related issues that might arise after using this method.
110         //
111         // Called when the user defined SQL aggregate is executed for each row in the result.
112         //
113         // @since 2.1
114         // @param[in]    context        The database context
115         // @param[in]    argumentCount  The number of the user defined SQL function
116         // @see          Tizen::Io::_DbContextImpl
117         //
118         virtual void OnDbUserAggregateStep(_DbContextImpl& context, int argumentCount) = 0;
119
120         // This method is for internal use only. The Tizen platform team is not
121         // responsible for any behavioral correctness, consistency, and
122         // security-related issues that might arise after using this method.
123         //
124         // Called when the user defined SQL aggregate is executed at the end of the row in the result.
125         //
126         // @since 2.1
127         // @param[in]    context     The database context
128         // @see          Tizen::Io::_DbContextImpl
129         //
130         virtual void OnDbUserAggregateFinal(_DbContextImpl& context) = 0;
131
132 protected:
133         // This method is for internal use only. The Tizen platform team is not
134         // responsible for any behavioral correctness, consistency, and
135         // security-related issues that might arise after using this method.
136         //
137         // Following method is reserved and may change its name at any time without prior notice.
138         //
139         // @since 2.1
140         //
141         virtual void _IDbUserAggregateListener_Reserved1(void) {}
142
143         // This method is for internal use only. The Tizen platform team is not
144         // responsible for any behavioral correctness, consistency, and
145         // security-related issues that might arise after using this method.
146         //
147         // Following method is reserved and may change its name at any time without prior notice.
148         //
149         // @since 2.1
150         //
151         virtual void _IDbUserAggregateListener_Reserved2(void) {}
152
153         // This method is for internal use only. The Tizen platform team is not
154         // responsible for any behavioral correctness, consistency, and
155         // security-related issues that might arise after using this method.
156         //
157         // Following method is reserved and may change its name at any time without prior notice.
158         //
159         // @since 2.1
160         //
161         virtual void _IDbUserAggregateListener_Reserved3(void) {}
162
163 }; // IDbUserAggregateListener
164
165 // This method is for internal use only. The Tizen platform team is not
166 // responsible for any behavioral correctness, consistency, and
167 // security-related issues that might arise after using this method.
168 //
169 // @interface    _IDbUserCollationListener
170 // @brief        This interface defines a listener for the user defined SQL collation.
171 // @since 2.1
172
173 class _OSP_EXPORT_ _IDbUserCollationListener
174         : public Tizen::Base::Runtime::IEventListener
175 {
176 public:
177         // This method is for internal use only. The Tizen platform team is not
178         // responsible for any behavioral correctness, consistency, and
179         // security-related issues that might arise after using this method.
180         //
181         // Called when the user defined SQL collating function is executed.
182         //
183         // @since 2.1
184         // @return       Negative, zero, positive if the first string is less than, equal to,
185         //               or greater than the second string, respectively.
186         // @param[in]    string1     The first Stirng value to be compared
187         // @param[in]    string2                The second String value to be compared
188         // @param[in]    pUserData   User data passed from Database::CreateCollation()
189         virtual int OnDbUserCollation(const Tizen::Base::String& string1, const Tizen::Base::String& string2, void* pUserData) = 0;
190
191 protected:
192         // This method is for internal use only. The Tizen platform team is not
193         // responsible for any behavioral correctness, consistency, and
194         // security-related issues that might arise after using this method.
195         //
196         // Following method is reserved and may change its name at any time without prior notice.
197         //
198         // @since 2.1
199         //
200         virtual void _IDbUserCollationListener_Reserved1(void) {}
201
202         // This method is for internal use only. The Tizen platform team is not
203         // responsible for any behavioral correctness, consistency, and
204         // security-related issues that might arise after using this method.
205         //
206         // Following method is reserved and may change its name at any time without prior notice.
207         //
208         // @since 2.1
209         //
210         virtual void _IDbUserCollationListener_Reserved2(void) {}
211
212         // This method is for internal use only. The Tizen platform team is not
213         // responsible for any behavioral correctness, consistency, and
214         // security-related issues that might arise after using this method.
215         //
216         // Following method is reserved and may change its name at any time without prior notice.
217         //
218         // @since 2.1
219         //
220         virtual void _IDbUserCollationListener_Reserved3(void) {}
221
222 }; // _IDbUserCollationListener
223
224 }} // Tizen::Io
225
226 #endif // _FIO_INTERNAL_IDB_USER_LISTENER_H_
227