Merge "Remove build warning and add temporary getter of privacy name" into tizen_2.1
[platform/framework/native/appfw.git] / src / io / inc / FIoIChannelEventListener.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  * @file                FIoIChannelEventListener.h
19  * @brief               This is the header file for the %IChannelEventListener interface.
20  *
21  * This header file contains the declarations of the %IChannelEventListener interface. @n
22  * If the channel event is generated, a method of this interface will be called.
23  * So, if the application performs jobs related to the channel event, use methods that belong to this class.
24  *
25  */
26 #ifndef _FIO_ICHANNEL_EVENT_LISTENER_H_
27 #define _FIO_ICHANNEL_EVENT_LISTENER_H_
28
29 #include <FBase.h>
30 #include <FBaseRtIEventListener.h>
31 #include <FIoChannelTypes.h>
32 #include <FAppTypes.h>
33
34 namespace Tizen { namespace Io
35 {
36
37 /**
38 * @interface IChannelEventListener
39 * @brief    This interface provides event handlers for the channel creation and deletion.
40 *
41 * @since    2.0
42 *
43 * The %IChannelEventListener interface provides event handlers for receiving the channel events.
44 *
45 */
46 class IChannelEventListener
47         : virtual public Tizen::Base::Runtime::IEventListener
48 {
49 public:
50         /**
51          * This is the destructor for this class.
52          *
53          * @since   2.0
54          */
55         virtual ~IChannelEventListener(void) {}
56
57         /**
58          * Called when an application creates the channel.
59          *
60          * @since 2.0
61          *
62          * @param[in] appId  The application ID that creates the channel
63          * @param[in] type   The type of the channel
64          *
65          */
66         virtual void OnChannelCreated(const Tizen::App::AppId& appId, ChannelType type){}
67
68         /**
69         * Called when an application deletes the channel.
70         *
71         * @since 2.0
72         *
73         * @param[in] appId  The application ID that deletes the channel
74         * @param[in] type   The type of the channel
75         *
76         */
77         virtual void OnChannelDeleted(const Tizen::App::AppId& appId, ChannelType type){}
78
79
80 protected:
81         //
82         // This method is for internal use only.
83         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
84         //
85         // This method is reserved and may change its name at any time without prior notice.
86         //
87         // @since           2.0
88         //
89         virtual void IChannelEventListener_Reserved1(void) {}
90
91         //
92         // This method is for internal use only.
93         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
94         //
95         // This method is reserved and may change its name at any time without prior notice.
96         //
97         // @since           2.0
98         //
99         virtual void IChannelEventListener_Reserved2(void) {}
100
101         //
102         // This method is for internal use only.
103         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
104         //
105         // This method is reserved and may change its name at any time without prior notice.
106         //
107         // @since           2.0
108         //
109         virtual void IChannelEventListener_Reserved3(void) {}
110 };
111
112 } } // Tizen::Io
113
114 #endif // _FIO_ICHANNEL_EVENT_LISTENER_H_
115