telephonyserverplugins/common_tsy/commontsy/src/mmtsy/cmmconferencecalltsy.cpp
branchRCL_3
changeset 65 630d2f34d719
parent 16 fe8b59ab9fa0
child 66 07a122eea281
child 69 b982c3e940f3
equal deleted inserted replaced
61:17af172ffa5f 65:630d2f34d719
     1 // Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
    14 //
    14 //
    15 
    15 
    16 
    16 
    17 
    17 
    18 //INCLUDE FILES
    18 //INCLUDE FILES
       
    19 
       
    20 #include "OstTraceDefinitions.h"
       
    21 #ifdef OST_TRACE_COMPILER_IN_USE
       
    22 #include "cmmconferencecalltsyTraces.h"
       
    23 #endif
       
    24 
    19 #include "cmmconferencecalltsy.h"
    25 #include "cmmconferencecalltsy.h"
    20 #include "cmmphonetsy.h"
    26 #include "cmmphonetsy.h"
    21 #include "cmmtsyreqhandlestore.h"
    27 #include "cmmtsyreqhandlestore.h"
    22 #include "MmTsy_numberOfSlots.h"
    28 #include "MmTsy_numberOfSlots.h"
    23 #include "CMmCommonStaticUtility.h"
    29 #include "CMmCommonStaticUtility.h"
    87     }
    93     }
    88 
    94 
    89 CMmConferenceCallTsy::~CMmConferenceCallTsy()
    95 CMmConferenceCallTsy::~CMmConferenceCallTsy()
    90     {
    96     {
    91 
    97 
    92     TFLOGSTRING("TSY: CMmConferenceCallTsy::~CMmConferenceCallTsy");
    98     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_DTOR_1, "TSY: CMmConferenceCallTsy::~CMmConferenceCallTsy");
    93 
    99 
    94     if ( iMmPhone )
   100     if ( iMmPhone )
    95         {
   101         {
    96         // deregister tsy object from message manager
   102         // deregister tsy object from message manager
    97         iMmPhone->MessageManager()->DeregisterTsyObject(this);        
   103         iMmPhone->MessageManager()->DeregisterTsyObject(this);        
   228 TInt CMmConferenceCallTsy::DoExtFuncL(
   234 TInt CMmConferenceCallTsy::DoExtFuncL(
   229     const TTsyReqHandle aTsyReqHandle,
   235     const TTsyReqHandle aTsyReqHandle,
   230     const TInt aIpc,
   236     const TInt aIpc,
   231     const TDataPackage& aPackage )
   237     const TDataPackage& aPackage )
   232     {
   238     {
   233 	TFLOGSTRING3("TSY: CMmConferenceCallTsy::DoExtFuncL.\n  \t\t\t IPC:%d\n  \t\t\t Handle:%d",
   239 	OstTraceDefExt2(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_DOEXTFUNCL_1, "TSY: CMmConferenceCallTsy::DoExtFuncL.\n  \t\t\t IPC:%d\n  \t\t\t Handle:%d",aIpc, aTsyReqHandle);
   234         aIpc, aTsyReqHandle);
       
   235 
   240 
   236     TInt ret( KErrNotSupported );
   241     TInt ret( KErrNotSupported );
   237 
   242 
   238     TAny* dataPtr = aPackage.Ptr1();
   243     TAny* dataPtr = aPackage.Ptr1();
   239 
   244 
   685 // ---------------------------------------------------------------------------
   690 // ---------------------------------------------------------------------------
   686 //
   691 //
   687 TInt CMmConferenceCallTsy::CreateConferenceL(
   692 TInt CMmConferenceCallTsy::CreateConferenceL(
   688     const TTsyReqHandle aTsyReqHandle )
   693     const TTsyReqHandle aTsyReqHandle )
   689     {
   694     {
   690 TFLOGSTRING("TSY: CMmConferenceCallTsy::CreateConferenceL");
   695 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_CREATECONFERENCEL_1, "TSY: CMmConferenceCallTsy::CreateConferenceL");
   691     //Store call object with status connected
   696     //Store call object with status connected
   692 	iConnectedCall = 
   697 	iConnectedCall = 
   693 		iMmPhone->CallList()->GetMmCallByStatus( RMobileCall::EStatusConnected );
   698 		iMmPhone->CallList()->GetMmCallByStatus( RMobileCall::EStatusConnected );
   694     
   699     
   695     //Store call object with status hold        
   700     //Store call object with status hold        
   721 // ---------------------------------------------------------------------------
   726 // ---------------------------------------------------------------------------
   722 //
   727 //
   723 void CMmConferenceCallTsy::CompleteCreateConference(
   728 void CMmConferenceCallTsy::CompleteCreateConference(
   724     TInt aResult )
   729     TInt aResult )
   725     {
   730     {
   726 TFLOGSTRING("TSY: CMmConferenceCallTsy::CompleteCreateConference");
   731 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETECREATECONFERENCE_1, "TSY: CMmConferenceCallTsy::CompleteCreateConference");
   727     //reset req handle. Returns the deleted req handle
   732     //reset req handle. Returns the deleted req handle
   728     TTsyReqHandle reqHandle = iTsyReqHandleStore->ResetTsyReqHandle(
   733     TTsyReqHandle reqHandle = iTsyReqHandleStore->ResetTsyReqHandle(
   729         EMultimodeConferenceCallCreateConference );
   734         EMultimodeConferenceCallCreateConference );
   730 
   735 
   731     //if req handle was available
   736     //if req handle was available
   778 //
   783 //
   779 TInt CMmConferenceCallTsy::AddCallL(
   784 TInt CMmConferenceCallTsy::AddCallL(
   780     const TTsyReqHandle aTsyReqHandle,
   785     const TTsyReqHandle aTsyReqHandle,
   781     const TName* aCallName )
   786     const TName* aCallName )
   782     {
   787     {
   783 TFLOGSTRING("TSY: CMmConferenceCallTsy::AddCallL");    
   788 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_ADDCALLL_1, "TSY: CMmConferenceCallTsy::AddCallL");
   784     //set return value to KErrNotFound
   789     //set return value to KErrNotFound
   785     TInt ret( KErrNotFound );
   790     TInt ret( KErrNotFound );
   786     
   791     
   787     //copy the name of the call to be added, will be used when request is
   792     //copy the name of the call to be added, will be used when request is
   788     //later completed
   793     //later completed
   814 // ---------------------------------------------------------------------------
   819 // ---------------------------------------------------------------------------
   815 //
   820 //
   816 void CMmConferenceCallTsy::CompleteAddCall(
   821 void CMmConferenceCallTsy::CompleteAddCall(
   817     TInt aResult )
   822     TInt aResult )
   818     {
   823     {
   819 TFLOGSTRING2("TSY: CMmConferenceCallTsy::CompleteAddCall, Result: %d", aResult );
   824 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETEADDCALL_1, "TSY: CMmConferenceCallTsy::CompleteAddCall, Result: %d", aResult );
   820 
   825 
   821     //reset req handle. Returns the deleted req handle
   826     //reset req handle. Returns the deleted req handle
   822     TTsyReqHandle reqHandle = iTsyReqHandleStore->ResetTsyReqHandle(
   827     TTsyReqHandle reqHandle = iTsyReqHandleStore->ResetTsyReqHandle(
   823         EMultimodeConferenceCallAddCall );
   828         EMultimodeConferenceCallAddCall );
   824 
   829 
   825     //successful case, call added to the conference call.
   830     //successful case, call added to the conference call.
   826     if ( EMultimodeConferenceCallReqHandleUnknown != reqHandle )
   831     if ( EMultimodeConferenceCallReqHandleUnknown != reqHandle )
   827         {
   832         {
   828         if ( (KErrNone == aResult) && (iAddCallName.Length() > 0) )
   833         if ( (KErrNone == aResult) && (iAddCallName.Length() > 0) )
   829             {
   834             {
   830 TFLOGSTRING("TSY: AddCall succeeded. AddCall request completed");
   835 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETEADDCALL_2, "TSY: AddCall succeeded. AddCall request completed");
   831             //notify call added using the call name received with AddCall
   836             //notify call added using the call name received with AddCall
   832             //request
   837             //request
   833             CompleteNotifyConferenceEvent( iAddCallName,
   838             CompleteNotifyConferenceEvent( iAddCallName,
   834                 RMobileConferenceCall::EConferenceCallAdded );
   839                 RMobileConferenceCall::EConferenceCallAdded );
   835 
   840 
   840             }
   845             }
   841 		else
   846 		else
   842 			{
   847 			{
   843 			//something special is needed here to handle a case where 
   848 			//something special is needed here to handle a case where 
   844 			//CompleteAddCall fails
   849 			//CompleteAddCall fails
   845 			TFLOGSTRING("TSY: AddCall failed");
   850 			OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETEADDCALL_3, "TSY: AddCall failed");
   846 			TFLOGSTRING2("TSY: # of CC participants: %d", iNumOfCallsInConferenceCall );
   851 			OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETEADDCALL_4, "TSY: # of CC participants: %d", iNumOfCallsInConferenceCall );
   847 			if ( 2 == iNumOfCallsInConferenceCall )
   852 			if ( 2 == iNumOfCallsInConferenceCall )
   848 				{
   853 				{
   849 				TFLOGSTRING("TSY: FIX FOR A ADDCALL & MT RELEASE CASE");
   854 				OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETEADDCALL_5, "TSY: FIX FOR A ADDCALL & MT RELEASE CASE");
   850 				CMmCallTsy* mmCall = NULL;
   855 				CMmCallTsy* mmCall = NULL;
   851 				CMmCallList* callList = iMmPhone->CallList();
   856 				CMmCallList* callList = iMmPhone->CallList();
   852 				CMmCallGsmWcdmaExt* mmCallGsmWcdmaExt = NULL;
   857 				CMmCallGsmWcdmaExt* mmCallGsmWcdmaExt = NULL;
   853 				RMobileCall::TMobileCallStatus status( RMobileCall::EStatusIdle );
   858 				RMobileCall::TMobileCallStatus status( RMobileCall::EStatusIdle );
   854 
   859 
   856 				for ( TInt i = 0; i < callList->GetNumberOfObjects(); i++ )
   861 				for ( TInt i = 0; i < callList->GetNumberOfObjects(); i++ )
   857 					{
   862 					{
   858 					mmCall = callList->GetMmCallByIndex(i);
   863 					mmCall = callList->GetMmCallByIndex(i);
   859 					status = mmCall->MobileCallStatus();
   864 					status = mmCall->MobileCallStatus();
   860 
   865 
   861 					TFLOGSTRING2("TSY: Handling call, Call ID: %d", mmCall->CallId() );
   866 					OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETEADDCALL_6, "TSY: Handling call, Call ID: %d", mmCall->CallId() );
   862 
   867 
   863 					if ( status == RMobileCall::EStatusHold ||
   868 					if ( status == RMobileCall::EStatusHold ||
   864 						status == RMobileCall::EStatusConnected )
   869 						status == RMobileCall::EStatusConnected )
   865 						{
   870 						{
   866 						TFLOGSTRING("TSY: Status was Held or Connected, reconstructing capabilities");
   871 						OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETEADDCALL_7, "TSY: Status was Held or Connected, reconstructing capabilities");
   867 
   872 
   868 						// Fetch the active call extension
   873 						// Fetch the active call extension
   869 						mmCallGsmWcdmaExt = static_cast<CMmCallGsmWcdmaExt*>(
   874 						mmCallGsmWcdmaExt = static_cast<CMmCallGsmWcdmaExt*>(
   870 							mmCall->ActiveCallExtension() )
   875 							mmCall->ActiveCallExtension() )
   871 														;
   876 														;
   885 				CheckConferenceCapability();
   890 				CheckConferenceCapability();
   886 				//rebuild capabilities of individual calls
   891 				//rebuild capabilities of individual calls
   887 				}
   892 				}
   888 			else
   893 			else
   889 				{
   894 				{
   890 				TFLOGSTRING("TSY: normal AddCall failure");
   895 				OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETEADDCALL_8, "TSY: normal AddCall failure");
   891 				}
   896 				}
   892 			}
   897 			}
   893         ReqCompleted( reqHandle, aResult );
   898         ReqCompleted( reqHandle, aResult );
   894         }
   899         }
   895 
   900 
   903 //
   908 //
   904 
   909 
   905 void CMmConferenceCallTsy::RemoveNonParticipatingCall()
   910 void CMmConferenceCallTsy::RemoveNonParticipatingCall()
   906 	{
   911 	{
   907 
   912 
   908 	TFLOGSTRING("TSY: CMmConferenceCallTsy::RemoveNonParticipatingCall");
   913 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_REMOVENONPARTICIPATINGCALL_1, "TSY: CMmConferenceCallTsy::RemoveNonParticipatingCall");
   909 
   914 
   910 	RMobileCall::TMobileCallStatus statusOfCallsInConference(
   915 	RMobileCall::TMobileCallStatus statusOfCallsInConference(
   911 		RMobileCall::EStatusConnected);
   916 		RMobileCall::EStatusConnected);
   912 	CMmCallTsy* mmCall = NULL;
   917 	CMmCallTsy* mmCall = NULL;
   913 	CMmCallList* callList = iMmPhone->CallList();
   918 	CMmCallList* callList = iMmPhone->CallList();
   914 	RMobileCall::TMobileCallStatus status (RMobileCall::EStatusIdle);
   919 	RMobileCall::TMobileCallStatus status (RMobileCall::EStatusIdle);
   915 	TInt numberOfCallInConference(0);
   920 	TInt numberOfCallInConference(0);
   916 	TBool callReleased = EFalse;
   921 	TBool callReleased = EFalse;
   917 
   922 
   918 	TFLOGSTRING2("TSY: Conference status: %d", iStatus);
   923 	OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_REMOVENONPARTICIPATINGCALL_2, "TSY: Conference status: %d", iStatus);
   919 
   924 
   920 	if ( iStatus == RMobileConferenceCall::EConferenceHold )
   925 	if ( iStatus == RMobileConferenceCall::EConferenceHold )
   921 		{
   926 		{
   922 		statusOfCallsInConference = RMobileCall::EStatusHold;
   927 		statusOfCallsInConference = RMobileCall::EStatusHold;
   923 		}
   928 		}
   933 			{
   938 			{
   934 			//send removed event
   939 			//send removed event
   935 			CompleteNotifyConferenceEvent( 
   940 			CompleteNotifyConferenceEvent( 
   936 				mmCall->CallName(), 
   941 				mmCall->CallName(), 
   937 				RMobileConferenceCall::EConferenceCallRemoved );
   942 				RMobileConferenceCall::EConferenceCallRemoved );
   938 TFLOGSTRING("TSY: Call removed from conference." );
   943 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_REMOVENONPARTICIPATINGCALL_3, "TSY: Call removed from conference." );
   939 			}
   944 			}
   940 		else if ( status == statusOfCallsInConference )
   945 		else if ( status == statusOfCallsInConference )
   941 			{
   946 			{
   942 			numberOfCallInConference++;
   947 			numberOfCallInConference++;
   943 			
   948 			
   944 			}
   949 			}
   945 		if ( mmCall->IsRemoteReleasedCall() )
   950 		if ( mmCall->IsRemoteReleasedCall() )
   946 			{
   951 			{
   947 TFLOGSTRING("TSY: One call is remote released");
   952 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_REMOVENONPARTICIPATINGCALL_4, "TSY: One call is remote released");
   948 			callReleased = ETrue;
   953 			callReleased = ETrue;
   949 			}
   954 			}
   950 		}
   955 		}
   951 		if ( numberOfCallInConference == 2 &&
   956 		if ( numberOfCallInConference == 2 &&
   952 			iNumOfCallsInConferenceCall == 3 && callReleased )
   957 			iNumOfCallsInConferenceCall == 3 && callReleased )
   953 			{
   958 			{
   954 			iNumOfCallsInConferenceCall--;
   959 			iNumOfCallsInConferenceCall--;
   955 			TFLOGSTRING("TSY: number of calls in conference decremented");
   960 			OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_REMOVENONPARTICIPATINGCALL_5, "TSY: number of calls in conference decremented");
   956 		}
   961 		}
   957 
   962 
   958 	}
   963 	}
   959 
   964 
   960 
   965 
   966 // ---------------------------------------------------------------------------
   971 // ---------------------------------------------------------------------------
   967 //
   972 //
   968 TInt CMmConferenceCallTsy::SwapL(
   973 TInt CMmConferenceCallTsy::SwapL(
   969     const TTsyReqHandle aTsyReqHandle )
   974     const TTsyReqHandle aTsyReqHandle )
   970     {
   975     {
   971 TFLOGSTRING("TSY: CMmConferenceCallTsy::SwapL");      
   976 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_SWAPL_1, "TSY: CMmConferenceCallTsy::SwapL");
   972     //direct request to extension
   977     //direct request to extension
   973     TInt ret = iMmConferenceCallExtInterface->SwapL(
   978     TInt ret = iMmConferenceCallExtInterface->SwapL(
   974         iStatus, iMmPhone->CallList() );
   979         iStatus, iMmPhone->CallList() );
   975 
   980 
   976     if ( ret != KErrNone )
   981     if ( ret != KErrNone )
   995 // ---------------------------------------------------------------------------
  1000 // ---------------------------------------------------------------------------
   996 //
  1001 //
   997 void CMmConferenceCallTsy::CompleteSwap(
  1002 void CMmConferenceCallTsy::CompleteSwap(
   998     TInt aResult )
  1003     TInt aResult )
   999     {
  1004     {
  1000 TFLOGSTRING("TSY: CMmConferenceCallTsy::CompleteSwap");      
  1005 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETESWAP_1, "TSY: CMmConferenceCallTsy::CompleteSwap");
  1001     //reset req handle. Returns the deleted req handle
  1006     //reset req handle. Returns the deleted req handle
  1002     TTsyReqHandle reqHandle = iTsyReqHandleStore->ResetTsyReqHandle(
  1007     TTsyReqHandle reqHandle = iTsyReqHandleStore->ResetTsyReqHandle(
  1003         EMultimodeConferenceCallSwap );
  1008         EMultimodeConferenceCallSwap );
  1004 
  1009 
  1005     if ( EMultimodeConferenceCallReqHandleUnknown != reqHandle )
  1010     if ( EMultimodeConferenceCallReqHandleUnknown != reqHandle )
  1149 //
  1154 //
  1150 TInt CMmConferenceCallTsy::GetConferenceStatus(
  1155 TInt CMmConferenceCallTsy::GetConferenceStatus(
  1151     const TTsyReqHandle aTsyReqHandle,
  1156     const TTsyReqHandle aTsyReqHandle,
  1152     RMobileConferenceCall::TMobileConferenceStatus* aStatus )
  1157     RMobileConferenceCall::TMobileConferenceStatus* aStatus )
  1153     {
  1158     {
  1154 TFLOGSTRING2("TSY: CMmConferenceCallTsy::GetConferenceStatus. iStatus:%d", iStatus );     
  1159 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_GETCONFERENCESTATUS_1, "TSY: CMmConferenceCallTsy::GetConferenceStatus. iStatus:%d", iStatus );
  1155     *aStatus = iStatus;
  1160     *aStatus = iStatus;
  1156 
  1161 
  1157     ReqCompleted( aTsyReqHandle, KErrNone );
  1162     ReqCompleted( aTsyReqHandle, KErrNone );
  1158     return KErrNone;
  1163     return KErrNone;
  1159 
  1164 
  1221 void CMmConferenceCallTsy::CompleteNotifyConferenceStatusChange()
  1226 void CMmConferenceCallTsy::CompleteNotifyConferenceStatusChange()
  1222     {
  1227     {
  1223     TBool conferenceStatusChanged( EFalse );
  1228     TBool conferenceStatusChanged( EFalse );
  1224 
  1229 
  1225     RMobileConferenceCall::TMobileConferenceStatus oldStatus = iStatus;
  1230     RMobileConferenceCall::TMobileConferenceStatus oldStatus = iStatus;
  1226 TFLOGSTRING2("TSY: CMmConferenceCallTsy::CompleteNotifyConferenceStatusChange. oldStatus:%d", oldStatus );    
  1231 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETENOTIFYCONFERENCESTATUSCHANGE_1, "TSY: CMmConferenceCallTsy::CompleteNotifyConferenceStatusChange. oldStatus:%d", oldStatus );
  1227     iMmConferenceCallExtInterface->GetNewStatus( &iStatus );
  1232     iMmConferenceCallExtInterface->GetNewStatus( &iStatus );
  1228 
  1233 
  1229     switch( iStatus )
  1234     switch( iStatus )
  1230         {
  1235         {
  1231         //new status is EConferenceIdle
  1236         //new status is EConferenceIdle
  1292         EMultimodeConferenceCallStatusChangeNotification );
  1297         EMultimodeConferenceCallStatusChangeNotification );
  1293 
  1298 
  1294     if ( ( EMultimodeConferenceCallReqHandleUnknown != reqHandle ) &&
  1299     if ( ( EMultimodeConferenceCallReqHandleUnknown != reqHandle ) &&
  1295         conferenceStatusChanged )
  1300         conferenceStatusChanged )
  1296         {
  1301         {
  1297 TFLOGSTRING2("TSY: CMmConferenceCallTsy::CompleteNotifyConferenceStatusChange. Cur. iStatus:%d", iStatus );         
  1302 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETENOTIFYCONFERENCESTATUSCHANGE_2, "TSY: CMmConferenceCallTsy::CompleteNotifyConferenceStatusChange. Cur. iStatus:%d", iStatus );
  1298         //reset req handle.
  1303         //reset req handle.
  1299         iTsyReqHandleStore->ResetTsyReqHandle(
  1304         iTsyReqHandleStore->ResetTsyReqHandle(
  1300             EMultimodeConferenceCallStatusChangeNotification );
  1305             EMultimodeConferenceCallStatusChangeNotification );
  1301         *iRetStatus = iStatus;            
  1306         *iRetStatus = iStatus;            
  1302         ReqCompleted( reqHandle, KErrNone );
  1307         ReqCompleted( reqHandle, KErrNone );
  1375 //
  1380 //
  1376 void CMmConferenceCallTsy::CompleteNotifyConferenceEvent(
  1381 void CMmConferenceCallTsy::CompleteNotifyConferenceEvent(
  1377     const TName& aName,
  1382     const TName& aName,
  1378     RMobileConferenceCall::TMobileConferenceEvent aEvent )
  1383     RMobileConferenceCall::TMobileConferenceEvent aEvent )
  1379     {
  1384     {
  1380 TFLOGSTRING2("TSY: CMmConferenceCallTsy::CompleteNotifyConferenceEvent.aEvent:%d", aEvent );
  1385 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_COMPLETENOTIFYCONFERENCEEVENT_1, "TSY: CMmConferenceCallTsy::CompleteNotifyConferenceEvent.aEvent:%d", aEvent );
  1381     //reset req handle. Returns the deleted req handle
  1386     //reset req handle. Returns the deleted req handle
  1382     TTsyReqHandle reqHandle = iTsyReqHandleStore->ResetTsyReqHandle( 
  1387     TTsyReqHandle reqHandle = iTsyReqHandleStore->ResetTsyReqHandle( 
  1383         EMultimodeConferenceCallConferenceEventNotification );
  1388         EMultimodeConferenceCallConferenceEventNotification );
  1384 
  1389 
  1385     //if req handle was set
  1390     //if req handle was set
  1596 // (other items were commented in a header).
  1601 // (other items were commented in a header).
  1597 // ---------------------------------------------------------------------------
  1602 // ---------------------------------------------------------------------------
  1598 //
  1603 //
  1599 void CMmConferenceCallTsy::ResetAttributes()
  1604 void CMmConferenceCallTsy::ResetAttributes()
  1600     {
  1605     {
  1601 TFLOGSTRING("TSY: CMmConferenceCallTsy::ResetAttributes." );    
  1606 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_RESETATTRIBUTES_1, "TSY: CMmConferenceCallTsy::ResetAttributes." );
  1602     //Name of the call to be added to Conference call
  1607     //Name of the call to be added to Conference call
  1603     iAddCallName.Zero();
  1608     iAddCallName.Zero();
  1604     //Conference call capabilities
  1609     //Conference call capabilities
  1605     iConferenceCaps = 0;
  1610     iConferenceCaps = 0;
  1606     //Number of calls in conference call
  1611     //Number of calls in conference call
  1754 //
  1759 //
  1755 void CMmConferenceCallTsy::ReqCompleted(
  1760 void CMmConferenceCallTsy::ReqCompleted(
  1756     const TTsyReqHandle aTsyReqHandle,
  1761     const TTsyReqHandle aTsyReqHandle,
  1757     const TInt aError )
  1762     const TInt aError )
  1758     {
  1763     {
  1759 	TFLOGSTRING3("TSY: CMmConferenceCallTsy::Request Completed. \n\t\t\tHandle:%d\n\t\t\t Error:%d",
  1764 	OstTraceDefExt2(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCONFERENCECALLTSY_REQCOMPLETED_1, "TSY: CMmConferenceCallTsy::Request Completed. \n\t\t\tHandle:%d\n\t\t\t Error:%d",aTsyReqHandle, aError);
  1760         aTsyReqHandle, aError);
       
  1761 
  1765 
  1762     //call original ReqCompleted from CTelObject
  1766     //call original ReqCompleted from CTelObject
  1763     CTelObject::ReqCompleted( aTsyReqHandle, aError );
  1767     CTelObject::ReqCompleted( aTsyReqHandle, aError );
  1764 
  1768 
  1765     }
  1769     }