Init Tizen 2.2.1
[framework/osp/social.git] / inc / FSclIAccountEventListener.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  * @file                FSclIAccountEventListener.h
18  * @brief               This is the header file for the %IAccountEventListener interface.
19  *
20  * This header file contains the declarations of the %IAccountEventListener interface.
21  */
22 #ifndef _FSCL_IACCOUNT_EVENT_LISTENER_H_
23 #define _FSCL_IACCOUNT_EVENT_LISTENER_H_
24
25 #include <FBaseRtIEventListener.h>
26 #include <FSclTypes.h>
27
28 namespace Tizen { namespace Base { namespace Collection {
29 class IList;
30 } } }
31
32 namespace Tizen { namespace Social
33 {
34
35 /**
36  * @interface   IAccountEventListener
37  * @brief               This interface provides a listener that receives the events associated with account changes.
38  *
39  * @since               2.1
40  *
41  * The %IAccountEventListener interface provides a listener that receives the events associated with account changes.
42  *
43  */
44 class _OSP_EXPORT_ IAccountEventListener
45         : virtual public Tizen::Base::Runtime::IEventListener
46 {
47 public:
48
49         /**
50          * This polymorphic destructor should be overridden if required. @n
51          * This way, the destructors of the derived classes are called when the destructor of this interface is called.
52          *
53          * @since       2.1
54          */
55         virtual ~IAccountEventListener(void) {}
56
57         /**
58          * Called to notify when an account is added.
59          *
60          * @since       2.1
61          *
62          * @param[in]   accountId       The account ID of the added account
63          */
64         virtual void OnAccountAdded(AccountId accountId) = 0;
65
66         /**
67          * Called to notify when an account is updated.
68          *
69          * @since       2.1
70          *
71          * @param[in]   accountId       The account ID of the updated account
72          */
73         virtual void OnAccountUpdated(AccountId accountId) = 0;
74
75         /**
76          * Called to notify when an account is removed.
77          *
78          * @since       2.1
79          *
80          * @param[in]   accountId       The account ID of the removed account
81          */
82         virtual void OnAccountRemoved(AccountId accountId) = 0;
83
84 protected:
85         //
86         // This method is for internal use only. Using this method can cause behavioral, security-related,
87         // and consistency-related issues in the application.
88         // This method is reserved and may change its name at any time without prior notice.
89         //
90         // @since       2.1
91         //
92         virtual void IAccountEventListener_Reserved1(void){ }
93
94         //
95         // This method is for internal use only. Using this method can cause behavioral, security-related,
96         // and consistency-related issues in the application.
97         // This method is reserved and may change its name at any time without prior notice.
98         //
99         // @since       2.1
100         //
101         virtual void IAccountEventListener_Reserved2(void){ }
102
103         //
104         // This method is for internal use only. Using this method can cause behavioral, security-related,
105         // and consistency-related issues in the application.
106         // This method is reserved and may change its name at any time without prior notice.
107         //
108         // @since       2.1
109         //
110         virtual void IAccountEventListener_Reserved3(void){ }
111
112         //
113         // This method is for internal use only. Using this method can cause behavioral, security-related,
114         // and consistency-related issues in the application.
115         // This method is reserved and may change its name at any time without prior notice.
116         //
117         // @since       2.1
118         //
119         virtual void IAccountEventListener_Reserved4(void){ }
120
121         //
122         // This method is for internal use only. Using this method can cause behavioral, security-related,
123         // and consistency-related issues in the application.
124         // This method is reserved and may change its name at any time without prior notice.
125         //
126         // @since       2.1
127         //
128         virtual void IAccountEventListener_Reserved5(void){ }
129
130 };      // IAccountEventListener
131
132 }}      // Tizen::Social
133
134 #endif // _FSCL_IACCOUNT_EVENT_LISTENER_H_