Merge from 2.2
[platform/framework/native/telephony.git] / inc / FTelITelephonyCallForwardListener.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012-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  * @file    FTelITelephonyCallForwardListener.h
19  * @brief   This is the header file for the %ITelephonyCallForwardListener interface.
20  *
21  * This header file contains the declarations of the %ITelephonyCallForwardListener interface.
22  */
23 #ifndef _FTEL_ITELEPHONY_CALL_FORWARD_LISTENER_H_
24 #define _FTEL_ITELEPHONY_CALL_FORWARD_LISTENER_H_
25
26
27 #include <FBase.h>
28
29
30 namespace Tizen { namespace Telephony
31 {
32 /**
33  * @interface   ITelephonyCallForwardListener
34  * @brief       This interface provides methods to listen to the results of a call forwarding request.
35  *
36  * @since       2.0
37  *
38  * The %ITelephonyCallForwardListener interface provides methods to listen to the results of a call forwarding request.
39  */
40 class _OSP_EXPORT_ ITelephonyCallForwardListener
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.0
49      */
50         virtual ~ITelephonyCallForwardListener(void) {}
51
52         /**
53      * Called when the response to the call forwarding request is received.
54      *
55      * @since   2.0
56      *
57      * @param[in]    phoneNumber         The phone number
58      * @param[in]    r                   The result of the call forwarding request
59      * @exception    E_SUCCESS           The method is successful.
60      * @exception    E_NOT_RESPONDING    The server of the telephony network is not responding.
61      * @exception    E_SYSTEM            A system error has occurred.
62      */
63         virtual void OnTelephonyCallForwardResponseReceived(const Tizen::Base::String& phoneNumber, result r) = 0;
64
65         /**
66      * Called when the response to the call forwarding stop request is received.
67      *
68      * @since   2.0
69          *
70      * @param[in]    phoneNumber         The phone number
71      * @param[in]    r                   The result of the call forwarding request
72      * @exception    E_SUCCESS           The method is successful.
73      * @exception    E_NOT_RESPONDING    The server of the telephony network is not responding.
74      * @exception    E_SYSTEM            A system error has occurred.
75          */
76         virtual void OnTelephonyCallForwardStopped(const Tizen::Base::String& phoneNumber, result r) = 0;
77
78         /**
79      * Called when the query for the call forwarding number is completed.
80      *
81      * @since   2.0
82          *
83      * @param[in]    phoneNumber             The phone number
84      * @param[in]    r                       The result of the query request
85      * @exception    E_SUCCESS               The method is successful.
86      * @exception    E_NOT_RESPONDING        The server of the telephony network is not responding.
87      * @exception    E_SERVICE_DEACTIVATED   The call forwarding service is not enabled.
88      * @exception    E_SYSTEM                A system error has occurred.
89      */
90         virtual void OnTelephonyCallForwardNumberReceived(const Tizen::Base::String& phoneNumber, result r) = 0;
91
92 protected:
93         //
94         // This method is for internal use only. Using this method can cause behavioral, security-related,
95         // and consistency-related issues in the application.
96         //
97         // This method is reserved and may change its name at any time without prior notice.
98         //
99         // @since    2.0
100         //
101         virtual void ITelephonyCallForwardListener_Reserved1(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         //
107         // This method is reserved and may change its name at any time without prior notice.
108         //
109         // @since    2.0
110         //
111         virtual void ITelephonyCallForwardListener_Reserved2(void) {}
112
113         //
114         // This method is for internal use only. Using this method can cause behavioral, security-related,
115         // and consistency-related issues in the application.
116         //
117         // This method is reserved and may change its name at any time without prior notice.
118         //
119         // @since    2.0
120         //
121         virtual void ITelephonyCallForwardListener_Reserved3(void) {}
122 }; // ITelephonyCallForwardListener
123
124 }} // Tizen::Telephony
125 #endif // _FTEL_ITELEPHONY_CALL_FORWARD_LISTENER_H_