telephonyserverplugins/simatktsy/src/CSatNotifyLocalInfo.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".
    18 //
    18 //
    19 
    19 
    20 
    20 
    21 
    21 
    22 //INCLUDES
    22 //INCLUDES
       
    23 
       
    24 #include "OstTraceDefinitions.h"
       
    25 #ifdef OST_TRACE_COMPILER_IN_USE
       
    26 #include "CSatNotifyLocalInfoTraces.h"
       
    27 #endif
       
    28 
    23 #include <satcs.h>                  // Etel SAT IPC definitions
    29 #include <satcs.h>                  // Etel SAT IPC definitions
    24 #include "CSatTsy.h"                // Tsy class header
    30 #include "CSatTsy.h"                // Tsy class header
    25 #include "CSatNotifyLocalInfo.h"    // Class header
    31 #include "CSatNotifyLocalInfo.h"    // Class header
    26 #include "CBerTlv.h"                // Ber Tlv data handling
    32 #include "CBerTlv.h"                // Ber Tlv data handling
    27 #include "TTlv.h"					// TTlv class
    33 #include "TTlv.h"					// TTlv class
    28 #include "CSatDataPackage.h"        // Parameter packing 
    34 #include "CSatDataPackage.h"        // Parameter packing 
    29 #include "TfLogger.h"               // For TFLOGSTRING
       
    30 #include "TSatUtility.h"            // Utilities
    35 #include "TSatUtility.h"            // Utilities
    31 #include "CSatTsyReqHandleStore.h"  // Request handle class
    36 #include "CSatTsyReqHandleStore.h"  // Request handle class
    32 #include "cmmmessagemanagerbase.h"  // Message manager class for forwarding req.
    37 #include "cmmmessagemanagerbase.h"  // Message manager class for forwarding req.
    33 #include "MSatTsy_IPCDefs.h"        // Sat Tsy internal request types
    38 #include "MSatTsy_IPCDefs.h"        // Sat Tsy internal request types
    34 
    39 
    40 CSatNotifyLocalInfo* CSatNotifyLocalInfo::NewL
    45 CSatNotifyLocalInfo* CSatNotifyLocalInfo::NewL
    41         ( 
    46         ( 
    42         CSatNotificationsTsy* aNotificationsTsy 
    47         CSatNotificationsTsy* aNotificationsTsy 
    43         )
    48         )
    44     {
    49     {
    45     TFLOGSTRING("CSAT: CSatNotifyLocalInfo::NewL");
    50     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_NEWL_1, "CSAT: CSatNotifyLocalInfo::NewL");
    46    	CSatNotifyLocalInfo* const satNotifyLocalInfo = 
    51    	CSatNotifyLocalInfo* const satNotifyLocalInfo = 
    47         new ( ELeave ) CSatNotifyLocalInfo( aNotificationsTsy );
    52         new ( ELeave ) CSatNotifyLocalInfo( aNotificationsTsy );
    48     CleanupStack::PushL( satNotifyLocalInfo );
    53     CleanupStack::PushL( satNotifyLocalInfo );
    49     satNotifyLocalInfo->ConstructL();
    54     satNotifyLocalInfo->ConstructL();
    50     CleanupStack::Pop( satNotifyLocalInfo );
    55     CleanupStack::Pop( satNotifyLocalInfo );
    51     TFLOGSTRING("CSAT: CSatNotifyLocalInfo::NewL, end of method");
    56     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_NEWL_2, "CSAT: CSatNotifyLocalInfo::NewL, end of method");
    52     return satNotifyLocalInfo;
    57     return satNotifyLocalInfo;
    53     }
    58     }
    54 
    59 
    55 // -----------------------------------------------------------------------------
    60 // -----------------------------------------------------------------------------
    56 // CSatNotifyLocalInfo::~CSatNotifyLocalInfo
    61 // CSatNotifyLocalInfo::~CSatNotifyLocalInfo
    60 CSatNotifyLocalInfo::~CSatNotifyLocalInfo
    65 CSatNotifyLocalInfo::~CSatNotifyLocalInfo
    61         ( 
    66         ( 
    62 		// None
    67 		// None
    63         )
    68         )
    64     {
    69     {
    65     TFLOGSTRING("CSAT: CSatNotifyLocalInfo::~CSatNotifyLocalInfo");
    70     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_DTOR_1, "CSAT: CSatNotifyLocalInfo::~CSatNotifyLocalInfo");
    66     }
    71     }
    67     
    72     
    68 // -----------------------------------------------------------------------------
    73 // -----------------------------------------------------------------------------
    69 // CSatNotifyLocalInfo::CSatNotifyLocalInfo
    74 // CSatNotifyLocalInfo::CSatNotifyLocalInfo
    70 // Default C++ constructor
    75 // Default C++ constructor
    91 void CSatNotifyLocalInfo::ConstructL
    96 void CSatNotifyLocalInfo::ConstructL
    92         (
    97         (
    93         // None
    98         // None
    94         )
    99         )
    95     {
   100     {
    96     TFLOGSTRING("CSAT: CSatNotifyLocalInfo::ConstructL");
   101     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_CONSTRUCTL_1, "CSAT: CSatNotifyLocalInfo::ConstructL");
    97     // IMEI of the ME
   102     // IMEI of the ME
    98     iIMEI.Zero();
   103     iIMEI.Zero();
    99     // Clear NMR (Network Measurement result)
   104     // Clear NMR (Network Measurement result)
   100     iNMR.Zero();
   105     iNMR.Zero();
   101     // Clear BCCH channel list
   106     // Clear BCCH channel list
   116         (
   121         (
   117         const TTsyReqHandle aTsyReqHandle,
   122         const TTsyReqHandle aTsyReqHandle,
   118         const TDataPackage& aPackage    
   123         const TDataPackage& aPackage    
   119         )
   124         )
   120     {
   125     {
   121     TFLOGSTRING("CSAT: CSatNotifyLocalInfo::Notify");
   126     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_NOTIFY_1, "CSAT: CSatNotifyLocalInfo::Notify");
   122     // Save data pointer to client side for completion
   127     // Save data pointer to client side for completion
   123     iLocalInfoV3Pckg = reinterpret_cast<RSat::TLocalInfoV3Pckg*>( 
   128     iLocalInfoV3Pckg = reinterpret_cast<RSat::TLocalInfoV3Pckg*>( 
   124         aPackage.Des1n() );
   129         aPackage.Des1n() );
   125     // Save the request handle
   130     // Save the request handle
   126     iNotificationsTsy->iSatTsy->SaveReqHandle( aTsyReqHandle, 
   131     iNotificationsTsy->iSatTsy->SaveReqHandle( aTsyReqHandle, 
   139 TInt CSatNotifyLocalInfo::CancelNotification
   144 TInt CSatNotifyLocalInfo::CancelNotification
   140         (
   145         (
   141         const TTsyReqHandle aTsyReqHandle
   146         const TTsyReqHandle aTsyReqHandle
   142         )
   147         )
   143     {
   148     {
   144     TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CancelNotification"); 
   149     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_CANCELNOTIFICATION_1, "CSAT: CSatNotifyLocalInfo::CancelNotification");
   145     // Reset the request handle
   150     // Reset the request handle
   146     iNotificationsTsy->iSatReqHandleStore->ResetTsyReqHandle( 
   151     iNotificationsTsy->iSatReqHandleStore->ResetTsyReqHandle( 
   147         CSatTsy::ESatNotifyLocalInfoPCmdReqType );
   152         CSatTsy::ESatNotifyLocalInfoPCmdReqType );
   148     // Reset the data pointer
   153     // Reset the data pointer
   149     iLocalInfoV3Pckg = NULL;
   154     iLocalInfoV3Pckg = NULL;
   161         (
   166         (
   162         CSatDataPackage* aDataPackage,   
   167         CSatDataPackage* aDataPackage,   
   163         TInt aErrorCode                 
   168         TInt aErrorCode                 
   164         )
   169         )
   165     {
   170     {
   166     TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteNotifyL");
   171     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETENOTIFYL_1, "CSAT: CSatNotifyLocalInfo::CompleteNotifyL");
   167 
   172 
   168     TInt ret( KErrNone );
   173     TInt ret( KErrNone );
   169     TPtrC8* data;
   174     TPtrC8* data;
   170 	
   175 	
   171     // Unpack parameters
   176     // Unpack parameters
   190     switch ( iNotificationsTsy->iTerminalRespData.
   195     switch ( iNotificationsTsy->iTerminalRespData.
   191     	iCommandDetails[KCommandQualifier] )
   196     	iCommandDetails[KCommandQualifier] )
   192         {
   197         {
   193         case RSat::KProvideLocalInfo:
   198         case RSat::KProvideLocalInfo:
   194             {
   199             {
   195             TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteNotifyL\
   200             OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETENOTIFYL_2, "CSAT: CSatNotifyLocalInfo::CompleteNotifyL request: LOCAL INFO");
   196             	request: LOCAL INFO");
       
   197             iLocalInfoIsOngoing = ETrue;
   201             iLocalInfoIsOngoing = ETrue;
   198             // Get Local Info
   202             // Get Local Info
   199             dataPackage.PackData( &iLocalInfoIsOngoing );
   203             dataPackage.PackData( &iLocalInfoIsOngoing );
   200             iNotificationsTsy->iSatTsy->MessageManager()->
   204             iNotificationsTsy->iSatTsy->MessageManager()->
   201                 HandleRequestL( ESatTsyProvideLocalInfo, &dataPackage );
   205                 HandleRequestL( ESatTsyProvideLocalInfo, &dataPackage );
   202             break;
   206             break;
   203             }
   207             }
   204         case RSat::KProvideLocalInfoImei:
   208         case RSat::KProvideLocalInfoImei:
   205             {
   209             {
   206             TFLOGSTRING("CSAT: CSatNotifyLocalInfo:: CompleteNotifyL, \
   210             OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETENOTIFYL_3, "CSAT: CSatNotifyLocalInfo:: CompleteNotifyL, request: IMEI");
   207             	request: IMEI");
       
   208             // Check if IMEI is received
   211             // Check if IMEI is received
   209             if ( iIMEI.Length() )
   212             if ( iIMEI.Length() )
   210                 {
   213                 {
   211                 iLocalInfoRspV3.iGeneralResult = RSat::KSuccess;
   214                 iLocalInfoRspV3.iGeneralResult = RSat::KSuccess;
   212                 }
   215                 }
   219                 }
   222                 }
   220             break;
   223             break;
   221             }
   224             }
   222         case RSat::KProvideLocalInformationNmr:
   225         case RSat::KProvideLocalInformationNmr:
   223             {
   226             {
   224             TFLOGSTRING("CSAT: CSatNotifyLocalInfo:: request: NMR");
   227             OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETENOTIFYL_4, "CSAT: CSatNotifyLocalInfo:: request: NMR");
   225             iLocalInfoIsOngoing = ETrue;
   228             iLocalInfoIsOngoing = ETrue;
   226             // Request Network Measurement Results
   229             // Request Network Measurement Results
   227             dataPackage.PackData( &iLocalInfoIsOngoing );
   230             dataPackage.PackData( &iLocalInfoIsOngoing );
   228             iNotificationsTsy->iSatTsy->MessageManager()->
   231             iNotificationsTsy->iSatTsy->MessageManager()->
   229                 HandleRequestL( ESatTsyLocalInformationNmr, &dataPackage );
   232                 HandleRequestL( ESatTsyLocalInformationNmr, &dataPackage );
   230             break;
   233             break;
   231             }
   234             }
   232         case RSat::KProvideLocalInfoDateTimeTimeZone:
   235         case RSat::KProvideLocalInfoDateTimeTimeZone:
   233             {
   236             {
   234             TFLOGSTRING("CSAT: CSatNotifyLocalInfo:: request: \
   237             OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETENOTIFYL_5, "CSAT: CSatNotifyLocalInfo:: request: DATE/TIME/TIMEZONE");
   235             	DATE/TIME/TIMEZONE");
       
   236             SetDateTimeTimeZone();	
   238             SetDateTimeTimeZone();	
   237             break;
   239             break;
   238             }
   240             }
   239         case RSat::KProvideLocalInfoLanguage:
   241         case RSat::KProvideLocalInfoLanguage:
   240             {
   242             {
   241             TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteNotifyL request, \
   243             OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETENOTIFYL_6, "CSAT: CSatNotifyLocalInfo::CompleteNotifyL request, Language");
   242                 Language");
       
   243 		    // Reset req handle. Returns the deleted req handle
   244 		    // Reset req handle. Returns the deleted req handle
   244 		    TTsyReqHandle reqHandle = 
   245 		    TTsyReqHandle reqHandle = 
   245 		        iNotificationsTsy->iSatReqHandleStore->ResetTsyReqHandle( 
   246 		        iNotificationsTsy->iSatReqHandleStore->ResetTsyReqHandle( 
   246 		        CSatTsy::ESatNotifyLocalInfoPCmdReqType );   
   247 		        CSatTsy::ESatNotifyLocalInfoPCmdReqType );   
   247 		                 
   248 		                 
   271                 iNotificationsTsy->iSatTsy->ReqCompleted( 
   272                 iNotificationsTsy->iSatTsy->ReqCompleted( 
   272                     reqHandle, aErrorCode );
   273                     reqHandle, aErrorCode );
   273                 }
   274                 }
   274             else
   275             else
   275                 {
   276                 {
   276                 TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteNotifyL\
   277                 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETENOTIFYL_7, "CSAT: CSatNotifyLocalInfo::CompleteNotifyL No reqHandle");
   277                 	 No reqHandle");
       
   278                 iLocalInfoRspV3.iGeneralResult = 
   278                 iLocalInfoRspV3.iGeneralResult = 
   279                     RSat::KMeUnableToProcessCmd;
   279                     RSat::KMeUnableToProcessCmd;
   280                 iLocalInfoRspV3.iAdditionalInfo.Append( 
   280                 iLocalInfoRspV3.iAdditionalInfo.Append( 
   281                     RSat::KNoSpecificMeProblem );
   281                     RSat::KNoSpecificMeProblem );
   282                 TerminalResponseL( NULL );
   282                 TerminalResponseL( NULL );
   283                 }      
   283                 }      
   284             break;
   284             break;
   285             }
   285             }
   286         case RSat::KProvideLocalInfoTimingAdv:
   286         case RSat::KProvideLocalInfoTimingAdv:
   287             {
   287             {
   288             TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteNotifyL\
   288             OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETENOTIFYL_8, "CSAT: CSatNotifyLocalInfo::CompleteNotifyL request: TimingAdvance");
   289             	 request: TimingAdvance");       
       
   290             iLocalInfoIsOngoing = ETrue;
   289             iLocalInfoIsOngoing = ETrue;
   291             dataPackage.PackData( &iLocalInfoIsOngoing );
   290             dataPackage.PackData( &iLocalInfoIsOngoing );
   292             // Request service
   291             // Request service
   293             iNotificationsTsy->iSatTsy->MessageManager()->
   292             iNotificationsTsy->iSatTsy->MessageManager()->
   294                 HandleRequestL( ESatTsyTimingAdvance, &dataPackage );
   293                 HandleRequestL( ESatTsyTimingAdvance, &dataPackage );
   295             break;
   294             break;
   296             }
   295             }
   297         case RSat::KProvideLocalInfoAccTech:
   296         case RSat::KProvideLocalInfoAccTech:
   298         	{
   297         	{
   299             TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteNotifyL\
   298             OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETENOTIFYL_9, "CSAT: CSatNotifyLocalInfo::CompleteNotifyL request: Access Technology");
   300             	request: Access Technology");
       
   301             iLocalInfoIsOngoing = ETrue;
   299             iLocalInfoIsOngoing = ETrue;
   302 			dataPackage.PackData( &iLocalInfoIsOngoing );
   300 			dataPackage.PackData( &iLocalInfoIsOngoing );
   303             // Request Access technology
   301             // Request Access technology
   304             iNotificationsTsy->iSatTsy->MessageManager()->
   302             iNotificationsTsy->iSatTsy->MessageManager()->
   305                 HandleRequestL( ESatTsyAccTech, &dataPackage );                             
   303                 HandleRequestL( ESatTsyAccTech, &dataPackage );                             
   343 TInt CSatNotifyLocalInfo::TerminalResponseL
   341 TInt CSatNotifyLocalInfo::TerminalResponseL
   344         ( 
   342         ( 
   345         TDes8* aRsp
   343         TDes8* aRsp
   346         )
   344         )
   347     {
   345     {
   348     TFLOGSTRING("CSAT: CSatNotifyLocalInfo::TerminalResponseL");
   346     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_TERMINALRESPONSEL_1, "CSAT: CSatNotifyLocalInfo::TerminalResponseL");
   349 
   347 
   350     TInt ret( KErrNone );
   348     TInt ret( KErrNone );
   351     TBuf<RSat::KAdditionalInfoMaxSize> additionalInfo;    
   349     TBuf<RSat::KAdditionalInfoMaxSize> additionalInfo;    
   352     if ( aRsp )
   350     if ( aRsp )
   353         {
   351         {
   360         if ( ( RSat::KSuccess != rspV1.iGeneralResult ) 
   358         if ( ( RSat::KSuccess != rspV1.iGeneralResult ) 
   361             && ( RSat::KSuccessLimitedService != rspV1.iGeneralResult )
   359             && ( RSat::KSuccessLimitedService != rspV1.iGeneralResult )
   362             && ( RSat::KMeUnableToProcessCmd != rspV1.iGeneralResult )
   360             && ( RSat::KMeUnableToProcessCmd != rspV1.iGeneralResult )
   363             && ( RSat::KCmdBeyondMeCapabilities != rspV1.iGeneralResult ) )
   361             && ( RSat::KCmdBeyondMeCapabilities != rspV1.iGeneralResult ) )
   364             {
   362             {
   365             TFLOGSTRING("CSAT: CSatNotifyLocalInfo::TerminalResponseL,\
   363             OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_TERMINALRESPONSEL_2, "CSAT: CSatNotifyLocalInfo::TerminalResponseL, Invalid General Result");
   366                 Invalid General Result");
       
   367             // Invalid general result
   364             // Invalid general result
   368             ret = KErrCorrupt;
   365             ret = KErrCorrupt;
   369             }
   366             }
   370 		else
   367 		else
   371 			{
   368 			{
   375 
   372 
   376         // If there is ME (Mobile Entity) error, additional info is needed
   373         // If there is ME (Mobile Entity) error, additional info is needed
   377         if ( ( RSat::KMeProblem == rspV1.iInfoType ) &&
   374         if ( ( RSat::KMeProblem == rspV1.iInfoType ) &&
   378              ( NULL == rspV1.iAdditionalInfo.Length() ) )
   375              ( NULL == rspV1.iAdditionalInfo.Length() ) )
   379             {   
   376             {   
   380             TFLOGSTRING("CSAT: CSatNotifyLocalInfo::TerminalResponseL,\
   377             OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_TERMINALRESPONSEL_3, "CSAT: CSatNotifyLocalInfo::TerminalResponseL, Invalid Additional Info");
   381                 Invalid Additional Info");
       
   382             // Invalid additional info field
   378             // Invalid additional info field
   383             ret = KErrCorrupt;
   379             ret = KErrCorrupt;
   384             }
   380             }
   385 		else
   381 		else
   386 			{
   382 			{
   413         TUint8 aPCmdNumber,         
   409         TUint8 aPCmdNumber,         
   414         TUint8 aGeneralResult,     
   410         TUint8 aGeneralResult,     
   415         TDesC16& aAdditionalInfo		
   411         TDesC16& aAdditionalInfo		
   416 		)
   412 		)
   417     {
   413     {
   418     TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CreateTerminalRespL");
   414     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_CREATETERMINALRESPL_1, "CSAT: CSatNotifyLocalInfo::CreateTerminalRespL");
   419     // Create and append response data
   415     // Create and append response data
   420     TTlv tlvSpecificData;
   416     TTlv tlvSpecificData;
   421     // Create General Result TLV 
   417     // Create General Result TLV 
   422     tlvSpecificData.AddTag( KTlvResultTag ); 
   418     tlvSpecificData.AddTag( KTlvResultTag ); 
   423     // General result
   419     // General result
   504                     }
   500                     }
   505                 break; 
   501                 break; 
   506                 }
   502                 }
   507             case RSat::KProvideLocalInfoTimingAdv:
   503             case RSat::KProvideLocalInfoTimingAdv:
   508                 {
   504                 {
   509                 TFLOGSTRING("CSAT: CSatNotifyLocalInfo::\
   505                 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_CREATETERMINALRESPL_2, "CSAT: CSatNotifyLocalInfo::CreateTerminalRespL, TimingAdvance");
   510                  	CreateTerminalRespL, TimingAdvance");
       
   511                 // Timing advance result
   506                 // Timing advance result
   512                 tlvSpecificData.AddTag( KTlvTimingAdvanceTag );
   507                 tlvSpecificData.AddTag( KTlvTimingAdvanceTag );
   513                 tlvSpecificData.AddByte( iMEStatus );
   508                 tlvSpecificData.AddByte( iMEStatus );
   514                 tlvSpecificData.AddByte( iTimingAdvance );
   509                 tlvSpecificData.AddByte( iTimingAdvance );
   515                 break;
   510                 break;
   516                 }
   511                 }
   517             case RSat::KProvideLocalInfoLanguage:
   512             case RSat::KProvideLocalInfoLanguage:
   518                 {
   513                 {
   519                 TFLOGSTRING("CSAT: CSatNotifyLocalInfo::\
   514                 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_CREATETERMINALRESPL_3, "CSAT: CSatNotifyLocalInfo::CreateTerminalRespL, LocalInfoLanguage");
   520                 	CreateTerminalRespL, LocalInfoLanguage");
       
   521                 
   515                 
   522                 if ( aAdditionalInfo.Length() )
   516                 if ( aAdditionalInfo.Length() )
   523                     {
   517                     {
   524                     // create Language TLV
   518                     // create Language TLV
   525                     tlvSpecificData.AddTag( KTlvLanguageTag );
   519                     tlvSpecificData.AddTag( KTlvLanguageTag );
   533                 	}
   527                 	}
   534                 break; 
   528                 break; 
   535                 }
   529                 }
   536             case RSat::KProvideLocalInfoAccTech:
   530             case RSat::KProvideLocalInfoAccTech:
   537             	{
   531             	{
   538             	TFLOGSTRING("CSAT: CSatNotifyLocalInfo::\
   532             	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_CREATETERMINALRESPL_4, "CSAT: CSatNotifyLocalInfo::CreateTerminalRespL, Access Technology");
   539             		CreateTerminalRespL, Access Technology");	
       
   540             	// Access technology result
   533             	// Access technology result
   541                 tlvSpecificData.AddTag( KTlvAccessTechnologyTag );
   534                 tlvSpecificData.AddTag( KTlvAccessTechnologyTag );
   542                 tlvSpecificData.AddByte( iCurrentAccTech );
   535                 tlvSpecificData.AddByte( iCurrentAccTech );
   543             	break;
   536             	break;
   544             	}                
   537             	}                
   571         (
   564         (
   572         CSatDataPackage* aDataPackage,
   565         CSatDataPackage* aDataPackage,
   573         TInt /*aErrorCode*/
   566         TInt /*aErrorCode*/
   574         )
   567         )
   575     {
   568     {
   576     TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteTerminalRespDataL");
   569     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETETERMINALRESPDATAL_1, "CSAT: CSatNotifyLocalInfo::CompleteTerminalRespDataL");
   577     TInt ret( KErrNone );
   570     TInt ret( KErrNone );
   578     // Unpack parameters
   571     // Unpack parameters
   579     CSatNotificationsTsy::TTerminalRespData* terminalRespData;
   572     CSatNotificationsTsy::TTerminalRespData* terminalRespData;
   580     aDataPackage->UnPackData( &terminalRespData );    
   573     aDataPackage->UnPackData( &terminalRespData );    
   581     CreateTerminalRespL( iNotificationsTsy->iTerminalRespData.iPCmdNumber,
   574     CreateTerminalRespL( iNotificationsTsy->iTerminalRespData.iPCmdNumber,
   593 		( 
   586 		( 
   594 		CSatDataPackage* aDataPackage, 
   587 		CSatDataPackage* aDataPackage, 
   595 		TInt /*aErrorCode*/ 
   588 		TInt /*aErrorCode*/ 
   596 		)
   589 		)
   597 	{
   590 	{
   598 	TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteUpdateLocalInfo");
   591 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETEUPDATELOCALINFO_1, "CSAT: CSatNotifyLocalInfo::CompleteUpdateLocalInfo");
   599 	aDataPackage->UnPackData( iLocalInformation );	
   592 	aDataPackage->UnPackData( iLocalInformation );	
   600 	}
   593 	}
   601 	
   594 	
   602 // -----------------------------------------------------------------------------
   595 // -----------------------------------------------------------------------------
   603 // CSatNotifyLocalInfo::CompleteUpdateNetInfo
   596 // CSatNotifyLocalInfo::CompleteUpdateNetInfo
   608 		( 
   601 		( 
   609 		CSatDataPackage* aDataPackage, 
   602 		CSatDataPackage* aDataPackage, 
   610         TInt /*aErrorCode*/ 
   603         TInt /*aErrorCode*/ 
   611         )
   604         )
   612 	{
   605 	{
   613 	TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteUpdateNetInfo");
   606 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETEUPDATENETINFO_1, "CSAT: CSatNotifyLocalInfo::CompleteUpdateNetInfo");
   614 	aDataPackage->UnPackData( iNMR, iBCCHChannelList );	
   607 	aDataPackage->UnPackData( iNMR, iBCCHChannelList );	
   615 	}
   608 	}
   616 	
   609 	
   617 // -----------------------------------------------------------------------------
   610 // -----------------------------------------------------------------------------
   618 // CSatNotifyLocalInfo::CompleteUpdateTimingAdvAndMEStatus
   611 // CSatNotifyLocalInfo::CompleteUpdateTimingAdvAndMEStatus
   623 		(
   616 		(
   624 		CSatDataPackage* aDataPackage, 
   617 		CSatDataPackage* aDataPackage, 
   625         TInt /*aErrorCode*/ 
   618         TInt /*aErrorCode*/ 
   626         )
   619         )
   627 	{
   620 	{
   628 	TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteUpdateTimingAdvAndMEStatus");
   621 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETEUPDATETIMINGADVANDMESTATUS_1, "CSAT: CSatNotifyLocalInfo::CompleteUpdateTimingAdvAndMEStatus");
   629 	aDataPackage->UnPackData( iTimingAdvance, iMEStatus );		
   622 	aDataPackage->UnPackData( iTimingAdvance, iMEStatus );		
   630 	}
   623 	}
   631 	
   624 	
   632 // -----------------------------------------------------------------------------
   625 // -----------------------------------------------------------------------------
   633 // CSatNotifyLocalInfo::CompleteUpdateAccTech
   626 // CSatNotifyLocalInfo::CompleteUpdateAccTech
   638 		( 
   631 		( 
   639 		CSatDataPackage* aDataPackage, 
   632 		CSatDataPackage* aDataPackage, 
   640 		TInt /*aErrorCode*/ 
   633 		TInt /*aErrorCode*/ 
   641 		)      
   634 		)      
   642 	{
   635 	{
   643 	TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteUpdateAccTech");
   636 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETEUPDATEACCTECH_1, "CSAT: CSatNotifyLocalInfo::CompleteUpdateAccTech");
   644 	aDataPackage->UnPackData( iCurrentAccTech );	
   637 	aDataPackage->UnPackData( iCurrentAccTech );	
   645 	}
   638 	}
   646 // -----------------------------------------------------------------------------
   639 // -----------------------------------------------------------------------------
   647 // CSatNotifyLocalInfo::CompleteUpdateIMEI
   640 // CSatNotifyLocalInfo::CompleteUpdateIMEI
   648 // Called when IMEI is changed ( in boot up )
   641 // Called when IMEI is changed ( in boot up )
   652 		( 
   645 		( 
   653 		CSatDataPackage* aDataPackage, 
   646 		CSatDataPackage* aDataPackage, 
   654 		TInt /*aErrorCode*/ 
   647 		TInt /*aErrorCode*/ 
   655 		)      
   648 		)      
   656 	{
   649 	{
   657 	TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteUpdateIMEI");
   650 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETEUPDATEIMEI_1, "CSAT: CSatNotifyLocalInfo::CompleteUpdateIMEI");
   658 	aDataPackage->UnPackData( iIMEI );	
   651 	aDataPackage->UnPackData( iIMEI );	
   659 	}
   652 	}
   660 
   653 
   661 // -----------------------------------------------------------------------------
   654 // -----------------------------------------------------------------------------
   662 // CSatNotifyLocalInfo::CompleteUpdateTimeZone
   655 // CSatNotifyLocalInfo::CompleteUpdateTimeZone
   667 		( 
   660 		( 
   668 		CSatDataPackage* aDataPackage, 
   661 		CSatDataPackage* aDataPackage, 
   669 		TInt /*aErrorCode*/ 
   662 		TInt /*aErrorCode*/ 
   670 		)      
   663 		)      
   671 	{
   664 	{
   672 	TFLOGSTRING("CSAT: CSatNotifyLocalInfo::CompleteUpdateTimeZone");
   665 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_COMPLETEUPDATETIMEZONE_1, "CSAT: CSatNotifyLocalInfo::CompleteUpdateTimeZone");
   673 	aDataPackage->UnPackData( iTimeZone );	
   666 	aDataPackage->UnPackData( iTimeZone );	
   674 	}
   667 	}
   675 	
   668 	
   676 // -----------------------------------------------------------------------------
   669 // -----------------------------------------------------------------------------
   677 // CSatNotifyLocalInfo::LocalInformation
   670 // CSatNotifyLocalInfo::LocalInformation
   682     CSatNotifyLocalInfo::LocalInformation
   675     CSatNotifyLocalInfo::LocalInformation
   683 		( 
   676 		( 
   684 		// None
   677 		// None
   685 		)
   678 		)
   686 	{
   679 	{
   687 	TFLOGSTRING("CSAT: CSatNotifyLocalInfo::LocalInformation");
   680 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFICATIONSTSY_TLOCALINFORMATION_1, "CSAT: CSatNotifyLocalInfo::LocalInformation");
   688 	return iLocalInformation;
   681 	return iLocalInformation;
   689 	}
   682 	}
   690 	
   683 	
   691 // -----------------------------------------------------------------------------
   684 // -----------------------------------------------------------------------------
   692 // CSatNotifyLocalInfo::SetDateTimeTimeZone
   685 // CSatNotifyLocalInfo::SetDateTimeTimeZone
   696 void CSatNotifyLocalInfo::SetDateTimeTimeZone
   689 void CSatNotifyLocalInfo::SetDateTimeTimeZone
   697 		(
   690 		(
   698 		// None
   691 		// None
   699 		)
   692 		)
   700 	{
   693 	{
   701     TFLOGSTRING("CSAT: CSatNotifyLocalInfo::SetDateTimeTimeZone");        
   694     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_SETDATETIMETIMEZONE_1, "CSAT: CSatNotifyLocalInfo::SetDateTimeTimeZone");
   702     TTime time;
   695     TTime time;
   703     TLocale locale;
   696     TLocale locale;
   704     TDateTime dateTime;
   697     TDateTime dateTime;
   705     // Get Universal time
   698     // Get Universal time
   706     time.UniversalTime();
   699     time.UniversalTime();
   760 void CSatNotifyLocalInfo::SetInformationNmr
   753 void CSatNotifyLocalInfo::SetInformationNmr
   761 		(
   754 		(
   762 		TTlv* aTlvSpecificData
   755 		TTlv* aTlvSpecificData
   763 		)
   756 		)
   764 	{
   757 	{
   765 	TFLOGSTRING("CSAT: CSatNotifyLocalInfo::SetInformationNmr");
   758 	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CSATNOTIFYLOCALINFO_SETINFORMATIONNMR_1, "CSAT: CSatNotifyLocalInfo::SetInformationNmr");
   766     if ( iNMR.Length() )
   759     if ( iNMR.Length() )
   767         {
   760         {
   768         // Network measurement result
   761         // Network measurement result
   769         aTlvSpecificData->AddTag( KTlvNetworkMeasurementResultsTag );
   762         aTlvSpecificData->AddTag( KTlvNetworkMeasurementResultsTag );
   770         aTlvSpecificData->AddData( iNMR );
   763         aTlvSpecificData->AddData( iNMR );