TizenRefApp-8340 [Call UI] Add IBaseCallInfo class and replace checking DialingMode... 91/123691/4
authorIgor Olshevskyi <i.olshevskyi@samsung.com>
Thu, 6 Apr 2017 10:53:46 +0000 (13:53 +0300)
committerIgor Olshevskyi <i.olshevskyi@samsung.com>
Fri, 7 Apr 2017 13:16:45 +0000 (16:16 +0300)
Change-Id: Id7b58763f117606399099be3509462e8f510cf2c

26 files changed:
inc/model/IActiveCall.h
inc/model/IBaseCallInfo.h [new file with mode: 0644]
inc/model/ICallInfo.h
inc/model/IConferenceCallInfo.h
inc/model/IHeldCall.h
inc/model/types.h
src/common.h
src/model/ActiveCall.cpp
src/model/ActiveCall.h
src/model/Call.cpp
src/model/CallClient.cpp
src/model/CallDialer.cpp
src/model/CallInfo.cpp
src/model/CallInfo.h
src/model/CallManager.cpp
src/model/CallManager.h
src/model/ConferenceCallInfo.cpp
src/model/ConferenceCallInfo.h
src/model/HeldCall.cpp
src/model/HeldCall.h
src/model/IncomingCall.cpp
src/model/MsgClient.cpp
src/model/SoundManager.cpp
src/model/helpers.h
src/model/helpers.hpp
src/model/implTypes.h

index c78fc6011516914716b859b3da5a8109f08a8f82..2d58a09b7698f5d9f0abdc03d76703abc0fd9698 100644 (file)
@@ -24,9 +24,10 @@ namespace callui {
        class IActiveCall : public ucl::Polymorphic {
        public:
                virtual ICallInfoSCRef getInfo() const = 0;
+               virtual bool isDialingMode() const = 0;
                virtual ucl::Result hold() = 0;
                virtual ucl::Result end() = 0;
-               virtual ucl::Result split(const IConferenceCallInfoSRef &confCallInfo) = 0;
+               virtual ucl::Result split(const IConferenceCallInfoSCRef &confCallInfo) = 0;
        };
 
 }
diff --git a/inc/model/IBaseCallInfo.h b/inc/model/IBaseCallInfo.h
new file mode 100644 (file)
index 0000000..3d1dd6a
--- /dev/null
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef __CALLUI_MODEL_I_BASE_CALL_INFO_H__
+#define __CALLUI_MODEL_I_BASE_CALL_INFO_H__
+
+#include "types.h"
+
+namespace callui {
+
+       class IBaseCallInfo : public ucl::Polymorphic {
+       public:
+               virtual unsigned int getCallId() const = 0;
+               virtual const std::string &getPhoneNumber() const = 0;
+               virtual IContactInfoSCRef getContactInfo() const = 0;
+       };
+
+}
+
+#endif // __CALLUI_MODEL_I_BASE_CALL_INFO_H__
index c94db98b73178d6b62a19e27ed843859e34a058e..4a30b11b8aba93c0e3e0d91cb098b4be19076bb9 100644 (file)
 #ifndef __CALLUI_MODEL_I_CALL_INFO_H__
 #define __CALLUI_MODEL_I_CALL_INFO_H__
 
+#include "IBaseCallInfo.h"
+
 #include "types.h"
 
 namespace callui {
 
-       class ICallInfo : public ucl::Polymorphic {
+       class ICallInfo : public IBaseCallInfo {
        public:
-               virtual unsigned int getCallId() const = 0;
-               virtual const std::string &getPhoneNumber() const = 0;
-               virtual IContactInfoSCRef getContactInfo() const = 0;
                virtual long getStartTime() const = 0;
                virtual bool isEmergency() const = 0;
-               virtual bool isDialing() const = 0;
                virtual int getConferenceMemberCount() const = 0;
-               virtual const ConfMemberCallList &getConferenceMemberList() const = 0;
+               virtual const ConfMemberList &getConferenceMemberList() const = 0;
        };
 }
 
index 96873ebd0e6dcb209a9da74576765b98cd3b5d84..c2c24b93e1499e77fa243a3ee2b166b088997cce 100644 (file)
 #ifndef __CALLUI_MODEL_I_CONFERENCE_CALL_INFO_H__
 #define __CALLUI_MODEL_I_CONFERENCE_CALL_INFO_H__
 
+#include "IBaseCallInfo.h"
+
 #include "types.h"
 
 namespace callui {
 
-       class IConferenceCallInfo : public ucl::Polymorphic {
-       public:
-               virtual unsigned int getCallId() const = 0;
-               virtual const std::string &getPhoneNumber() const = 0;
-               virtual IContactInfoSRef getContactInfo() const = 0;
+       class IConferenceCallInfo : public IBaseCallInfo {
        };
 }
 
index 3b46357392237af6396cd2289894d41552d95b0f..030ae5d9f1848faf96a5a44268d27b8ba8a0508e 100644 (file)
@@ -28,7 +28,7 @@ namespace callui {
                virtual ucl::Result joinWithActive() = 0;
                virtual ucl::Result swapWithActive() = 0;
                virtual ucl::Result end() = 0;
-               virtual ucl::Result split(const IConferenceCallInfoSRef &confCallInfo) = 0;
+               virtual ucl::Result split(const IConferenceCallInfoSCRef &confCallInfo) = 0;
        };
 }
 
index 5fb856ada107be3ac3fb0f91694a0efef8920a70..a5a1ff2bba50c3209ea41e7a2123fb6cf1cb1640 100644 (file)
@@ -29,13 +29,6 @@ namespace callui {
                DEFAULT
        };
 
-       enum class CallReleaseType {
-               BY_CALL_HANDLE,
-               ALL,
-               ALL_HOLD,
-               ALL_ACTIVE
-       };
-
        enum class CallAnswerType {
                NORMAL,
                HOLD_ACTIVE_AND_ACCEPT,
@@ -118,7 +111,7 @@ namespace callui {
        using AudioStateHandler = ucl::Delegate<void(AudioStateType)>;
        using MuteStateHandler = ucl::Delegate<void(bool)>;
 
-       using ConfMemberCallList = std::vector<IConferenceCallInfoSCRef>;
+       using ConfMemberList = std::vector<IConferenceCallInfoSCRef>;
        using RejectMsgList = std::vector<IRejectMsgSRef>;
 }
 
index 3b25582fdc11c919b137839d88b35fcbd7815b01..b2d0927db1fb34a5cf679e5e64e55f58f8822fac 100644 (file)
@@ -31,6 +31,9 @@
 #undef UCL_LOG_TAG
 #define UCL_LOG_TAG "CALLUI"
 
-#define TEL_NUMBER_MAX_SIZE 82
+namespace callui {
+
+       constexpr auto TEL_NUMBER_MAX_SIZE = 82;
+}
 
 #endif // __CALLUI_COMMON_H__
index 6c09ebcd9fb1e67882db5fd06188e91e8b1f8eca..e238abd69c0ccf7ab3ba204da05259eeed6cd261 100644 (file)
@@ -16,7 +16,8 @@
 
 #include "ActiveCall.h"
 
-#include "CallClient.h"
+#include <call-manager-extension.h>
+
 #include "CallManager.h"
 #include "CallClient.h"
 #include "CallInfo.h"
@@ -29,7 +30,8 @@ namespace callui {
 
        ActiveCall::ActiveCall(CallManager &cm, cm_call_data_h callData):
                        BaseCall(callData),
-                       m_cm(cm)
+                       m_cm(cm),
+                       m_isDialing(false)
        {
        }
 
@@ -54,6 +56,13 @@ namespace callui {
                if (!m_callInfo) {
                        LOG_RETURN_VALUE(RES_FAIL, RES_FAIL, "CallInfo::newInstance() failed!");
                }
+
+               cm_call_state_e callState = CM_CALL_STATE_IDLE;
+               FAIL_RETURN(convertCMResult(
+                               cm_call_data_get_call_state(m_callData, &callState)),
+                               "cm_call_data_get_call_state() failed!");
+               m_isDialing = (callState == CM_CALL_STATE_DIALING);
+
                return RES_OK;
        }
 
@@ -62,9 +71,14 @@ namespace callui {
                return m_callInfo;
        }
 
+       bool ActiveCall::isDialingMode() const
+       {
+               return m_isDialing;
+       }
+
        Result ActiveCall::hold()
        {
-               return convertCallManagerResult(cm_hold_call(*m_cm.getCallClient()));
+               return convertCMResult(cm_hold_call(*m_cm.getCallClient()));
        }
 
        Result ActiveCall::end()
@@ -72,7 +86,7 @@ namespace callui {
                return m_cm.endCall(0, CallReleaseType::ALL_ACTIVE);
        }
 
-       Result ActiveCall::split(const IConferenceCallInfoSRef &confCallInfo)
+       Result ActiveCall::split(const IConferenceCallInfoSCRef &confCallInfo)
        {
                return m_cm.splitCalls(m_callInfo, confCallInfo);
        }
index 8d8e0cca78a7e4e9390fa426350dd9a35d3349d4..7a60d093c6aa95097b2986af346b17bf3442297c 100644 (file)
@@ -36,9 +36,10 @@ namespace callui {
                // IActiveCall
 
                virtual ICallInfoSCRef getInfo() const override final;
+               virtual bool isDialingMode() const override final;
                virtual ucl::Result hold() override final;
                virtual ucl::Result end() override final;
-               virtual ucl::Result split(const IConferenceCallInfoSRef &confCallInfo) override final;
+               virtual ucl::Result split(const IConferenceCallInfoSCRef &confCallInfo) override final;
 
        private:
                friend class ucl::RefCountObj<ActiveCall>;
@@ -49,6 +50,7 @@ namespace callui {
        private:
                CallManager &m_cm;
                CallInfoSRef m_callInfo;
+               bool m_isDialing;
        };
 
 }
index b79724b13de41674ffed30952b0cfe62adbb842d..0c4b7166be14bd5cbd135af9386d8310b4fd4e58 100644 (file)
@@ -41,7 +41,7 @@ namespace callui {
                return result;
        }
 
-       ucl::Result Call::prepare()
+       Result Call::prepare()
        {
                CallClientSRef callClient = CallClient::newInstance();
                if (!callClient) {
index a86cacf0eeb308ad6221bdd0270af24440a9259f..34b4b0d12054dc8b712390fd7051a9f60f90c458 100644 (file)
@@ -44,7 +44,7 @@ namespace callui {
        ucl::Result CallClient::prepare()
        {
                cm_client_h client;
-               FAIL_RETURN_VALUE(convertCallManagerResult(cm_init(&client)), {}, "cm_init() failed!");
+               FAIL_RETURN_VALUE(convertCMResult(cm_init(&client)), {}, "cm_init() failed!");
                m_client = client;
 
                return RES_OK;
index eb8bc698d9f000efee38b45d3ac3f621b1e2e66e..4bfef713db1ca49e5a0a8efffd54b1468baf44a8 100644 (file)
@@ -44,12 +44,12 @@ namespace callui {
 
        void CallDialer::DialStatusChangedCb(cm_dial_status_e status)
        {
-               m_event.invoke(convertCallManagerDialStatus(status));
+               m_event.invoke(convertCMDialStatus(status));
        }
 
        Result CallDialer::prepare()
        {
-               return convertCallManagerResult(
+               return convertCMResult(
                                cm_set_dial_status_cb(*(m_cm.getCallClient()),
                                                CALLBACK_B(CallDialer::DialStatusChangedCb), this));
        }
@@ -59,9 +59,9 @@ namespace callui {
                char buff[TEL_NUMBER_MAX_SIZE] = { 0 };
                snprintf(buff, sizeof(buff), "%s", number.c_str());
 
-               return convertCallManagerResult(
+               return convertCMResult(
                                cm_dial_call(*(m_cm.getCallClient()),
-                                               buff, CM_CALL_TYPE_VOICE, convertCallAppSimSlot(simSlot)));
+                                               buff, CM_CALL_TYPE_VOICE, convertCUISimSlot(simSlot)));
        }
 
        void CallDialer::addDialStatusHandler(DialStatusHandler handler)
index ac307637e44fffdc2aa39724d1f93437e7470b6f..4659a8d91cf29f0174db9a7aaa98aa7707985799 100644 (file)
@@ -34,7 +34,6 @@ namespace callui {
                m_callId(-1),
                m_startTime(0),
                m_isEmergency(false),
-               m_isDialing(false),
                m_confMemberCount(0)
        {
        }
@@ -60,31 +59,26 @@ namespace callui {
 
        Result CallInfo::prepare(CallClient &client, cm_call_data_h callData)
        {
-               Result res = convertCallManagerResult(cm_call_data_get_call_id(callData, &m_callId));
+               Result res = convertCMResult(cm_call_data_get_call_id(callData, &m_callId));
                FAIL_RETURN(res, "cm_call_data_get_call_id() failed!");
 
                char *number = nullptr;
-               res = convertCallManagerResult(cm_call_data_get_call_number(callData, &number));
+               res = convertCMResult(cm_call_data_get_call_number(callData, &number));
                FAIL_RETURN(res, "cm_call_data_get_call_number() failed!");
                m_phoneNum = nz(number);
                // XXX: According to documentation it must be free, but it leads to crash
 //             free(number);
 
                gboolean isEmergency;
-               res = convertCallManagerResult(cm_call_data_is_emergency_call(callData, &isEmergency));
+               res = convertCMResult(cm_call_data_is_emergency_call(callData, &isEmergency));
                FAIL_RETURN(res, "cm_call_data_is_emergency_call() failed!");
                m_isEmergency = isEmergency;
 
-               cm_call_state_e callState = CM_CALL_STATE_IDLE;
-               res = convertCallManagerResult(cm_call_data_get_call_state(callData, &callState));
-               FAIL_RETURN(res, "cm_call_data_get_call_state() failed!");
-               m_isDialing = (callState == CM_CALL_STATE_DIALING);
-
-               res = convertCallManagerResult(cm_call_data_get_start_time(callData, &m_startTime));
+               res = convertCMResult(cm_call_data_get_start_time(callData, &m_startTime));
                FAIL_RETURN(res, "cm_call_data_get_start_time() failed!");
 
                int personId = -1;
-               res = convertCallManagerResult(cm_call_data_get_person_id(callData, &personId));
+               res = convertCMResult(cm_call_data_get_person_id(callData, &personId));
                FAIL_RETURN(res, "cm_call_data_get_person_id() failed!");
 
                if (personId >= 0) {
@@ -94,7 +88,7 @@ namespace callui {
                        }
                }
 
-               res = convertCallManagerResult(cm_call_data_get_call_member_count(callData, &m_confMemberCount));
+               res = convertCMResult(cm_call_data_get_call_member_count(callData, &m_confMemberCount));
                FAIL_RETURN(res, "cm_call_data_get_call_member_count() failed!");
 
                if (m_confMemberCount > 1) {
@@ -110,7 +104,7 @@ namespace callui {
                // XXX: must be initialized with nullptr. If not an there is no conference calls
                // cm_get_conference_callList return CM_ERROR_NONE and pointer will be not changed.
                GSList *callList = nullptr;
-               Result res = convertCallManagerResult(cm_get_conference_call_list(client, &callList));
+               Result res = convertCMResult(cm_get_conference_call_list(client, &callList));
                FAIL_RETURN(res, "cm_get_conference_call_list() failed!");
 
                if (callList) {
@@ -160,17 +154,12 @@ namespace callui {
                return m_isEmergency;
        }
 
-       bool CallInfo::isDialing() const
-       {
-               return m_isDialing;
-       }
-
        int CallInfo::getConferenceMemberCount() const
        {
                return m_confMemberCount;
        }
 
-       const ConfMemberCallList &CallInfo::getConferenceMemberList() const
+       const ConfMemberList &CallInfo::getConferenceMemberList() const
        {
                return m_confMemberList;
        }
index b55b1225fc8232013ffdbc1fc331bfcf83b47f4f..72b0c389e428fd06b5321b31c08baa95cf9cc2b2 100644 (file)
@@ -37,9 +37,8 @@ namespace callui {
                virtual IContactInfoSCRef getContactInfo() const override final;
                virtual long getStartTime() const override final;
                virtual bool isEmergency() const override final;
-               virtual bool isDialing() const override final;
                virtual int getConferenceMemberCount() const override final;
-               virtual const ConfMemberCallList &getConferenceMemberList() const override final;
+               virtual const ConfMemberList &getConferenceMemberList() const override final;
 
        private:
                friend class ucl::RefCountObj<CallInfo>;
@@ -54,9 +53,8 @@ namespace callui {
                ContactInfoSRef m_contactInfo;
                long m_startTime;
                bool m_isEmergency;
-               bool m_isDialing;
                int m_confMemberCount;
-               ConfMemberCallList m_confMemberList;
+               ConfMemberList m_confMemberList;
        };
 
 }
index 810cf8a9250b5ee311f4e800d0f19d9e6e1458c0..5c4f823aa5dbe66b30c6ebfeb33666138f40bec2 100644 (file)
@@ -58,7 +58,7 @@ namespace callui {
 
                FAIL_RETURN(initCalls(), "initCalls() failed!");
 
-               FAIL_RETURN(convertCallManagerResult(
+               FAIL_RETURN(convertCMResult(
                                cm_set_call_event_cb(*m_callClient, CALLBACK_B(CallManager::callEventCb), this)),
                                "cm_set_call_event_cb() failed!");
 
@@ -71,7 +71,7 @@ namespace callui {
                cm_call_data_h active = nullptr;
                cm_call_data_h held = nullptr;
 
-               FAIL_RETURN(convertCallManagerResult(
+               FAIL_RETURN(convertCMResult(
                                cm_get_all_calldata(*m_callClient, &incom, &active, &held)),
                                "cm_get_all_calldata() failed!");
 
@@ -180,11 +180,11 @@ namespace callui {
 
        Result CallManager::endCall(unsigned int callId, CallReleaseType type)
        {
-               return convertCallManagerResult(
-                               cm_end_call(*m_callClient, callId, convertCallAppReleaseType(type)));
+               return convertCMResult(
+                               cm_end_call(*m_callClient, callId, convertCUICallReleaseType(type)));
        }
 
-       Result CallManager::splitCalls(CallInfoSRef callInfo, const IConferenceCallInfoSRef &confCallInfo)
+       Result CallManager::splitCalls(CallInfoSRef callInfo, const IConferenceCallInfoSCRef &confCallInfo)
        {
                if (callInfo->getConferenceMemberCount() <= 1) {
                        LOG_RETURN(RES_FAIL, "Not conference call");
@@ -214,7 +214,7 @@ namespace callui {
        Result CallManager::processEndCallEvent(cm_call_event_data_h callEventData, SimSlot simSlot)
        {
                unsigned int callId = 0;
-               FAIL_RETURN(convertCallManagerResult(
+               FAIL_RETURN(convertCMResult(
                                cm_call_event_data_get_call_id(callEventData, &callId)),
                                "cm_call_event_data_get_call_id() failed!");
 
@@ -246,19 +246,19 @@ namespace callui {
                cm_call_data_h cmActive = nullptr;
                cm_call_data_h cmHeld = nullptr;
 
-               FAIL_RETURN(convertCallManagerResult(
+               FAIL_RETURN(convertCMResult(
                                cm_call_event_data_get_call_id(callEventData, &callId)),
                                "cm_call_event_data_get_call_id() failed!");
 
-               FAIL_RETURN(convertCallManagerResult(
+               FAIL_RETURN(convertCMResult(
                                cm_call_event_data_get_incom_call(callEventData, &cmIncom)),
                                "cm_call_event_data_get_incom_call() failed!");
 
-               FAIL_RETURN(convertCallManagerResult(
+               FAIL_RETURN(convertCMResult(
                                cm_call_event_data_get_active_call(callEventData, &cmActive)),
                                "cm_call_event_data_get_active_call() failed!");
 
-               FAIL_RETURN(convertCallManagerResult(
+               FAIL_RETURN(convertCMResult(
                                cm_call_event_data_get_held_call(callEventData, &cmHeld)),
                                "cm_call_event_data_get_held_call() failed!");
 
@@ -281,16 +281,16 @@ namespace callui {
                }
 
                CallEventType type;
-               FAIL_RETURN_VOID(convertCallManagerEventType(callEvent, &type),
+               FAIL_RETURN_VOID(convertCMEventType(callEvent, &type),
                                "convertCallManagerEventType() failed!");
 
                DLOG("Call event changed on [%d]", type);
 
                cm_multi_sim_slot_type_e cmSimSlot;
-               FAIL_RETURN_VOID(convertCallManagerResult(
+               FAIL_RETURN_VOID(convertCMResult(
                                cm_call_event_data_get_sim_slot(callEventData, &cmSimSlot)),
                                "cm_call_event_data_get_sim_slot() failed!");
-               SimSlot simSlot = convertCallManagerSimSlot(cmSimSlot);
+               SimSlot simSlot = convertCMSimSlot(cmSimSlot);
 
                m_endCall.reset();
 
index 56c2199c4005d02ff64915512e147f78152e13bc..4e2770bbf00a33f607b2a2ec699ffc2726bc9011 100644 (file)
@@ -35,7 +35,7 @@ namespace callui {
                CallClientSRef getCallClient();
                ucl::Result endCall(unsigned int callId, CallReleaseType type);
                ucl::Result splitCalls(CallInfoSRef callInfo,
-                               const IConferenceCallInfoSRef &confCallInfo);
+                               const IConferenceCallInfoSCRef &confCallInfo);
                RejectMsgProviderSRef getRejectMsgProvider();
 
                // ICallManager
index f4119e376bfb4f1d9b6b0f34449d7ceb52c745fb..2f026e241ccb665fabf7c016d9cecdc0abe8a6fa 100644 (file)
@@ -48,19 +48,19 @@ namespace callui {
 
        Result ConferenceCallInfo::prepare(cm_conf_call_data_t *confCallData)
        {
-               Result res = convertCallManagerResult(cm_conf_call_data_get_call_id(confCallData, &m_callId));
-               FAIL_RETURN_VALUE(res, res, "cm_conf_call_data_get_call_id() failed!");
+               Result res = convertCMResult(cm_conf_call_data_get_call_id(confCallData, &m_callId));
+               FAIL_RETURN(res, "cm_conf_call_data_get_call_id() failed!");
 
                char *number = nullptr;
-               res = convertCallManagerResult(cm_conf_call_data_get_call_number(confCallData, &number));
-               FAIL_RETURN_VALUE(res, res, "cm_conf_call_data_get_call_number() failed!");
+               res = convertCMResult(cm_conf_call_data_get_call_number(confCallData, &number));
+               FAIL_RETURN(res, "cm_conf_call_data_get_call_number() failed!");
                m_phoneNum = nz(number);
                // XXX: According to documentation it must be free, but it leads to crash
 //             free(number);
 
                int personId = -1;
-               res = convertCallManagerResult(cm_conf_call_data_get_person_id(confCallData, &personId));
-               FAIL_RETURN_VALUE(res, res, "cm_conf_call_data_get_person_id() failed!");
+               res = convertCMResult(cm_conf_call_data_get_person_id(confCallData, &personId));
+               FAIL_RETURN(res, "cm_conf_call_data_get_person_id() failed!");
 
                if (personId >= 0) {
                        m_contactInfo = ContactInfo::newInstance(personId);
@@ -81,7 +81,7 @@ namespace callui {
                return m_phoneNum;
        }
 
-       IContactInfoSRef ConferenceCallInfo::getContactInfo() const
+       IContactInfoSCRef ConferenceCallInfo::getContactInfo() const
        {
                return m_contactInfo;
        }
index 8335d75a6fa76ff63934fc41f82e59bbc7dfbd8a..fe9ab9a4cbef9d265494e32f705c2ac8e37ab6d1 100644 (file)
@@ -34,7 +34,7 @@ namespace callui {
 
                virtual unsigned int getCallId() const override final;
                virtual const std::string &getPhoneNumber() const override final;
-               virtual IContactInfoSRef getContactInfo() const override final;
+               virtual IContactInfoSCRef getContactInfo() const override final;
 
        private:
                friend class ucl::RefCountObj<ConferenceCallInfo>;
index 098f5ba3421b6479e92acada5255c16d6b6b1c6a..ff7766c97eb63974f4a0e2f8b6a9f9d3de854263 100644 (file)
@@ -64,17 +64,17 @@ namespace callui {
 
        Result HeldCall::unhold()
        {
-               return convertCallManagerResult(cm_unhold_call(*m_cm.getCallClient()));
+               return convertCMResult(cm_unhold_call(*m_cm.getCallClient()));
        }
 
        Result HeldCall::joinWithActive()
        {
-               return convertCallManagerResult(cm_join_call(*m_cm.getCallClient()));
+               return convertCMResult(cm_join_call(*m_cm.getCallClient()));
        }
 
        Result HeldCall::swapWithActive()
        {
-               return convertCallManagerResult(cm_swap_call(*m_cm.getCallClient()));
+               return convertCMResult(cm_swap_call(*m_cm.getCallClient()));
        }
 
        Result HeldCall::end()
@@ -82,7 +82,7 @@ namespace callui {
                return m_cm.endCall(0, CallReleaseType::ALL_HOLD);
        }
 
-       Result HeldCall::split(const IConferenceCallInfoSRef &confCallInfo)
+       Result HeldCall::split(const IConferenceCallInfoSCRef &confCallInfo)
        {
                return m_cm.splitCalls(m_callInfo, confCallInfo);
        }
index c584c552a909e8509da225e824b94df3f7d9739e..80f7d011ee0a8b65647672b4984e7c9a064dbbfd 100644 (file)
@@ -40,7 +40,7 @@ namespace callui {
                virtual ucl::Result joinWithActive() override final;
                virtual ucl::Result swapWithActive() override final;
                virtual ucl::Result end() override final;
-               virtual ucl::Result split(const IConferenceCallInfoSRef &confCallInfo) override final;
+               virtual ucl::Result split(const IConferenceCallInfoSCRef &confCallInfo) override final;
 
        private:
                friend class ucl::RefCountObj<HeldCall>;
index 0c05ccdfe67c2365b42cf7b60030b6853963234a..d45c10547d8bd2e57f5b65c44c021141de335fc2 100644 (file)
@@ -73,12 +73,12 @@ namespace callui {
 
        Result IncomingCall::answer(CallAnswerType type)
        {
-               return convertCallManagerResult(cm_answer_call(*m_cm.getCallClient(), convertCallAppAnswerType(type)));
+               return convertCMResult(cm_answer_call(*m_cm.getCallClient(), convertCUICallAnswerType(type)));
        }
 
        Result IncomingCall::reject()
        {
-               return convertCallManagerResult(cm_reject_call(*m_cm.getCallClient()));
+               return convertCMResult(cm_reject_call(*m_cm.getCallClient()));
        }
 
        Result IncomingCall::rejectWithMessage(IRejectMsgSRef message)
@@ -94,7 +94,7 @@ namespace callui {
 
        Result IncomingCall::stopAlert()
        {
-               return convertCallManagerResult(cm_stop_alert(*m_cm.getCallClient()));
+               return convertCMResult(cm_stop_alert(*m_cm.getCallClient()));
        }
 
 }
index 2a7b0fc96126348a5294d6172dd4c20f59301403..e0cad276de597d34c65f2216be1c46edc274c830 100644 (file)
@@ -26,13 +26,15 @@ namespace callui {
        using namespace ucl;
 
        MsgClient::MsgClient():
-                       m_handle(nullptr)
+                       m_handle()
        {
        }
 
        MsgClient::~MsgClient()
        {
-               msg_close_msg_handle(&m_handle);
+               if (m_handle) {
+                       msg_close_msg_handle(&m_handle);
+               }
        }
 
        MsgClientSRef MsgClient::newInstance()
@@ -44,10 +46,12 @@ namespace callui {
 
        Result MsgClient::prepare()
        {
-               msg_error_t err = msg_open_msg_handle(&m_handle);
+               msg_handle_t handle;
+               msg_error_t err = msg_open_msg_handle(&handle);
                if (err != MSG_SUCCESS) {
                        LOG_RETURN(RES_FAIL, "msg_open_msg_handle() failed! res[%d]", err);
                }
+               m_handle = handle;
 
                err = msg_reg_sent_status_callback(m_handle, [](msg_handle_t msgHandle, msg_struct_t status, void *data)
                                {
index edac34434d6b32f8ff616384950729a61a6904bb..bcd5d95fe5894b67f4aa5e0a644bea618f367841 100644 (file)
@@ -49,7 +49,7 @@ namespace callui {
                        return;
                }
 
-               m_audioStateEvent.invoke(convertCallManagerAudioState(state));
+               m_audioStateEvent.invoke(convertCMAudioState(state));
        }
 
        void SoundManager::muteStateChangedCb(cm_mute_status_e status)
@@ -59,11 +59,11 @@ namespace callui {
 
        Result SoundManager::prepare()
        {
-               Result res = convertCallManagerResult(cm_set_audio_state_changed_cb(*m_client, CALLBACK_B(SoundManager::audioStateChangedCb), this));
-               FAIL_RETURN_VALUE(res, res, "cm_set_audio_state_changed_cb() failed!");
+               Result res = convertCMResult(cm_set_audio_state_changed_cb(*m_client, CALLBACK_B(SoundManager::audioStateChangedCb), this));
+               FAIL_RETURN(res, "cm_set_audio_state_changed_cb() failed!");
 
-               res = convertCallManagerResult(cm_set_mute_status_cb(*m_client, CALLBACK_B(SoundManager::muteStateChangedCb), this));
-               FAIL_RETURN_VALUE(res, res, "__callui_mute_state_changed_cb() failed!");
+               res = convertCMResult(cm_set_mute_status_cb(*m_client, CALLBACK_B(SoundManager::muteStateChangedCb), this));
+               FAIL_RETURN(res, "__callui_mute_state_changed_cb() failed!");
 
                return res;
        }
@@ -71,39 +71,39 @@ namespace callui {
        Result SoundManager::setSpeakerState(bool isEnable)
        {
                if (isEnable) {
-                       return convertCallManagerResult(cm_speaker_on(*m_client));
+                       return convertCMResult(cm_speaker_on(*m_client));
                } else {
-                       return convertCallManagerResult(cm_speaker_off(*m_client));
+                       return convertCMResult(cm_speaker_off(*m_client));
                }
        }
 
        Result SoundManager::setBluetoothState(bool isEnable)
        {
                if (isEnable) {
-                       return convertCallManagerResult(cm_bluetooth_on(*m_client));
+                       return convertCMResult(cm_bluetooth_on(*m_client));
                } else {
-                       return convertCallManagerResult(cm_bluetooth_off(*m_client));
+                       return convertCMResult(cm_bluetooth_off(*m_client));
                }
        }
 
        AudioStateType SoundManager::getAudioState() const
        {
                cm_audio_state_type_e state = CM_AUDIO_STATE_NONE_E;
-               Result res = convertCallManagerResult(cm_get_audio_state(*m_client, &state));
+               Result res = convertCMResult(cm_get_audio_state(*m_client, &state));
                FAIL_RETURN_VALUE(res, AudioStateType::NONE, "cm_get_audio_state() failed!");
 
-               return convertCallManagerAudioState(state);
+               return convertCMAudioState(state);
        }
 
        Result SoundManager::setMuteState(bool isEnable)
        {
-               return convertCallManagerResult(cm_set_mute_state(*m_client, isEnable));
+               return convertCMResult(cm_set_mute_state(*m_client, isEnable));
        }
 
        bool SoundManager::getMuteState() const
        {
                cm_mute_status_e status = CM_MUTE_STATUS_MAX;
-               Result res = convertCallManagerResult(cm_get_mute_status(*m_client, &status));
+               Result res = convertCMResult(cm_get_mute_status(*m_client, &status));
                FAIL_RETURN_VALUE(res, false, "cm_get_mute_status() failed!");
 
                return (status == CM_MUTE_STATUS_ON);
@@ -111,12 +111,12 @@ namespace callui {
 
        Result SoundManager::startDtmf(const unsigned char dtmfDigit)
        {
-               return convertCallManagerResult(cm_start_dtmf(*m_client, dtmfDigit));
+               return convertCMResult(cm_start_dtmf(*m_client, dtmfDigit));
        }
 
        Result SoundManager::stopDtmf()
        {
-               return convertCallManagerResult(cm_stop_dtmf(*m_client));
+               return convertCMResult(cm_stop_dtmf(*m_client));
        }
 
        void SoundManager::addAudioStateChangeHandler(AudioStateHandler handler)
index 99b3df2403a2abd75291feb754db7c407d917b2e..d1014e23aa15fcdb98706aafdfe9ffb1507dc8ee 100644 (file)
 #include <call-manager-ext.h>
 #include <type_traits>
 
-#include "model/types.h"
+#include "implTypes.h"
 
 namespace callui {
 
-       ucl::Result convertCallManagerResult(int cmRes);
+       ucl::Result convertCMResult(int cmRes);
 
-       AudioStateType convertCallManagerAudioState(cm_audio_state_type_e state);
+       AudioStateType convertCMAudioState(cm_audio_state_type_e state);
 
-       DialStatus convertCallManagerDialStatus(cm_dial_status_e status);
+       DialStatus convertCMDialStatus(cm_dial_status_e status);
 
-       cm_multi_sim_slot_type_e convertCallAppSimSlot(SimSlot slot);
+       cm_multi_sim_slot_type_e convertCUISimSlot(SimSlot slot);
 
-       SimSlot convertCallManagerSimSlot(cm_multi_sim_slot_type_e slot);
+       SimSlot convertCMSimSlot(cm_multi_sim_slot_type_e slot);
 
-       cm_call_release_type_e convertCallAppReleaseType(CallReleaseType type);
+       cm_call_release_type_e convertCUICallReleaseType(CallReleaseType type);
 
-       ucl::Result convertCallManagerEventType(cm_call_event_e cmEvent, CallEventType *appEvent);
+       ucl::Result convertCMEventType(cm_call_event_e cmEvent, CallEventType *appEvent);
 
-       cm_call_answer_type_e convertCallAppAnswerType(CallAnswerType type);
+       cm_call_answer_type_e convertCUICallAnswerType(CallAnswerType type);
 
        template<typename TYPE>
        constexpr auto convertEnumValueToInt(TYPE e) -> typename std::underlying_type<TYPE>::type
index a2f0524cf0da5e823e5559b3cf95bebf8d0658cb..d645901b7d5ab4efc952f44816618f920883666e 100644 (file)
@@ -18,7 +18,7 @@
 
 namespace callui {
 
-       inline ucl::Result convertCallManagerResult(int cmRes)
+       inline ucl::Result convertCMResult(int cmRes)
        {
                switch (cmRes) {
                case CM_ERROR_NONE:               return ucl::RES_OK;
@@ -34,7 +34,7 @@ namespace callui {
                }
        }
 
-       inline AudioStateType convertCallManagerAudioState(cm_audio_state_type_e state)
+       inline AudioStateType convertCMAudioState(cm_audio_state_type_e state)
        {
                switch (state) {
                case CM_AUDIO_STATE_NONE_E:     return AudioStateType::NONE;
@@ -47,7 +47,7 @@ namespace callui {
                }
        }
 
-       inline DialStatus convertCallManagerDialStatus(cm_dial_status_e status)
+       inline DialStatus convertCMDialStatus(cm_dial_status_e status)
        {
                switch (status) {
                case CM_DIAL_SUCCESS:           return DialStatus::SUCCESS;
@@ -61,7 +61,7 @@ namespace callui {
                }
        }
 
-       inline cm_multi_sim_slot_type_e convertCallAppSimSlot(SimSlot slot)
+       inline cm_multi_sim_slot_type_e convertCUISimSlot(SimSlot slot)
        {
                switch (slot) {
                case SimSlot::FIRST:      return CM_MULTI_SIM_SLOT_1;
@@ -71,7 +71,7 @@ namespace callui {
                }
        }
 
-       inline SimSlot convertCallManagerSimSlot(cm_multi_sim_slot_type_e slot)
+       inline SimSlot convertCMSimSlot(cm_multi_sim_slot_type_e slot)
        {
                switch (slot) {
                case CM_MULTI_SIM_SLOT_1: return SimSlot::FIRST;
@@ -81,7 +81,7 @@ namespace callui {
                }
        }
 
-       inline cm_call_release_type_e convertCallAppReleaseType(CallReleaseType type)
+       inline cm_call_release_type_e convertCUICallReleaseType(CallReleaseType type)
        {
                switch (type) {
                case CallReleaseType::BY_CALL_HANDLE: return CM_CALL_RELEASE_TYPE_BY_CALL_HANDLE;
@@ -93,7 +93,7 @@ namespace callui {
                }
        }
 
-       inline ucl::Result convertCallManagerEventType(cm_call_event_e cmEvent, CallEventType *appEvent)
+       inline ucl::Result convertCMEventType(cm_call_event_e cmEvent, CallEventType *appEvent)
        {
                switch (cmEvent) {
                case CM_CALL_EVENT_IDLE:
@@ -138,7 +138,7 @@ namespace callui {
                return ucl::RES_OK;
        }
 
-       inline cm_call_answer_type_e convertCallAppAnswerType(CallAnswerType type)
+       inline cm_call_answer_type_e convertCUICallAnswerType(CallAnswerType type)
        {
                switch (type) {
                case CallAnswerType::NORMAL:                    return CALL_ANSWER_TYPE_NORMAL;
index 27edbe7b0e53a230e4ab7293e94e0f87b73b0c0e..4db1188e3781b763008b33b9fbe8408cf9f82111 100644 (file)
 
 namespace callui {
 
+       enum class CallReleaseType {
+               BY_CALL_HANDLE,
+               ALL,
+               ALL_HOLD,
+               ALL_ACTIVE
+       };
+
        UCL_DECLARE_REF_ALIASES(CallClient);
 
        UCL_DECLARE_REF_ALIASES(SoundManager);