38 #include <LogsDomainCRKeys.h> |
38 #include <LogsDomainCRKeys.h> |
39 #include <PsetContainer.h> |
39 #include <PsetContainer.h> |
40 #include <PsetSAObserver.h> //ongoing call check |
40 #include <PsetSAObserver.h> //ongoing call check |
41 #include "GSNetworkDebugHelper.h" |
41 #include "GSNetworkDebugHelper.h" |
42 #include <GsNetworkPluginRsc.rsg> //for resource IDs |
42 #include <GsNetworkPluginRsc.rsg> //for resource IDs |
43 |
43 #include <mmtsy_names.h> |
44 //CONSTANTS |
44 //CONSTANTS |
45 // default value for autolock period |
45 // default value for autolock period |
46 // default value for Sat operations |
46 // default value for Sat operations |
47 |
47 |
48 |
48 |
388 if ( !iPhoneSettingsEngine ) |
388 if ( !iPhoneSettingsEngine ) |
389 { |
389 { |
390 iPhoneSettingsEngine = iSettingsContainer->CreateNetworkModeObjectL( *this ); |
390 iPhoneSettingsEngine = iSettingsContainer->CreateNetworkModeObjectL( *this ); |
391 } |
391 } |
392 iPhoneSettingsEngine->SetNetworkModeObserver( *this ); |
392 iPhoneSettingsEngine->SetNetworkModeObserver( *this ); |
393 // get the current net mode asynchronously |
393 //CPSMNetworkPlugin will init iPlugin NULL. |
394 StartAsynGetCurrentNetworkModeSelectionL(); |
394 if ( iPlugin == NULL ) |
|
395 { |
|
396 // get the current net mode synchronously |
|
397 StartSynGetCurrentNetworkModeSelectionL(); |
|
398 } |
|
399 else |
|
400 { |
|
401 // get the current net mode asynchronously |
|
402 StartAsynGetCurrentNetworkModeSelectionL(); |
|
403 } |
395 |
404 |
396 __GSLOGSTRING("[GS] <--CGSNetworkPluginModel::CreatePhoneSettingsEngineL"); |
405 __GSLOGSTRING("[GS] <--CGSNetworkPluginModel::CreatePhoneSettingsEngineL"); |
397 } |
406 } |
398 |
407 |
399 |
408 |
544 iPhoneSettingsEngine->GetCurrentNetworkModeSelectionL(); |
553 iPhoneSettingsEngine->GetCurrentNetworkModeSelectionL(); |
545 } |
554 } |
546 } |
555 } |
547 |
556 |
548 // --------------------------------------------------------------------------- |
557 // --------------------------------------------------------------------------- |
|
558 // CGSNetworkPluginModel::StartSynGetCurrentNetworkModeSelectionL |
|
559 // |
|
560 // --------------------------------------------------------------------------- |
|
561 // |
|
562 void CGSNetworkPluginModel::StartSynGetCurrentNetworkModeSelectionL() |
|
563 { |
|
564 // Connects to Etel and loads Tsy module |
|
565 RMobilePhone phone; |
|
566 RTelServer server; |
|
567 // Custom phone. |
|
568 RMmCustomAPI customPhone; |
|
569 |
|
570 TInt err = KErrNone; |
|
571 for ( TInt a = 0; a < KPSetRetryCount; a++ ) |
|
572 { |
|
573 err = server.Connect(); |
|
574 |
|
575 if ( err == KErrNone ) |
|
576 { |
|
577 break; |
|
578 } |
|
579 |
|
580 User::After( KPSetRetryTimeout ); |
|
581 } |
|
582 |
|
583 if ( err != KErrNone ) |
|
584 { |
|
585 User::Leave( err ); |
|
586 } |
|
587 else |
|
588 { |
|
589 server.LoadPhoneModule( KMmTsyModuleName ); |
|
590 } |
|
591 User::LeaveIfError( server.SetExtendedErrorGranularity( RTelServer::EErrorExtended ) ); |
|
592 |
|
593 TInt numPhones; |
|
594 |
|
595 User::LeaveIfError( server.EnumeratePhones( numPhones ) ); |
|
596 if ( !numPhones ) |
|
597 { |
|
598 User::Leave( KErrGeneral ); |
|
599 } |
|
600 |
|
601 //match phone name to correct one |
|
602 RTelServer::TPhoneInfo phoneInfo; |
|
603 TName matchTsyName; |
|
604 TInt i = 0; |
|
605 for (; i < numPhones; i++) |
|
606 { |
|
607 User::LeaveIfError(server.GetTsyName(i, matchTsyName)); |
|
608 if (matchTsyName.CompareF(KMmTsyModuleName) == 0) |
|
609 { |
|
610 User::LeaveIfError(server.GetPhoneInfo(i, phoneInfo)); |
|
611 break; |
|
612 } |
|
613 } |
|
614 if (i == numPhones) |
|
615 { |
|
616 User::Leave(KErrGeneral); |
|
617 } |
|
618 |
|
619 //open phone subsession |
|
620 User::LeaveIfError( phone.Open( server, phoneInfo.iName ) ); |
|
621 User::LeaveIfError( customPhone.Open( phone ) ); |
|
622 TUint32 currentNetworkModes; |
|
623 customPhone.GetCurrentSystemNetworkModes( currentNetworkModes ); |
|
624 iNetworkMode = (TInt)currentNetworkModes; |
|
625 customPhone.Close(); |
|
626 phone.Close(); |
|
627 server.Close(); |
|
628 } |
|
629 |
|
630 // --------------------------------------------------------------------------- |
549 // CGSNetworkPluginModel::GetNetworkMode |
631 // CGSNetworkPluginModel::GetNetworkMode |
550 // |
632 // |
551 // --------------------------------------------------------------------------- |
633 // --------------------------------------------------------------------------- |
552 // |
634 // |
553 TUint32 CGSNetworkPluginModel::GetNetworkMode() |
635 TUint32 CGSNetworkPluginModel::GetNetworkMode() |