82f08a4efc2d9aab61740659d777e7c2184f4482
[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 the call forwarding request.
35  *
36  * @since       2.0
37  *
38  * The %ITelephonyCallForwardListener interface provides methods to listen to the results of the 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. This way, the destructors of the derived classes are called when the destructor of this interface is called.
46      *
47      * @since   2.0
48      */
49         virtual ~ITelephonyCallForwardListener(void) {}
50
51         /**
52      * Called when a response of the call forwarding request is received.
53      *
54      * @since   2.0
55      *
56      * @param[in]    phoneNumber         The phone number
57      * @param[in]    r                   The result of the call forwarding request
58      * @exception    E_SUCCESS           The method is successful.
59      * @exception    E_NOT_RESPONDING    The server on the telephony network is not responding.
60      * @exception    E_SYSTEM            A system error has occurred.
61      */
62         virtual void OnTelephonyCallForwardResponseReceived(const Tizen::Base::String& phoneNumber, result r) = 0;
63
64         /**
65      * Called when a response of the call forwarding stop request is received.
66      *
67      * @since   2.0
68          *
69      * @param[in]    phoneNumber         The phone number
70      * @param[in]    r                   The result of the call forwarding request
71      * @exception    E_SUCCESS           The method is successful.
72      * @exception    E_NOT_RESPONDING    The server on the telephony network is not responding.
73      * @exception    E_SYSTEM            A system error has occurred.
74          */
75         virtual void OnTelephonyCallForwardStopped(const Tizen::Base::String& phoneNumber, result r) = 0;
76
77         /**
78      * Called when a query for the call forwarding number is completed.
79      *
80      * @since   2.0
81          *
82      * @param[in]    phoneNumber             The phone number
83      * @param[in]    r                       The result of the query request
84      * @exception    E_SUCCESS               The method is successful.
85      * @exception    E_NOT_RESPONDING        The server on the telephony network is not responding.
86      * @exception    E_SERVICE_DEACTIVATED   The call forwarding service is not enabled.
87      * @exception    E_SYSTEM                A system error has occurred.
88      */
89         virtual void OnTelephonyCallForwardNumberReceived(const Tizen::Base::String& phoneNumber, result r) = 0;
90
91 protected:
92         //
93         // This method is for internal use only. Using this method can cause behavioral, security-related,
94         // and consistency-related issues in the application.
95         //
96         // This method is reserved and may change its name at any time without prior notice.
97         //
98         // @since    2.0
99         //
100         virtual void ITelephonyCallForwardListener_Reserved1(void) {}
101
102         //
103         // This method is for internal use only. Using this method can cause behavioral, security-related,
104         // and consistency-related issues in the application.
105         //
106         // This method is reserved and may change its name at any time without prior notice.
107         //
108         // @since    2.0
109         //
110         virtual void ITelephonyCallForwardListener_Reserved2(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         //
116         // This method is reserved and may change its name at any time without prior notice.
117         //
118         // @since    2.0
119         //
120         virtual void ITelephonyCallForwardListener_Reserved3(void) {}
121 }; // ITelephonyCallForwardListener
122
123 }} // Tizen::Telephony
124 #endif // _FTEL_ITELEPHONY_CALL_FORWARD_LISTENER_H_