syncmlfw/dm/provisioningadapter/src/NSmlDmProvisioningAdapter.cpp
branchRCL_3
changeset 27 5cc2995847ea
parent 26 19bba8228ff0
equal deleted inserted replaced
26:19bba8228ff0 27:5cc2995847ea
    21 #include <badesca.h>
    21 #include <badesca.h>
    22 #include <commdb.h>
    22 #include <commdb.h>
    23 #include <cdbcols.h>			 // CommsDB columname defs
    23 #include <cdbcols.h>			 // CommsDB columname defs
    24 #include <stringresourcereader.h>
    24 #include <stringresourcereader.h>
    25 #include <barsread.h>
    25 #include <barsread.h>
    26 #include <NSmlDMProvisioningAdapter.rsg>
    26 #include <nsmldmprovisioningadapter.rsg>
    27 #include <f32file.h>
    27 #include <f32file.h>
    28 #include <bautils.h>
    28 #include <bautils.h>
    29 #include <ApUtils.h>
    29 #include <ApUtils.h>
    30 #include <utf.h>
    30 #include <utf.h>
    31 #include <featmgr.h>
    31 #include <featmgr.h>
    36 #include <CWPParameter.h>
    36 #include <CWPParameter.h>
    37 #include <CWPEngine.h>
    37 #include <CWPEngine.h>
    38 #include <NSmlPrivateAPI.h>
    38 #include <NSmlPrivateAPI.h>
    39 #include "NSmlDmProvisioningAdapter.h"
    39 #include "NSmlDmProvisioningAdapter.h"
    40 #include "NSmlTransportHandler.h"
    40 #include "NSmlTransportHandler.h"
    41 
       
    42 #include <data_caging_path_literals.hrh>
    41 #include <data_caging_path_literals.hrh>
       
    42 #include "ProvisioningInternalCRKeys.h"
       
    43 #include <centralrepository.h>
    43 
    44 
    44 // ============================ MEMBER FUNCTIONS ===============================
    45 // ============================ MEMBER FUNCTIONS ===============================
    45 
    46 
    46 // -----------------------------------------------------------------------------
    47 // -----------------------------------------------------------------------------
    47 // CNSmlDmProvisioningAdapter::CNSmlDmProvisioningAdapter
    48 // CNSmlDmProvisioningAdapter::CNSmlDmProvisioningAdapter
   130 // -----------------------------------------------------------------------------
   131 // -----------------------------------------------------------------------------
   131 // CNSmlDmProvisioningAdapter::ItemCount
   132 // CNSmlDmProvisioningAdapter::ItemCount
   132 // -----------------------------------------------------------------------------
   133 // -----------------------------------------------------------------------------
   133 TInt CNSmlDmProvisioningAdapter::ItemCount() const
   134 TInt CNSmlDmProvisioningAdapter::ItemCount() const
   134 	{
   135 	{
   135 	return iProfiles.Count();
   136 		  
   136 	}
   137 	  CRepository* repository = CRepository::NewLC( KOMAProvAuthenticationLV );	       
       
   138 	  TInt adapterCount( 0 );	  
       
   139 		TInt getErr = repository->Get( KOMAProvCriticalAdapterSettingCount, adapterCount);
       
   140 		if(getErr != KErrNone)
       
   141     	{
       
   142         _DBG_FILE("CWPMessage::ProcessL: get KOMAProvCriticalAdapterSettingCount Failed" );
       
   143       }	
       
   144     TInt criticalAdapterSettingCount =   adapterCount +  iProfiles.Count();    	
       
   145     
       
   146     TInt setErr = repository->Set(KOMAProvCriticalAdapterSettingCount, criticalAdapterSettingCount);      
       
   147     if(setErr != KErrNone)
       
   148       {
       
   149     		_DBG_FILE("CNSmlDmProvisioningAdapter::ItemCount(): set KOMAProvCriticalAdapterSettingCount failed");
       
   150     	}
       
   151     CleanupStack::PopAndDestroy(); // repository         
       
   152 	  return iProfiles.Count();
       
   153 	 }
   137 
   154 
   138 // -----------------------------------------------------------------------------
   155 // -----------------------------------------------------------------------------
   139 // CNSmlDmProvisioningAdapter::SummaryTitle
   156 // CNSmlDmProvisioningAdapter::SummaryTitle
   140 // -----------------------------------------------------------------------------
   157 // -----------------------------------------------------------------------------
   141 const TDesC16& CNSmlDmProvisioningAdapter::SummaryTitle(TInt /*aIndex*/) const
   158 const TDesC16& CNSmlDmProvisioningAdapter::SummaryTitle(TInt /*aIndex*/) const
   486 		iState = CNSmlDmProvisioningAdapter::EStateNull;
   503 		iState = CNSmlDmProvisioningAdapter::EStateNull;
   487 		}
   504 		}
   488 
   505 
   489 	if(iState!=CNSmlDmProvisioningAdapter::EStateNull)
   506 	if(iState!=CNSmlDmProvisioningAdapter::EStateNull)
   490 		{
   507 		{
   491 		aCharacteristic.AcceptL( *this );
   508 		
       
   509 		TInt authType( 0 );
       
   510 		TInt allowCriticalSetting( 0 );
       
   511 		CRepository* repository = CRepository::NewLC( KOMAProvAuthenticationLV );
       
   512 		
       
   513 		TInt error = repository->Get( KOMAProvMessageOpen, authType );
       
   514 		if(error !=KErrNone)
       
   515 			{
       
   516 				_DBG_FILE("CNSmlDmProvisioningAdapter::VisitL Get KOMAProvMessageOpen Failed");
       
   517 			}			
       
   518 			
       
   519 		error = repository->Get( KOMAProvAllowCriticalAdapterSetting, allowCriticalSetting );
       
   520 		if(error !=KErrNone)
       
   521 			{
       
   522 				_DBG_FILE("CNSmlDmProvisioningAdapter::VisitL Get KOMAProvMessageOpen Failed");
       
   523 			}			
       
   524 		CleanupStack::PopAndDestroy(); // repository
       
   525 		
       
   526 		if(allowCriticalSetting)
       
   527 			{
       
   528 				if(authType != 1)
       
   529 				{			
       
   530 				aCharacteristic.AcceptL( *this );
       
   531 				}
       
   532 				else
       
   533 				{
       
   534 				iState = CNSmlDmProvisioningAdapter::EStateNull;			
       
   535 				}	
       
   536 			}
       
   537 			else
       
   538 			{
       
   539 				aCharacteristic.AcceptL( *this );
       
   540 			}
   492 		}
   541 		}
   493 	_DBG_FILE("CNSmlDmProvisioningAdapter::VisitL(CWPCharacteristic): end");
   542 	_DBG_FILE("CNSmlDmProvisioningAdapter::VisitL(CWPCharacteristic): end");
   494 	}
   543 	}
   495 
   544 
   496 // -----------------------------------------------------------------------------
   545 // -----------------------------------------------------------------------------