adaptationlayer/modematadaptation/modematcontroller_dll/src/rmodematcontroller.cpp
changeset 9 8486d82aef45
parent 0 63b37f68c1ce
--- a/adaptationlayer/modematadaptation/modematcontroller_dll/src/rmodematcontroller.cpp	Wed Apr 21 14:29:55 2010 +0300
+++ b/adaptationlayer/modematadaptation/modematcontroller_dll/src/rmodematcontroller.cpp	Tue Oct 19 13:16:20 2010 +0300
@@ -25,6 +25,11 @@
 #include "cunsoliciteddatareq.h"
 #include "csignalindreq.h"
 #include "ccommandmodereq.h"
+#include "OstTraceDefinitions.h"
+#ifdef OST_TRACE_COMPILER_IN_USE
+#include "rmodematcontrollerTraces.h"
+#endif
+
 
 _LIT( KATExtSrvExe, "modematcontroller.exe" );
 const TUid KATExtSrvUid3 = { 0x2001FCB1 }; 
@@ -37,11 +42,13 @@
     iSignalIndReq( NULL ),
     iCommandModeReq( NULL )
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_RMODEMATCONTROLLER, "RModemAtController::RModemAtController" );
     C_TRACE((_L("RModemAtController::RModemAtController()")));
     }
 
 EXPORT_C RModemAtController::~RModemAtController()
     {
+    OstTrace0( TRACE_NORMAL, DUP1_RMODEMATCONTROLLER_RMODEMATCONTROLLER, "RModemAtController::~RModemAtController" );
     C_TRACE((_L("RModemAtController::~RModemAtController()")));
     if( iUnsolicitedDataReq || iAtRequest || iSignalIndReq || iCommandModeReq ) 
         {
@@ -50,11 +57,13 @@
 #ifdef _DEBUG
     RThread thisRt;
     TInt count = thisRt.RequestCount();
+    OstTrace1( TRACE_NORMAL, DUP2_RMODEMATCONTROLLER_RMODEMATCONTROLLER, "RModemAtController::~RModemAtController - >RequestCount;count=%d", count );
     C_TRACE((_L(">RequestCount %d "), count));
 #endif
 
 #ifdef _DEBUG
     count = thisRt.RequestCount();	
+   	OstTrace1( TRACE_NORMAL, DUP3_RMODEMATCONTROLLER_RMODEMATCONTROLLER, "RModemAtController::~RModemAtController - <RequestCount;count=%d", count );
    	C_TRACE((_L("<RequestCount %d "), count));
 #endif 	
     }
@@ -65,11 +74,13 @@
     TDesC8& aClientName,
     MAtControllerObserver* aObserver )
     {
+    OstTraceExt3( TRACE_NORMAL, RMODEMATCONTROLLER_CONNECT, "RModemAtController::Connect;aInterface=%d;aClientName=%s;aObserver=%p", aInterface, aClientName, aObserver );
     C_TRACE((_L("RModemAtController::Connect( aInterface: %d, aObserver: 0x%x)"), aInterface, aObserver));
     DUMP_MESSAGE( aClientName);
 #ifdef _DEBUG
     RThread thisRt;
     TInt count = thisRt.RequestCount();	
+   	OstTrace1( TRACE_NORMAL, DUP1_RMODEMATCONTROLLER_CONNECT, "RModemAtController::Connect - >RequestCount;count=%d", count );
    	C_TRACE((_L(">RequestCount %d "), count));
 #endif	
     TVersion version( KServerMajorVersionNumber,
@@ -81,6 +92,7 @@
     TInt retVal = CreateSession( KATExtSrvName, version);
     if ( retVal != KErrNone && retVal != KErrAlreadyExists )
         {
+   	    OstTrace0( TRACE_NORMAL, DUP2_RMODEMATCONTROLLER_CONNECT, "RModemAtController::Connect - StartServer" );
    	    C_TRACE((_L("RModemAtController::Connect StartServer")));
         retVal = StartServer();
         if ( retVal == KErrNone || retVal==KErrAlreadyExists )
@@ -89,6 +101,7 @@
             }
         }
 
+    OstTrace1( TRACE_NORMAL, DUP3_RMODEMATCONTROLLER_CONNECT, "RModemAtController::Connect - CreateSession returned;retVal=%d", retVal );
     C_TRACE((_L("RModemAtController::Connect CreateSession returned: %d "), retVal));
 
     if ( retVal == KErrNone || retVal == KErrAlreadyExists )
@@ -102,25 +115,30 @@
             GetCommandMode();
             }
 
+        OstTrace1( TRACE_NORMAL, DUP4_RMODEMATCONTROLLER_CONNECT, "RModemAtController::Connect - EATExtSetExtensionInterface returned:;retVal=%d", retVal );
         C_TRACE((_L("RModemAtController::Connect EATExtSetExtensionInterface returned: %d "), retVal));
         if( retVal == KErrAlreadyExists )
             {
+            OstTrace0( TRACE_NORMAL, DUP5_RMODEMATCONTROLLER_CONNECT, "RModemAtController::Connect - Modem is already connected, session is ok" );
             C_TRACE( _L("RModemAtController::Connect Modem is already connected, session is ok") );
             retVal = KErrNone;
             }
         if( retVal == KErrServerTerminated)
             {
+            OstTrace0( TRACE_NORMAL, DUP6_RMODEMATCONTROLLER_CONNECT, "RModemAtController::Connect - Connection failed, server has terminated" );
             C_TRACE( _L("RModemAtController::Connect Connection failed, server has terminated") );
             }
         }
 
     if ( retVal != KErrNone )
         {
+        OstTrace0( TRACE_NORMAL, DUP7_RMODEMATCONTROLLER_CONNECT, "RModemAtController::Connect - Closing session" );
         C_TRACE( _L("RModemAtController::Connect Closing session") );
         Close();
         }
 #ifdef _DEBUG
     count = thisRt.RequestCount();	
+   	OstTrace1( TRACE_NORMAL, DUP8_RMODEMATCONTROLLER_CONNECT, "RModemAtController::Connect - <RequestCount;count=%d", count );
    	C_TRACE((_L("<RequestCount %d "), count));
 #endif
     return retVal;
@@ -128,30 +146,35 @@
 
 EXPORT_C TInt RModemAtController::Disconnect()
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_DISCONNECT, "RModemAtController::Disconnect" );
     C_TRACE((_L("RModemAtController::Disconnect()")));
 
 #ifdef _DEBUG
     RThread thisRt;
     TInt count = thisRt.RequestCount();	
+   	OstTrace1( TRACE_NORMAL, DUP1_RMODEMATCONTROLLER_DISCONNECT, "RModemAtController::Disconnect - >RequestCount;count=%d", count );
    	C_TRACE((_L(">RequestCount %d "), count));
 #endif
 
+	OstTrace1( TRACE_NORMAL, DUP2_RMODEMATCONTROLLER_DISCONNECT, "RModemAtController::Disconnect - session base handle:;Handle()=%d", Handle() );
 	C_TRACE((_L("RModemAtController session base handle: %d "), Handle()));
-    if( Handle() )
-	    {
-        C_TRACE((_L("RModemAtController::Disconnect() remove pipe")));
-        SendReceiveRemovePipe();
-        }
 
     ReceiveSignalIndCancel( );
     GetCommandModeCancel();
     ReceiveUnsolicitedResultCancel();
     HandleATCommandCancel();
 
-    Close();
+    if( Handle() )
+        {
+        OstTrace0( TRACE_NORMAL, DUP3_RMODEMATCONTROLLER_DISCONNECT, "RModemAtController::Disconnect - remove pipe" );
+        C_TRACE((_L("RModemAtController::Disconnect() remove pipe")));
+        SendReceiveRemovePipe();
+        Close();
+        }
 
 #ifdef _DEBUG
     count = thisRt.RequestCount();	
+   	OstTrace1( TRACE_NORMAL, DUP4_RMODEMATCONTROLLER_DISCONNECT, "RModemAtController::Disconnect - <RequestCount;count=%d", count );
    	C_TRACE((_L("<RequestCount %d "), count));
 #endif
 
@@ -160,6 +183,7 @@
 
 EXPORT_C TInt RModemAtController::HandleATCommand(const TDesC8& aCommand, TDes8& aResponse ) 
     {
+    OstTraceExt2( TRACE_NORMAL, RMODEMATCONTROLLER_HANDLEATCOMMAND, "RModemAtController::HandleATCommand;aCommand=%s;aResponse=%s", aCommand, aResponse );
     C_TRACE((_L("RModemAtController::HandleATCommand") ));
     DUMP_MESSAGE( aCommand);
     if( iAtRequest )
@@ -175,9 +199,11 @@
 
 EXPORT_C TInt RModemAtController::HandleATCommandCancel()
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_HANDLEATCOMMANDCANCEL, "RModemAtController::HandleATCommandCancel" );
     C_TRACE((_L("RModemAtController::HandleATCommandCancel")));
     if( iAtRequest )
         {
+        OstTrace0( TRACE_NORMAL, DUP1_RMODEMATCONTROLLER_HANDLEATCOMMANDCANCEL, "RModemAtController::HandleATCommandCancel - Cancelling..." );
         C_TRACE((_L("Cancelling...") ));
         iAtRequest->Cancel();
         delete iAtRequest;
@@ -188,6 +214,7 @@
 
 EXPORT_C TInt RModemAtController::ReceiveSignalInd()
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_RECEIVESIGNALIND, "RModemAtController::ReceiveSignalInd" );
     C_TRACE((_L("RModemAtController::ReceiveSignalInd")));
     if( iSignalIndReq ) 
         {
@@ -202,9 +229,11 @@
 
 EXPORT_C TInt RModemAtController::ReceiveSignalIndCancel( ) 
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_RECEIVESIGNALINDCANCEL, "RModemAtController::ReceiveSignalIndCancel" );
     C_TRACE((_L("RModemAtController::ReceiveSignalIndCancel")));
     if( iSignalIndReq ) 
         {
+        OstTrace0( TRACE_NORMAL, DUP1_RMODEMATCONTROLLER_RECEIVESIGNALINDCANCEL, "RModemAtController::ReceiveSignalIndCancel - Cancelling..." );
         C_TRACE((_L("Canceling...") ));
         iSignalIndReq->Cancel();
         delete iSignalIndReq;
@@ -215,11 +244,13 @@
 
 EXPORT_C TInt RModemAtController::ReceiveUnsolicitedResult( TDes8& aResult )
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_RECEIVEUNSOLICITEDRESULT, "RModemAtController::ReceiveUnsolicitedResult" );
     C_TRACE((_L("RModemAtController::ReceiveUnsolicitedResult")));
     if( iUnsolicitedDataReq ) 
         {
-        TRACE_ASSERT_ALWAYS;
-        return KErrAlreadyExists;
+        OstTrace0( TRACE_NORMAL, DUP1_RMODEMATCONTROLLER_RECEIVEUNSOLICITEDRESULT, "RModemAtController::ReceiveUnsolicitedResult - cancel previous request" );
+        C_TRACE((_L("RModemAtController::ReceiveUnsolicitedResult (cancel previous request)")));
+        ReceiveUnsolicitedResultCancel();
         }
     TRAPD( err, iUnsolicitedDataReq = new (ELeave) CUnsolicitedDataReq( this, aResult ) ); 
     ASSERT_PANIC_ALWAYS( err == KErrNone );
@@ -228,9 +259,11 @@
 
 EXPORT_C  TInt RModemAtController::ReceiveUnsolicitedResultCancel( ) 
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_RECEIVEUNSOLICITEDRESULTCANCEL, "RModemAtController::ReceiveUnsolicitedResultCancel" );
     C_TRACE((_L("RModemAtController::ReceiveUnsolicitedResultCancel")));
     if( iUnsolicitedDataReq ) 
         {
+        OstTrace0( TRACE_NORMAL, DUP1_RMODEMATCONTROLLER_RECEIVEUNSOLICITEDRESULTCANCEL, "RModemAtController::ReceiveUnsolicitedResultCancel - Canceling..." );
         C_TRACE((_L("Canceling...")));
         iUnsolicitedDataReq->Cancel();
         delete iUnsolicitedDataReq;
@@ -241,6 +274,7 @@
 
 EXPORT_C TInt RModemAtController::GetNvramStatus(TDesC8& aCommand, TDes8& aResponse ) 
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_GETNVRAMSTATUS, "RModemAtController::GetNvramStatus" );
     C_TRACE((_L("RModemAtController::GetNvramStatus")));
     aResponse = _L8(""); //ensure, that response buffer is empty
     TInt status = SendReceive( EModemATGetNvramStatus, TIpcArgs(&aCommand, &aResponse));
@@ -250,6 +284,7 @@
 
 EXPORT_C TInt RModemAtController::GetCommandMode() 
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_GETCOMMANDMODE, "RModemAtController::GetCommandMode" );
     C_TRACE((_L("RModemAtController::GetCommandMode")));
     
     if( iCommandModeReq )
@@ -264,9 +299,11 @@
 
 EXPORT_C TInt RModemAtController::GetCommandModeCancel()
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_GETCOMMANDMODECANCEL, "RModemAtController::GetCommandModeCancel" );
     C_TRACE((_L("RModemAtController::GetCommandMode")));
     if( iCommandModeReq )
         {
+        OstTrace0( TRACE_NORMAL, DUP1_RMODEMATCONTROLLER_GETCOMMANDMODECANCEL, "RModemAtController::GetCommandModeCancel - Canceling..." );
         C_TRACE((_L("Canceling...")));
         iCommandModeReq->Cancel();
         delete iCommandModeReq;
@@ -277,6 +314,7 @@
 
 EXPORT_C TInt RModemAtController::RemovePipe()
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_REMOVEPIPE, "RModemAtController::RemovePipe" );
     C_TRACE((_L("RModemAtController::RemovePipe")));
     SendReceiveRemovePipe();
     return KErrNone;
@@ -288,18 +326,21 @@
     TDes8& aResponse, 
     TRequestStatus& aStatus )
     {
+    OstTraceExt2( TRACE_NORMAL, RMODEMATCONTROLLER_SENDRECEIVEATCOMMAND, "RModemAtController::SendReceiveATCommand;aCommand.Length()=%d;aResponse.Length()=%d", aCommand.Length(), aResponse.Length() );
     C_TRACE((_L("RModemAtController::SendReceiveATCommand acommand len=%d aresponse len=%d"), aCommand.Length(), aResponse.Length() ));
     SendReceive( EModemATHandleCommand, TIpcArgs(&aCommand, &aResponse), aStatus);
     }
 
 void  RModemAtController::SendReceiveUnsolicitedResult( TDes8& aResponse,TRequestStatus& aStatus) 
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_SENDRECEIVEUNSOLICITEDRESULT, "RModemAtController::SendReceiveUnsolicitedResult" );
     C_TRACE((_L("RModemAtController::SendReceiveUnsolicitedResult")));
     SendReceive( EReceiveUnsolicitedResult, TIpcArgs(&aResponse), aStatus);
     }
 
 void RModemAtController::SendReceiveUnsolicitedResulCancel() 
     {        
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_SENDRECEIVEUNSOLICITEDRESULCANCEL, "RModemAtController::SendReceiveUnsolicitedResulCancel" );
     C_TRACE((_L("RModemAtController::SendReceiveUnsolicitedResulCancel")));
     TInt i = 0;
     SendReceive( EReceiveUnsolicitedResultCancel, TIpcArgs(i) );
@@ -307,6 +348,7 @@
 
 void RModemAtController::SendReceiveSignalInd(TRequestStatus& aStatus) 
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_SENDRECEIVESIGNALIND, "RModemAtController::SendReceiveSignalInd" );
     C_TRACE((_L("RModemAtController::SendReceiveSignalInd()")));
     TInt value = 0;
     SendReceive( EModemATReceiveSignalInd, TIpcArgs(&value),aStatus);
@@ -314,6 +356,7 @@
 
 void RModemAtController::SendReceiveAtCommandCancel() 
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_SENDRECEIVEATCOMMANDCANCEL, "RModemAtController::SendReceiveAtCommandCancel" );
     C_TRACE((_L("RModemAtController::SendReceiveAtCommandCancel()")));
     TInt i=0;
     SendReceive( EModemATHandleCommandCancel,TIpcArgs(i));
@@ -321,12 +364,14 @@
 
 void RModemAtController::SignalIndReceived( TInt aErr ) 
     {
+    OstTrace1( TRACE_NORMAL, RMODEMATCONTROLLER_SIGNALINDRECEIVED, "RModemAtController::SignalIndReceived;aErr=%d", aErr );
     C_TRACE((_L("RModemAtController::SignalIndReceived(%d)"), aErr));
     iObserver->HandleSignalIndication( aErr );
     }
 
 void RModemAtController::SendReceiveSignalIndCancel() 
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_SENDRECEIVESIGNALINDCANCEL, "RModemAtController::SendReceiveSignalIndCancel" );
     C_TRACE((_L("RModemAtController::SendReceiveSignalIndCancel()")));
     TInt value = 0;
     SendReceive( EModemATReceiveSignalIndCancel, TIpcArgs(&value));
@@ -334,6 +379,7 @@
 
 void RModemAtController::ATCommandResponseReceived( TInt aErr ) 
     {
+    OstTrace1( TRACE_NORMAL, RMODEMATCONTROLLER_ATCOMMANDRESPONSERECEIVED, "RModemAtController::ATCommandResponseReceived;aErr=%d", aErr );
     C_TRACE((_L("RModemAtController::ATCommandResponseReceived(%d)"), aErr));
     iObserver->HandleATCommandCompleted(aErr);
     iAtRequest = NULL;
@@ -341,18 +387,21 @@
 
 void RModemAtController::UnsolicitedResultReceived( TInt aErr ) 
     {
+    OstTrace1( TRACE_NORMAL, RMODEMATCONTROLLER_UNSOLICITEDRESULTRECEIVED, "RModemAtController::UnsolicitedResultReceived;aErr=%d", aErr );
     C_TRACE((_L("RModemAtController::UnsolicitedResultReceived(%d)"), aErr));
     iObserver->HandleUnsolicitedResultReceived( aErr );
     }
 
 void RModemAtController::SendReceiveCommandMode(TDes8& aResponse, TRequestStatus& aStatus) 
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_SENDRECEIVECOMMANDMODE, "RModemAtController::SendReceiveCommandMode" );
     C_TRACE((_L("RModemAtController::SendReceiveCommandMode()")));
     SendReceive( EModemATCommandMode, TIpcArgs(&aResponse), aStatus);
     }
 
 void RModemAtController::SendReceiveCommandModeCancel() 
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_SENDRECEIVECOMMANDMODECANCEL, "RModemAtController::SendReceiveCommandModeCancel" );
     C_TRACE((_L("RModemAtController::SendReceiveCommandModeCancel()")));
     TInt value = 0;
     SendReceive( EModemATCommandModeCancel, TIpcArgs(&value));
@@ -360,12 +409,14 @@
 
 void RModemAtController::CommandModeChanged( TInt aErr, TCommandMode aMode ) 
     {
+    OstTraceExt2( TRACE_NORMAL, RMODEMATCONTROLLER_COMMANDMODECHANGED, "RModemAtController::CommandModeChanged;aErr=%d;aMode=%d", aErr, aMode );
     C_TRACE((_L("RModemAtController::CommandModeChanged(%d, %d)"), aErr, aMode));
     iObserver->HandleCommandModeChanged( aErr, aMode );
     }
 
 TInt StartServer()
     {
+    OstTrace0( TRACE_NORMAL, _STARTSERVER, "::StartServer" );
     C_TRACE((_L("RModemAtController::StartServer()")));
     const TUidType serverUid( KNullUid, KNullUid, KATExtSrvUid3 );
     RProcess server;
@@ -386,6 +437,7 @@
         server.Resume();
         }
     User::WaitForRequest( status );
+    OstTrace1( TRACE_NORMAL, DUP1__STARTSERVER, "::StartServer - Server started;status.Int()=%d", status.Int() );
     C_TRACE((_L("Server started, code %d"), status.Int()));
     retTemp = ( server.ExitType() == EExitPanic ) ? KErrGeneral : status.Int();
     server.Close();
@@ -394,6 +446,7 @@
 
 void RModemAtController::SendReceiveRemovePipe()
     {
+    OstTrace0( TRACE_NORMAL, RMODEMATCONTROLLER_SENDRECEIVEREMOVEPIPE, "RModemAtController::SendReceiveRemovePipe" );
     C_TRACE((_L(">>RModemAtController::SendReceiveRemovePipe()")));
     TInt value = 0;
     TRequestStatus removePipeStatus = KRequestPending;