telephonyserverplugins/simatktsy/src/csatnotificationstsy.cpp
branchRCL_3
changeset 65 630d2f34d719
parent 0 3553901f7fa8
child 66 07a122eea281
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".
    19 
    19 
    20 
    20 
    21 
    21 
    22 
    22 
    23 //INCLUDES
    23 //INCLUDES
       
    24 
       
    25 #include "OstTraceDefinitions.h"
       
    26 #ifdef OST_TRACE_COMPILER_IN_USE
       
    27 #include "csatnotificationstsyTraces.h"
       
    28 #endif
       
    29 
    24 #include <satcs.h>                  // Etel SAT IPC definitions
    30 #include <satcs.h>                  // Etel SAT IPC definitions
    25 #include "CSatDataPackage.h"        // Parameter packing 
    31 #include "CSatDataPackage.h"        // Parameter packing 
    26 #include "CSatTsy.h"                // Sat Tsy class
    32 #include "CSatTsy.h"                // Sat Tsy class
    27 #include "CSatCCTsy.h"              // Sat Call Contol Tsy class
    33 #include "CSatCCTsy.h"              // Sat Call Contol Tsy class
    28 #include "cmmmessagemanagerbase.h"  // Message manager class for forwarding req
    34 #include "cmmmessagemanagerbase.h"  // Message manager class for forwarding req
    56 #include "CSatNotifyCloseChannel.h"	// Close channel notification  notify class
    62 #include "CSatNotifyCloseChannel.h"	// Close channel notification  notify class
    57 #include "CSatNotifySendData.h"		// Send Data notification  notify class
    63 #include "CSatNotifySendData.h"		// Send Data notification  notify class
    58 #include "CSatNotifyReceiveData.h"  // Receive data notification  notify class
    64 #include "CSatNotifyReceiveData.h"  // Receive data notification  notify class
    59 #include "CSatNotifyMoreTime.h"		// More time notification  notify class
    65 #include "CSatNotifyMoreTime.h"		// More time notification  notify class
    60 #include "CSatTsyReqHandleStore.h"  // Request handle class
    66 #include "CSatTsyReqHandleStore.h"  // Request handle class
    61 #include "TfLogger.h"               // For TFLOGSTRING
       
    62 #include "CBerTlv.h"                // Ber Tlv
    67 #include "CBerTlv.h"                // Ber Tlv
    63 #include "TTlv.h"					// TTlv class
    68 #include "TTlv.h"					// TTlv class
    64 #include "msattsy_ipcdefs.h"		// Sat Tsy specific request types
    69 #include "msattsy_ipcdefs.h"		// Sat Tsy specific request types
    65 #include "TSatUtility.h"            // Utilities
    70 #include "TSatUtility.h"            // Utilities
    66 
    71 
    74         (    
    79         (    
    75         CSatTsy* aSatTsy,
    80         CSatTsy* aSatTsy,
    76 		CSatTsyReqHandleStore* aSatReqHandleStore
    81 		CSatTsyReqHandleStore* aSatReqHandleStore
    77         )
    82         )
    78     {
    83     {
    79     TFLOGSTRING("CSAT: CSatNotificationsTsy::NewL");
    84     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_NEWL_1, "CSAT: CSatNotificationsTsy::NewL");
    80     CSatNotificationsTsy* const satNotificationsTsy = 
    85     CSatNotificationsTsy* const satNotificationsTsy = 
    81         new ( ELeave ) CSatNotificationsTsy( aSatTsy, aSatReqHandleStore );
    86         new ( ELeave ) CSatNotificationsTsy( aSatTsy, aSatReqHandleStore );
    82 
    87 
    83     CleanupStack::PushL( satNotificationsTsy );
    88     CleanupStack::PushL( satNotificationsTsy );
    84     satNotificationsTsy->ConstructL();
    89     satNotificationsTsy->ConstructL();
    85     CleanupStack::Pop();
    90     CleanupStack::Pop();
    86     
    91     
    87 	TFLOGSTRING("CSAT: CSatNotificationsTsy::NewL, end of method");
    92 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_NEWL_2, "CSAT: CSatNotificationsTsy::NewL, end of method");
    88     return satNotificationsTsy;
    93     return satNotificationsTsy;
    89     }
    94     }
    90 
    95 
    91 // -----------------------------------------------------------------------------
    96 // -----------------------------------------------------------------------------
    92 // CSatNotificationsTsy::~CSatNotificationsTsy
    97 // CSatNotificationsTsy::~CSatNotificationsTsy
    96 CSatNotificationsTsy::~CSatNotificationsTsy
   101 CSatNotificationsTsy::~CSatNotificationsTsy
    97         (    
   102         (    
    98         void   
   103         void   
    99         )
   104         )
   100     {
   105     {
   101     TFLOGSTRING("CSAT: CSatNotificationsTsy::~CSatNotificationsTsy");
   106     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_DTOR_1, "CSAT: CSatNotificationsTsy::~CSatNotificationsTsy");
   102     
   107     
   103     delete iSatTimer;
   108     delete iSatTimer;
   104 
   109 
   105     // Specific notification objects
   110     // Specific notification objects
   106     delete iNotifyDisplayText;
   111     delete iNotifyDisplayText;
   134 	delete iNotifyMoreTime;
   139 	delete iNotifyMoreTime;
   135 
   140 
   136     // Unregister.
   141     // Unregister.
   137     iSatTsy->MessageManager()->RegisterTsyObject(
   142     iSatTsy->MessageManager()->RegisterTsyObject(
   138 		CMmMessageManagerBase::ESatNotificationsTsyObjType, NULL );
   143 		CMmMessageManagerBase::ESatNotificationsTsyObjType, NULL );
   139 	TFLOGSTRING("CSAT: CSatNotificationsTsy::~CSatNotificationsTsy, \
   144 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_DTOR_2, "CSAT: CSatNotificationsTsy::~CSatNotificationsTsy, end of method");
   140 		end of method");
       
   141     }
   145     }
   142     
   146     
   143 // -----------------------------------------------------------------------------
   147 // -----------------------------------------------------------------------------
   144 // CSatNotificationsTsy::CSatNotificationsTsy
   148 // CSatNotificationsTsy::CSatNotificationsTsy
   145 // C++ constructor
   149 // C++ constructor
   163 void CSatNotificationsTsy::ConstructL
   167 void CSatNotificationsTsy::ConstructL
   164         (    
   168         (    
   165         void
   169         void
   166         )
   170         )
   167     {
   171     {
   168     TFLOGSTRING("CSAT: CSatNotificationsTsy::ConstructL\n" );
   172     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_CONSTRUCTL_1, "CSAT: CSatNotificationsTsy::ConstructL\n" );
   169 
   173 
   170     // Register
   174     // Register
   171     iSatTsy->MessageManager()->RegisterTsyObject(
   175     iSatTsy->MessageManager()->RegisterTsyObject(
   172 		CMmMessageManagerBase::ESatNotificationsTsyObjType, this );
   176 		CMmMessageManagerBase::ESatNotificationsTsyObjType, this );
   173 
   177 
   322     iSatTsy->MessageManager()->HandleRequestL( ESatTsyGetIMEI );
   326     iSatTsy->MessageManager()->HandleRequestL( ESatTsyGetIMEI );
   323     
   327     
   324     // Checks if MO-SMS control should be activated
   328     // Checks if MO-SMS control should be activated
   325     //unnecassary IPC request as this is already called in CSatNotifyMoSmControlRequest::ConstructL 
   329     //unnecassary IPC request as this is already called in CSatNotifyMoSmControlRequest::ConstructL 
   326     //iSatTsy->MessageManager()->HandleRequestL( ESatTsyQueryMoSmsControlActivated );
   330     //iSatTsy->MessageManager()->HandleRequestL( ESatTsyQueryMoSmsControlActivated );
   327 	TFLOGSTRING("CSAT: CSatNotificationsTsy::ConstructL, end of method" );
   331 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_CONSTRUCTL_2, "CSAT: CSatNotificationsTsy::ConstructL, end of method" );
   328     }
   332     }
   329 
   333 
   330 // -----------------------------------------------------------------------------
   334 // -----------------------------------------------------------------------------
   331 // CSatNotificationsTsy::DoExtFunc
   335 // CSatNotificationsTsy::DoExtFunc
   332 // Notifications-specific functionality of CSatTsy::DoExtFuncL
   336 // Notifications-specific functionality of CSatTsy::DoExtFuncL
   337         const TTsyReqHandle aTsyReqHandle, 
   341         const TTsyReqHandle aTsyReqHandle, 
   338         const TInt aIpc,                   
   342         const TInt aIpc,                   
   339         const TDataPackage& aPackage      
   343         const TDataPackage& aPackage      
   340         )
   344         )
   341     {
   345     {
   342     TFLOGSTRING3("CSAT: CSatNotificationsTsy::DoExtFuncL\t IPC:%d,\t Handle:%d",
   346     OstTraceDefExt2(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_DOEXTFUNCL_1, "CSAT: CSatNotificationsTsy::DoExtFuncL\t IPC:%d,\t Handle:%d",aIpc, aTsyReqHandle);
   343                aIpc, aTsyReqHandle);
       
   344 
   347 
   345     TInt ret ( KErrNone );
   348     TInt ret ( KErrNone );
   346 
   349 
   347     TAny* dataPtr = aPackage.Ptr1();
   350     TAny* dataPtr = aPackage.Ptr1();
   348 
   351 
   500         	iNotifyReceiveData->Notify( aTsyReqHandle, aPackage );
   503         	iNotifyReceiveData->Notify( aTsyReqHandle, aPackage );
   501         	break;	
   504         	break;	
   502         	} 
   505         	} 
   503         default:
   506         default:
   504         	{
   507         	{
   505         	TFLOGSTRING("CSAT: CSatNotificationsTsy::DoExtFuncL, \
   508         	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_DOEXTFUNCL_2, "CSAT: CSatNotificationsTsy::DoExtFuncL, IPC not supported");
   506         		IPC not supported");
       
   507             ret = KErrNotSupported;
   509             ret = KErrNotSupported;
   508             break;
   510             break;
   509         	}
   511         	}
   510         }
   512         }
   511     return ret;
   513     return ret;
   520         (    
   522         (    
   521         const TInt aIpc,               
   523         const TInt aIpc,               
   522         const TTsyReqHandle aTsyReqHandle  
   524         const TTsyReqHandle aTsyReqHandle  
   523         )
   525         )
   524     {
   526     {
   525     TFLOGSTRING2("CSAT: CSatNotificationsTsy::CancelService.\
   527     OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_CANCELSERVICE_1, "CSAT: CSatNotificationsTsy::CancelService.\n\t\t\t Handle:%d\n\t\t\t", aTsyReqHandle );
   526     	\n\t\t\t Handle:%d\n\t\t\t", aTsyReqHandle );
       
   527 
   528 
   528     TInt ret ( KErrNotSupported );
   529     TInt ret ( KErrNotSupported );
   529     
   530     
   530     // When the clients close their sub-sessions (eg. by calling RLine::Close), 
   531     // When the clients close their sub-sessions (eg. by calling RLine::Close), 
   531     // they may not have cancelled all their outstanding asynchronous requests 
   532     // they may not have cancelled all their outstanding asynchronous requests 
   689         ( 
   690         ( 
   690         CSatDataPackage* aDataPackage,
   691         CSatDataPackage* aDataPackage,
   691         TInt aErrorCode
   692         TInt aErrorCode
   692         )
   693         )
   693     {
   694     {
   694     TFLOGSTRING("CSAT: CSatNotificationsTsy::SetPollingResultL");
   695     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_SETPOLLINGRESULTL_1, "CSAT: CSatNotificationsTsy::SetPollingResultL");
   695     TUint8 pCmdNumber;
   696     TUint8 pCmdNumber;
   696     TUint8 interval;
   697     TUint8 interval;
   697     TBuf<RSat::KAdditionalInfoMaxSize> additionalInfo;
   698     TBuf<RSat::KAdditionalInfoMaxSize> additionalInfo;
   698     aDataPackage->UnPackData( pCmdNumber, interval );
   699     aDataPackage->UnPackData( pCmdNumber, interval );
   699     
   700     
   700     // NAA status OK 
   701     // NAA status OK 
   701     if ( KErrNone == aErrorCode ) 
   702     if ( KErrNone == aErrorCode ) 
   702         {
   703         {
   703         if ( iPollingOff )
   704         if ( iPollingOff )
   704             {
   705             {
   705             TFLOGSTRING("CSAT: CSatNotificationsTsy::SetPollingResultL, \
   706             OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_SETPOLLINGRESULTL_2, "CSAT: CSatNotificationsTsy::SetPollingResultL, Polling Off");
   706                 Polling Off");
       
   707             additionalInfo.Zero();
   707             additionalInfo.Zero();
   708             additionalInfo.Append( RSat::KNoAdditionalInfo );
   708             additionalInfo.Append( RSat::KNoAdditionalInfo );
   709             iNotifyPollingOff->CreateTerminalRespL( pCmdNumber,
   709             iNotifyPollingOff->CreateTerminalRespL( pCmdNumber,
   710                 RSat::KSuccess, additionalInfo );
   710                 RSat::KSuccess, additionalInfo );
   711             }
   711             }
   716             }
   716             }
   717         }    
   717         }    
   718     // NAA status not OK
   718     // NAA status not OK
   719 	else
   719 	else
   720         {
   720         {
   721         TFLOGSTRING("CSAT: CSatNotificationsTsy::SetPollingResultL, \
   721         OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_SETPOLLINGRESULTL_3, "CSAT: CSatNotificationsTsy::SetPollingResultL, NAA Status Not OK, means that value in request is out of range and default value is used.");
   722         	NAA Status Not OK, means that value in request is out of range\
       
   723         	and default value is used.");
       
   724         if ( iPollingOff )
   722         if ( iPollingOff )
   725             {
   723             {
   726             iPollingOff = EFalse;
   724             iPollingOff = EFalse;
   727             additionalInfo.Zero();
   725             additionalInfo.Zero();
   728             additionalInfo.Append( RSat::KNoSpecificMeProblem );
   726             additionalInfo.Append( RSat::KNoSpecificMeProblem );
   733             {
   731             {
   734             // If last request rejected (request was over 25 seconds),
   732             // If last request rejected (request was over 25 seconds),
   735             // renew the request with legacy maximum.. 
   733             // renew the request with legacy maximum.. 
   736             if ( iLongPollIntervalReq )
   734             if ( iLongPollIntervalReq )
   737                 {
   735                 {
   738                 TFLOGSTRING("CSAT: CSatNotificationsTsy::SetPollingResultL, \
   736                 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_SETPOLLINGRESULTL_4, "CSAT: CSatNotificationsTsy::SetPollingResultL, Request set to legacy maximum (25 seconds)");
   739         	        Request set to legacy maximum (25 seconds)");
       
   740                 SetPollingIntervalL( KMaxLegacyPollInterval );
   737                 SetPollingIntervalL( KMaxLegacyPollInterval );
   741                 iLongPollIntervalReq = EFalse;
   738                 iLongPollIntervalReq = EFalse;
   742                 }
   739                 }
   743             // ..otherwise there was an actual error.
   740             // ..otherwise there was an actual error.
   744             else
   741             else
   762 void CSatNotificationsTsy::SetPollingIntervalL
   759 void CSatNotificationsTsy::SetPollingIntervalL
   763         (
   760         (
   764         TUint8 aValue
   761         TUint8 aValue
   765         )
   762         )
   766     {
   763     {
   767     TFLOGSTRING2("CSAT: CSatNotificationsTsy::SetPollingIntervalL, Value: %d",
   764     OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_SETPOLLINGINTERVALL_1, "CSAT: CSatNotificationsTsy::SetPollingIntervalL, Value: %d",aValue);
   768         aValue);
       
   769     
   765     
   770     if ( KMaxLegacyPollInterval < aValue )
   766     if ( KMaxLegacyPollInterval < aValue )
   771         {
   767         {
   772         iLongPollIntervalReq = ETrue;
   768         iLongPollIntervalReq = ETrue;
   773         }
   769         }
   790         (
   786         (
   791         TInt aTimerId,
   787         TInt aTimerId,
   792         TUint32 aTimerValue 
   788         TUint32 aTimerValue 
   793         )
   789         )
   794     {
   790     {
   795     TFLOGSTRING("CSAT: CSatNotificationsTsy::TimerExpirationL");
   791     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_TIMEREXPIRATIONL_1, "CSAT: CSatNotificationsTsy::TimerExpirationL");
   796     TUint8 time[3] = {0, 0, 0}; 
   792     TUint8 time[3] = {0, 0, 0}; 
   797     TInt num[3];
   793     TInt num[3];
   798     num[0] = aTimerValue / 3600;         // Hours
   794     num[0] = aTimerValue / 3600;         // Hours
   799     num[1] = ( aTimerValue % 3600 )/60;  // Minutes
   795     num[1] = ( aTimerValue % 3600 )/60;  // Minutes
   800     num[2] = ( aTimerValue % 3600 )%60;  // Seconds
   796     num[2] = ( aTimerValue % 3600 )%60;  // Seconds
   842 CSatTimer* CSatNotificationsTsy::GetSatTimer
   838 CSatTimer* CSatNotificationsTsy::GetSatTimer
   843         (
   839         (
   844         // None 
   840         // None 
   845         )
   841         )
   846     {
   842     {
   847     TFLOGSTRING("CSAT: CSatNotificationsTsy::GetSatTimer");
   843     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_GETSATTIMER_1, "CSAT: CSatNotificationsTsy::GetSatTimer");
   848     // Pointer to SAT timer
   844     // Pointer to SAT timer
   849     return iSatTimer; 
   845     return iSatTimer; 
   850     }
   846     }
   851 
   847 
   852 // -----------------------------------------------------------------------------
   848 // -----------------------------------------------------------------------------
   857 CSatNotifySetUpCall* CSatNotificationsTsy::SatNotifySetUpCall
   853 CSatNotifySetUpCall* CSatNotificationsTsy::SatNotifySetUpCall
   858         (
   854         (
   859         // None
   855         // None
   860         )
   856         )
   861     {
   857     {
   862     TFLOGSTRING("CSAT: CSatNotificationsTsy::SatNotifySetUpCall");
   858     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_SATNOTIFYSETUPCALL_1, "CSAT: CSatNotificationsTsy::SatNotifySetUpCall");
   863     // Pointer to NotifySetupCall
   859     // Pointer to NotifySetupCall
   864     return iNotifySetUpCall;
   860     return iNotifySetUpCall;
   865     }
   861     }
   866 
   862 
   867 // -----------------------------------------------------------------------------
   863 // -----------------------------------------------------------------------------
   873         (
   869         (
   874         CSatDataPackage* aDataPackage,  
   870         CSatDataPackage* aDataPackage,  
   875 		TInt /*aResult*/             
   871 		TInt /*aResult*/             
   876         )
   872         )
   877     {
   873     {
   878 	TFLOGSTRING("CSAT: CSatNotificationsTsy::\
   874 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_SETPROACTIVECOMMANDONGOINGSTATUS_1, "CSAT: CSatNotificationsTsy::SetProactiveCommandOnGoingStatus");
   879 		SetProactiveCommandOnGoingStatus");
       
   880     TBool ProactiveCommandOngoingStatus;
   875     TBool ProactiveCommandOngoingStatus;
   881     aDataPackage->UnPackData( ProactiveCommandOngoingStatus );
   876     aDataPackage->UnPackData( ProactiveCommandOngoingStatus );
   882     iSatTimer->SetProactiveCommandOnGoingStatus( 
   877     iSatTimer->SetProactiveCommandOnGoingStatus( 
   883     	ProactiveCommandOngoingStatus ); 
   878     	ProactiveCommandOngoingStatus ); 
   884     }
   879     }
   893         (
   888         (
   894         CSatDataPackage* aDataPackage,
   889         CSatDataPackage* aDataPackage,
   895         TInt aResult
   890         TInt aResult
   896         )
   891         )
   897     {
   892     {
   898     TFLOGSTRING("CSAT: CSatNotificationsTsy::CompletePCmdL");
   893     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_COMPLETEPCMDL_1, "CSAT: CSatNotificationsTsy::CompletePCmdL");
   899 
   894 
   900     TPtrC8* data;
   895     TPtrC8* data;
   901     aDataPackage->UnPackData( &data );
   896     aDataPackage->UnPackData( &data );
   902     CBerTlv berTlv;
   897     CBerTlv berTlv;
   903     berTlv.SetData( *data );
   898     berTlv.SetData( *data );
  1044 					aResult );
  1039 					aResult );
  1045 			break;
  1040 			break;
  1046 			}
  1041 			}
  1047         default:
  1042         default:
  1048             {
  1043             {
  1049             TFLOGSTRING("CSAT: CSatNotificationsTsy::CompletePCmdL, \
  1044             OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_COMPLETEPCMDL_2, "CSAT: CSatNotificationsTsy::CompletePCmdL, Proactive command not supported" );
  1050             	Proactive command not supported" );
       
  1051         	// If proactive command is not supported, terminal response
  1045         	// If proactive command is not supported, terminal response
  1052             // with "Command is beyond ME's capabilities" information 
  1046             // with "Command is beyond ME's capabilities" information 
  1053             // will be send. 
  1047             // will be send. 
  1054             // Get command details tlv and set it to the struct
  1048             // Get command details tlv and set it to the struct
  1055         	iTerminalRespData.iCommandDetails.Copy( commandDetails.Data() );
  1049         	iTerminalRespData.iCommandDetails.Copy( commandDetails.Data() );
  1080 TBool CSatNotificationsTsy::IsMoSmControlActivated
  1074 TBool CSatNotificationsTsy::IsMoSmControlActivated
  1081 		(
  1075 		(
  1082 		void
  1076 		void
  1083 		)
  1077 		)
  1084     {
  1078     {
  1085     TFLOGSTRING("CSAT: CSatNotificationsTsy::IsMoSmControlActivated");
  1079     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_ISMOSMCONTROLACTIVATED_1, "CSAT: CSatNotificationsTsy::IsMoSmControlActivated");
  1086     return iNotifyMoSmControlRequest->ActivationStatus();
  1080     return iNotifyMoSmControlRequest->ActivationStatus();
  1087     }
  1081     }
  1088      
  1082      
  1089 // -----------------------------------------------------------------------------
  1083 // -----------------------------------------------------------------------------
  1090 // CSatNotificationsTsy::SetPollingOff
  1084 // CSatNotificationsTsy::SetPollingOff
  1094 void CSatNotificationsTsy::SetPollingOffStatus
  1088 void CSatNotificationsTsy::SetPollingOffStatus
  1095 		( 
  1089 		( 
  1096 		TBool aPollingOff 
  1090 		TBool aPollingOff 
  1097 		)
  1091 		)
  1098 	{
  1092 	{
  1099 	TFLOGSTRING2("CSAT: CSatNotificationsTsy::SetPollingOffStatus \
  1093 	OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_SETPOLLINGOFFSTATUS_1, "CSAT: CSatNotificationsTsy::SetPollingOffStatus status: %d", aPollingOff);
  1100 		status: %d", aPollingOff);
       
  1101 	iPollingOff = aPollingOff;		
  1094 	iPollingOff = aPollingOff;		
  1102 	}
  1095 	}
  1103 
  1096 
  1104 // -----------------------------------------------------------------------------
  1097 // -----------------------------------------------------------------------------
  1105 // CSatNotificationsTsy::SetPollingOff
  1098 // CSatNotificationsTsy::SetPollingOff
  1109 TBool CSatNotificationsTsy::PollingOffStatus
  1102 TBool CSatNotificationsTsy::PollingOffStatus
  1110 		( 
  1103 		( 
  1111 		// None
  1104 		// None
  1112 		)
  1105 		)
  1113 	{
  1106 	{
  1114 	TFLOGSTRING("CSAT: CSatNotificationsTsy::PollingOffStatus");
  1107 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_POLLINGOFFSTATUS_1, "CSAT: CSatNotificationsTsy::PollingOffStatus");
  1115 	return iPollingOff;		
  1108 	return iPollingOff;		
  1116 	}
  1109 	}
  1117 
  1110 
  1118 // -----------------------------------------------------------------------------
  1111 // -----------------------------------------------------------------------------
  1119 // CSatNotificationsTsy::AddLocationInformationToTlv
  1112 // CSatNotificationsTsy::AddLocationInformationToTlv
  1123 void CSatNotificationsTsy::AddLocationInformationToTlv
  1116 void CSatNotificationsTsy::AddLocationInformationToTlv
  1124         (
  1117         (
  1125         TTlv& aTlv 
  1118         TTlv& aTlv 
  1126         )
  1119         )
  1127     {
  1120     {
  1128     TFLOGSTRING("CSAT: CSatNotificationsTsy::AddLocationInformationToTlv");
  1121     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_ADDLOCATIONINFORMATIONTOTLV_1, "CSAT: CSatNotificationsTsy::AddLocationInformationToTlv");
  1129     
  1122     
  1130     // Get the current location data from CSatNotifyLocalInfo
  1123     // Get the current location data from CSatNotifyLocalInfo
  1131     const TLocalInformation& locInfo = iNotifyLocalInfo->LocalInformation();
  1124     const TLocalInformation& locInfo = iNotifyLocalInfo->LocalInformation();
  1132         
  1125         
  1133     // Add location information data, start with the tag
  1126     // Add location information data, start with the tag
  1151 	    (
  1144 	    (
  1152 	    RSat::TAlphaIdBuf& aAlphaId,
  1145 	    RSat::TAlphaIdBuf& aAlphaId,
  1153 	    RSat::TControlResult aResult 
  1146 	    RSat::TControlResult aResult 
  1154 	    )
  1147 	    )
  1155     {
  1148     {
  1156     TFLOGSTRING("CSAT: CSatNotificationsTsy::NotifyClientForAlphaId");
  1149     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_NOTIFYCLIENTFORALPHAID_1, "CSAT: CSatNotificationsTsy::NotifyClientForAlphaId");
  1157     iNotifyCallControlRequest->CompleteAlphaId( aAlphaId, aResult, KErrNone );
  1150     iNotifyCallControlRequest->CompleteAlphaId( aAlphaId, aResult, KErrNone );
  1158     }
  1151     }
  1159     
  1152     
  1160 // -----------------------------------------------------------------------------
  1153 // -----------------------------------------------------------------------------
  1161 // CSatNotificationsTsy::RequestHandleStore
  1154 // CSatNotificationsTsy::RequestHandleStore
  1165 CSatTsyReqHandleStore* CSatNotificationsTsy::RequestHandleStore
  1158 CSatTsyReqHandleStore* CSatNotificationsTsy::RequestHandleStore
  1166 	    (
  1159 	    (
  1167 	    void
  1160 	    void
  1168 	    )
  1161 	    )
  1169     {
  1162     {
  1170     TFLOGSTRING("CSAT: CSatNotificationsTsy::RequestHandleStore");
  1163     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_REQUESTHANDLESTORE_1, "CSAT: CSatNotificationsTsy::RequestHandleStore");
  1171     return iSatReqHandleStore;
  1164     return iSatReqHandleStore;
  1172     }
  1165     }
  1173     	       
  1166     	       
  1174 // -----------------------------------------------------------------------------
  1167 // -----------------------------------------------------------------------------
  1175 // CSatNotificationsTsy::NotifySatReadyForNotification
  1168 // CSatNotificationsTsy::NotifySatReadyForNotification
  1180 TInt CSatNotificationsTsy::NotifySatReadyForNotification
  1173 TInt CSatNotificationsTsy::NotifySatReadyForNotification
  1181 	    (
  1174 	    (
  1182 	    TUint8 aPCmdMsgType 
  1175 	    TUint8 aPCmdMsgType 
  1183 	    )
  1176 	    )
  1184     {
  1177     {
  1185     TFLOGSTRING("CSAT: CSatNotificationsTsy::NotifySatReadyForNotification");
  1178     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_NOTIFYSATREADYFORNOTIFICATION_1, "CSAT: CSatNotificationsTsy::NotifySatReadyForNotification");
  1186     TInt ret( KErrNone );
  1179     TInt ret( KErrNone );
  1187     // Pack parameter for DOS call
  1180     // Pack parameter for DOS call
  1188 	CSatDataPackage dataPackage;
  1181 	CSatDataPackage dataPackage;
  1189 	dataPackage.PackData( &aPCmdMsgType );
  1182 	dataPackage.PackData( &aPCmdMsgType );
  1190 	TRAPD( trapError, ret = iSatTsy->MessageManager()->HandleRequestL( 
  1183 	TRAPD( trapError, ret = iSatTsy->MessageManager()->HandleRequestL( 
  1192 		);
  1185 		);
  1193 		
  1186 		
  1194 	if ( trapError )
  1187 	if ( trapError )
  1195 		{
  1188 		{
  1196 		ret = trapError;
  1189 		ret = trapError;
  1197 		TFLOGSTRING2("CSAT: CSatNotificationsTsy::NotifySatReadyForNotification\
  1190 		OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_NOTIFYSATREADYFORNOTIFICATION_2, "CSAT: CSatNotificationsTsy::NotifySatReadyForNotification Trap error: %d", trapError);
  1198 			Trap error: %d", trapError);
       
  1199 		}
  1191 		}
  1200 		
  1192 		
  1201 	return ret;
  1193 	return ret;
  1202     }
  1194     }
  1203                 
  1195                 
  1211             RSat::TPCmd*    aPCmd,         
  1203             RSat::TPCmd*    aPCmd,         
  1212             TDes8*          aRsp,           
  1204             TDes8*          aRsp,           
  1213             TTsyReqHandle   aTsyReqHandle   
  1205             TTsyReqHandle   aTsyReqHandle   
  1214             ) 
  1206             ) 
  1215     {
  1207     {
  1216     TFLOGSTRING2("CSAT: CSatNotificationsTsy::TerminalResponseL.\
  1208     OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_TERMINALRESPONSEL_1, "CSAT: CSatNotificationsTsy::TerminalResponseL.\n\t\t\t Handle:%d\n\t\t\t", aTsyReqHandle );
  1217         \n\t\t\t Handle:%d\n\t\t\t", aTsyReqHandle );
       
  1218 
  1209 
  1219     TInt ret( KErrNone );
  1210     TInt ret( KErrNone );
  1220 
  1211 
  1221     switch ( *aPCmd )
  1212     switch ( *aPCmd )
  1222         {
  1213         {
  1332         	ret = iNotifyReceiveData->TerminalResponseL( aRsp );
  1323         	ret = iNotifyReceiveData->TerminalResponseL( aRsp );
  1333         	break;	
  1324         	break;	
  1334         	}	         			                            
  1325         	}	         			                            
  1335         default:
  1326         default:
  1336         	{
  1327         	{
  1337         	TFLOGSTRING("CSAT: CSatNotificationsTsy::TerminalResponseL.\
  1328         	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_TERMINALRESPONSEL_2, "CSAT: CSatNotificationsTsy::TerminalResponseL. Proactive command unknown" );
  1338         		Proactive command unknown" );
       
  1339             ret =  KErrGeneral;
  1329             ret =  KErrGeneral;
  1340             break;
  1330             break;
  1341         	}
  1331         	}
  1342         }
  1332         }
  1343 	
  1333 	
  1356 void CSatNotificationsTsy::CompleteTerminalResponse
  1346 void CSatNotificationsTsy::CompleteTerminalResponse
  1357         (
  1347         (
  1358         TInt aErrorCode     // Error code
  1348         TInt aErrorCode     // Error code
  1359         )
  1349         )
  1360     {
  1350     {
  1361     TFLOGSTRING2("CSAT: CSatNotificationsTsy::CompleteTerminalResponse - \
  1351     OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_COMPLETETERMINALRESPONSE_1, "CSAT: CSatNotificationsTsy::CompleteTerminalResponse - Error:%d", aErrorCode);
  1362     	Error:%d", aErrorCode);
       
  1363 
  1352 
  1364     TTsyReqHandle reqHandle = iSatTsy->GetSatReqHandleStore()->
  1353     TTsyReqHandle reqHandle = iSatTsy->GetSatReqHandleStore()->
  1365         ResetTsyReqHandle( CSatTsy::ESatTerminalRspReqType );
  1354         ResetTsyReqHandle( CSatTsy::ESatTerminalRspReqType );
  1366 
  1355 
  1367     // Check if handle for terminal response exists
  1356     // Check if handle for terminal response exists
  1381 TBool CSatNotificationsTsy::CommandPerformedSuccessfully
  1370 TBool CSatNotificationsTsy::CommandPerformedSuccessfully
  1382         ( 
  1371         ( 
  1383         TUint8 aGeneralResult 
  1372         TUint8 aGeneralResult 
  1384         )
  1373         )
  1385     {
  1374     {
  1386     TFLOGSTRING("CSAT: CSatNotificationsTsy::CommandPerformedSuccessfully");
  1375     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_COMMANDPERFORMEDSUCCESSFULLY_1, "CSAT: CSatNotificationsTsy::CommandPerformedSuccessfully");
  1387     TBool ret( EFalse );
  1376     TBool ret( EFalse );
  1388 	switch ( aGeneralResult )
  1377 	switch ( aGeneralResult )
  1389 	    { 
  1378 	    { 
  1390         case RSat::KSuccess:
  1379         case RSat::KSuccess:
  1391         case RSat::KPartialComprehension:
  1380         case RSat::KPartialComprehension:
  1400     		ret = ETrue;
  1389     		ret = ETrue;
  1401             break;
  1390             break;
  1402         	}
  1391         	}
  1403 	    default:
  1392 	    default:
  1404 	    	{	
  1393 	    	{	
  1405 	    	TFLOGSTRING("CSAT: CSatNotificationsTsy:: \
  1394 	    	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_COMMANDPERFORMEDSUCCESSFULLY_2, "CSAT: CSatNotificationsTsy::CommandPerformedSuccessfully, EFalse");
  1406 	    		CommandPerformedSuccessfully, EFalse");
       
  1407 		    ret = EFalse;
  1395 		    ret = EFalse;
  1408 		    break;
  1396 		    break;
  1409 	    	}
  1397 	    	}
  1410 	    }
  1398 	    }
  1411     return ret;
  1399     return ret;
  1419 TInt CSatNotificationsTsy::NotifyCbDownload
  1407 TInt CSatNotificationsTsy::NotifyCbDownload
  1420         (
  1408         (
  1421         TTsyReqHandle   aTsyReqHandle 
  1409         TTsyReqHandle   aTsyReqHandle 
  1422         )
  1410         )
  1423     {
  1411     {
  1424     TFLOGSTRING("CSAT: CSatNotificationsTsy::NotifyCbDownload");
  1412     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_NOTIFYCBDOWNLOAD_1, "CSAT: CSatNotificationsTsy::NotifyCbDownload");
  1425     TInt ret( KErrNone );
  1413     TInt ret( KErrNone );
  1426     iSatTsy->ReqCompleted( aTsyReqHandle, ret );   
  1414     iSatTsy->ReqCompleted( aTsyReqHandle, ret );   
  1427     return ret; 
  1415     return ret; 
  1428     }
  1416     }
  1429 
  1417 
  1435 TInt CSatNotificationsTsy::NotifySmsPpDownload
  1423 TInt CSatNotificationsTsy::NotifySmsPpDownload
  1436         (
  1424         (
  1437         TTsyReqHandle   aTsyReqHandle
  1425         TTsyReqHandle   aTsyReqHandle
  1438         )
  1426         )
  1439     {
  1427     {
  1440     TFLOGSTRING("CSAT: CSatNotificationsTsy::NotifySmsPpDownload");
  1428     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_NOTIFYSMSPPDOWNLOAD_1, "CSAT: CSatNotificationsTsy::NotifySmsPpDownload");
  1441     TInt ret( KErrNone );
  1429     TInt ret( KErrNone );
  1442     iSatTsy->ReqCompleted( aTsyReqHandle, ret );   
  1430     iSatTsy->ReqCompleted( aTsyReqHandle, ret );   
  1443     return ret; 
  1431     return ret; 
  1444     }
  1432     }
  1445 
  1433