[content] Fix a description for ContentManager
[platform/framework/native/content.git] / inc / FCntIContentUpdateEventListener.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2013 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  * @file                FCntIContentUpdateEventListener.h
20  * @brief               This is the header file for the %IContentUpdateEventListener interface.
21  *
22  * This header file contains the declarations of the %IContentUpdateEventListener interface.
23  */
24
25 #ifndef _FCNT_ICONTENT_UPDATE_EVENT_LISTENER_H_
26 #define _FCNT_ICONTENT_UPDATE_EVENT_LISTENER_H_
27
28 #include <FBaseRtIEventListener.h>
29
30 namespace Tizen { namespace Content
31 {
32 /**
33  * @interface   IContentUpdateEventListener
34  * @brief               This interface is used for receiving the database change notification.
35  *
36  * @since 2.1
37  *
38  * The %IContentUpdateEventListener interface is used for receiving the database change notification.
39  */
40 class _OSP_EXPORT_ IContentUpdateEventListener
41         : virtual public Tizen::Base::Runtime::IEventListener
42 {
43 public:
44         /**
45          * This polymorphic destructor should be overridden if required. @n
46          * This way, the destructors of the derived classes are called when the destructor of this interface is called.
47          *
48          * @since       2.1
49          */
50         virtual ~IContentUpdateEventListener(void) {}
51
52         /**
53          * Called when the content is created.
54          *
55          * @since                               2.1
56          *
57          * @param[in]                   contentId                       The content ID
58          * @param[in]                   contentType             The content type
59          * @param[in]                   r                                       An error code
60          *                                                                                      The following exception is given through this parameter.
61          * @exception                   E_SUCCESS                       The method is successful
62          * @exception                   E_SYSTEM                        The method cannot proceed due to a severe system error.
63          */
64         virtual void OnContentFileCreated(ContentId contentId, ContentType contentType, result r) = 0;
65
66     /**
67     * Called when the content is updated.
68     *
69     * @since                            2.1
70     *
71     * @param[in]                        contentId                       The content ID
72     * @param[in]                        contentType             The content type
73     * @param[in]                        r                                       An error code
74     *                                                                                   The following exception is given through this parameter.
75     * @exception                        E_SUCCESS                       The method is successful
76     * @exception                        E_SYSTEM                        The method cannot proceed due to a severe system error.
77     */
78     virtual void OnContentFileUpdated(ContentId contentId, ContentType contentType, result r) = 0;
79
80         /**
81          * Called when the content is deleted..
82          *
83          * @since                               2.1
84          *
85          * @param[in]                   contentId                       The content ID
86          * @param[in]                   contentType             The content type
87          * @param[in]                   r                                       An error code
88          *                                                                                      The following exception is given through this parameter.
89          * @exception                   E_SUCCESS                       The method is successful
90          * @exception                   E_SYSTEM                        The method cannot proceed due to a severe system error.
91          */
92         virtual void OnContentFileDeleted(ContentId contentId, ContentType contentType, result r) = 0;
93
94         /**
95          * Called when the scan for a directory is completed.
96          *
97          * @since                               2.1
98          *
99          * @param[in]                   directoryPath           The directory path
100          * @param[in]                   r                                       An error code
101          *                                                                                      The following exception is given through this parameter.
102          * @exception                   E_SUCCESS                       The method is successful
103          * @exception                   E_SYSTEM                        The method cannot proceed due to a severe system error.
104          */
105         virtual void OnContentDirectoryScanCompleted(const Tizen::Base::String& directoryPath, result r) = 0;
106
107 protected:
108         //
109         // This method is for internal use only.
110         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
111         //
112         // This method is reserved and may change its name at any time without prior notice.
113         //
114         // @since          2.1
115         //
116         virtual void IContentUpdateEventListener_Reserved1(void) {}
117
118         //
119         // This method is for internal use only.
120         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
121         //
122         // This method is reserved and may change its name at any time without prior notice.
123         //
124         // @since          2.1
125         //
126         virtual void IContentUpdateEventListener_Reserved2(void) {}
127
128         //
129         // This method is for internal use only.
130         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
131         //
132         // This method is reserved and may change its name at any time without prior notice.
133         //
134         // @since          2.1
135         //
136         virtual void IContentUpdateEventListener_Reserved3(void) {}
137
138         //
139         // This method is for internal use only.
140         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
141         //
142         // This method is reserved and may change its name at any time without prior notice.
143         //
144         // @since          2.1
145         //
146         virtual void IContentUpdateEventListener_Reserved4(void) {}
147
148         //
149         // This method is for internal use only.
150         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
151         //
152         // This method is reserved and may change its name at any time without prior notice.
153         //
154         // @since          2.1
155         //
156         virtual void IContentUpdateEventListener_Reserved5(void) {}
157
158 };  // class IContentUpdateEventListener
159
160 }} // Tizen::Content
161
162 #endif // _FCNT_ICONTENT_UPDATE_EVENT_LISTENER_H_