Update doxygen
[platform/framework/native/appfw.git] / inc / FIoIFileEventListener.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 /**
19  * @file        FIoIFileEventListener.h
20  * @brief       This is the header file for the %IFileEventListener interface.
21  *
22  * This header file contains the declarations of the %IFileEventListener interface.
23  */
24
25 #ifndef _FIO_IFILE_EVENT_LISTENER_H_
26 #define _FIO_IFILE_EVENT_LISTENER_H_
27
28 #include <FBaseString.h>
29 #include <FBaseRtIEventListener.h>
30
31 namespace Tizen { namespace Io
32 {
33
34 /**
35 * @interface    IFileEventListener
36 * @brief        This listener interface is used for receiving file event.
37 *
38 * @since        2.0
39 *
40 * The %IFileEventListener interface is used for receiving file event.
41 */
42 class _OSP_EXPORT_ IFileEventListener
43         : virtual public Tizen::Base::Runtime::IEventListener
44 {
45
46 public:
47         /**
48         * Called when a monitored file or directory is changed.
49         *
50         * @since                2.0
51         *
52         * @return               An error code
53         * @param[in]    events          The file event type @n
54         *                               Multiple event type can be combined using bitwise OR (see Tizen::Io::FileEventType). @n
55         *                               Tizen::Io::FILE_EVENT_TYPE_ALL is provided for all file event type.
56         * @param[in]    path            The path to the directory or file where the event has occurred
57         * @param[in]    eventId         The event ID associating related events for single operation such as File::Move(), Directory::Rename()
58         */
59         virtual void OnFileEventOccured(const unsigned long events, const Tizen::Base::String& path, const unsigned int eventId) = 0;
60
61 protected:
62         //
63         // This method is for internal use only.
64         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
65         //
66         // This method is reserved and may change its name at any time without prior notice.
67         //
68         // @since       2.0
69         //
70         virtual void IFileEventListener_Reserved1(void) {}
71
72         //
73         // This method is for internal use only.
74         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
75         //
76         // This method is reserved and may change its name at any time without prior notice.
77         //
78         // @since       2.0
79         //
80         virtual void IFileEventListener_Reserved2(void) {}
81
82         //
83         // This method is for internal use only.
84         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
85         //
86         // This method is reserved and may change its name at any time without prior notice.
87         //
88         // @since       2.0
89         //
90         virtual void IFileEventListener_Reserved3(void) {}
91
92 }; // IFileEventListener
93
94 }} // Tizen::Io
95
96 #endif //_FIO_IFILE_EVENT_LISTENER
97