cmmanager/cmmgr/cmmplugins/cmpluginpacketdata/src/cmpluginpacketdata.cpp
changeset 40 c5b848e6c7d1
parent 30 8dde790cab74
child 44 a0c4ceac30d0
equal deleted inserted replaced
34:3b0cec605979 40:c5b848e6c7d1
   256     {
   256     {
   257     OstTraceFunctionEntry1( CCMPLUGINPACKETDATA_CCMPLUGINPACKETDATA_ENTRY, this );
   257     OstTraceFunctionEntry1( CCMPLUGINPACKETDATA_CCMPLUGINPACKETDATA_ENTRY, this );
   258 
   258 
   259     ResetBearerRecords();
   259     ResetBearerRecords();
   260 
   260 
   261     FeatureManager::UnInitializeLib();
       
   262 
       
   263     OstTraceFunctionExit1( CCMPLUGINPACKETDATA_CCMPLUGINPACKETDATA_EXIT, this );
   261     OstTraceFunctionExit1( CCMPLUGINPACKETDATA_CCMPLUGINPACKETDATA_EXIT, this );
   264     }
   262     }
   265 
   263 
   266 // ----------------------------------------------------------------------------
   264 // ----------------------------------------------------------------------------
   267 // CCmPluginPacketData::CreateInstanceL
   265 // CCmPluginPacketData::CreateInstanceL
   307 //
   305 //
   308 void CCmPluginPacketData::ConstructL()
   306 void CCmPluginPacketData::ConstructL()
   309     {
   307     {
   310     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CONSTRUCTL_ENTRY );
   308     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CONSTRUCTL_ENTRY );
   311 
   309 
   312     FeatureManager::InitializeLibL();
   310     // Feature Manager is initialized by the CmmServer, so no need to do it here.
       
   311 
   313     CCmPluginBaseEng::ConstructL();
   312     CCmPluginBaseEng::ConstructL();
   314 
   313 
   315     // Get bearer priority table ID.
   314     // Get bearer priority table ID.
   316     TRAP_IGNORE( iBearerPriorityTableId =
   315     TRAP_IGNORE( iBearerPriorityTableId =
   317             CCDGlobalBearerTypePriorizationRecord::TableIdL( iSession ) );
   316             CCDGlobalBearerTypePriorizationRecord::TableIdL( iSession ) );
   333     {
   332     {
   334     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CANHANDLEIAPIDL_ENTRY );
   333     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CANHANDLEIAPIDL_ENTRY );
   335 
   334 
   336     TBool retVal( EFalse );
   335     TBool retVal( EFalse );
   337 
   336 
   338     CCDIAPRecord *iapRecord = static_cast<CCDIAPRecord *>(
   337     CCDIAPRecord *iapRecord = static_cast<CCDIAPRecord*>(
   339             CCDRecordBase::RecordFactoryL( KCDTIdIAPRecord ) );
   338             CCDRecordBase::RecordFactoryL( KCDTIdIAPRecord ) );
   340 
   339 
   341     CleanupStack::PushL( iapRecord );
   340     CleanupStack::PushL( iapRecord );
   342     iapRecord->SetRecordId( aIapId );
   341     iapRecord->SetRecordId( aIapId );
   343 
   342 
   362     {
   361     {
   363     OstTraceFunctionEntry0( DUP1_CCMPLUGINPACKETDATA_CANHANDLEIAPIDL_ENTRY );
   362     OstTraceFunctionEntry0( DUP1_CCMPLUGINPACKETDATA_CANHANDLEIAPIDL_ENTRY );
   364 
   363 
   365     TBool retVal( EFalse );
   364     TBool retVal( EFalse );
   366 
   365 
   367     if ( (TPtrC(aIapRecord->iServiceType) == TPtrC(KCDTypeNameOutgoingWCDMA) ||
   366     if ( ( TPtrC( aIapRecord->iServiceType ) == TPtrC( KCDTypeNameOutgoingWCDMA ) ||
   368             TPtrC(aIapRecord->iServiceType) == TPtrC(KCDTypeNameIncomingWCDMA)) &&
   367             TPtrC( aIapRecord->iServiceType ) == TPtrC( KCDTypeNameIncomingWCDMA )) &&
   369             TPtrC(aIapRecord->iBearerType) == TPtrC(KCDTypeNameModemBearer) )
   368             TPtrC( aIapRecord->iBearerType ) == TPtrC( KCDTypeNameModemBearer ) )
   370         {
   369         {
   371         retVal = ETrue;
   370         retVal = ETrue;
   372         }
   371         }
   373 
   372 
   374 
   373 
   481     {
   480     {
   482     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_LOADBEARERRECORDSL_ENTRY );
   481     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_LOADBEARERRECORDSL_ENTRY );
   483 
   482 
   484     if ( ServiceRecord().iUmtsR99QoSAndOnTable )
   483     if ( ServiceRecord().iUmtsR99QoSAndOnTable )
   485         {
   484         {
   486         iPacketDataQoSRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord *>(
   485         iPacketDataQoSRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
   487                 CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
   486                 CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
   488 
   487 
   489         iPacketDataQoSRecord->SetRecordId( ServiceRecord().iUmtsR99QoSAndOnTable );
   488         iPacketDataQoSRecord->SetRecordId( ServiceRecord().iUmtsR99QoSAndOnTable );
   490         iPacketDataQoSRecord->LoadL( iSession );
   489         iPacketDataQoSRecord->LoadL( iSession );
   491         }
   490         }
   501     {
   500     {
   502     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_LOADSERVICERECORDL_ENTRY );
   501     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_LOADSERVICERECORDL_ENTRY );
   503 
   502 
   504     if ( TPtrC( KCDTypeNameOutgoingWCDMA ) == iIapRecord->iServiceType )
   503     if ( TPtrC( KCDTypeNameOutgoingWCDMA ) == iIapRecord->iServiceType )
   505         {
   504         {
   506         iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord *>(
   505         iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
   507                 CCDRecordBase::RecordFactoryL( KCDTIdOutgoingGprsRecord ) );
   506                 CCDRecordBase::RecordFactoryL( KCDTIdOutgoingGprsRecord ) );
   508         iOutgoing = ETrue;
   507         iOutgoing = ETrue;
   509         }
   508         }
   510     else if ( TPtrC( KCDTypeNameIncomingWCDMA ) == iIapRecord->iServiceType )
   509     else if ( TPtrC( KCDTypeNameIncomingWCDMA ) == iIapRecord->iServiceType )
   511         {
   510         {
   512         iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord *>(
   511         iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
   513                 CCDRecordBase::RecordFactoryL( KCDTIdIncomingGprsRecord ) );
   512                 CCDRecordBase::RecordFactoryL( KCDTIdIncomingGprsRecord ) );
   514         iOutgoing = EFalse;
   513         iOutgoing = EFalse;
   515         }
   514         }
   516     else
   515     else
   517         // this IAP service is not supported by this plugin.
   516         // this IAP service is not supported by this plugin.
   550     delete iServiceRecord;
   549     delete iServiceRecord;
   551     iServiceRecord = NULL;
   550     iServiceRecord = NULL;
   552 
   551 
   553     if ( iOutgoing )
   552     if ( iOutgoing )
   554         {
   553         {
   555         iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord *>(
   554         iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
   556                 CCDRecordBase::RecordFactoryL( KCDTIdOutgoingGprsRecord ) );
   555                 CCDRecordBase::RecordFactoryL( KCDTIdOutgoingGprsRecord ) );
   557         }
   556         }
   558     else
   557     else
   559         {
   558         {
   560         iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord *>(
   559         iServiceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
   561                 CCDRecordBase::RecordFactoryL( KCDTIdIncomingGprsRecord ) );
   560                 CCDRecordBase::RecordFactoryL( KCDTIdIncomingGprsRecord ) );
   562         }
   561         }
   563 
   562 
   564     ServiceRecord().iGPRSAPN.SetL( KNullDesC );
   563     ServiceRecord().iGPRSAPN.SetL( KNullDesC );
   565     ServiceRecord().iGPRSPDPType.SetL( RPacketContext::EPdpTypeIPv4 );
   564     ServiceRecord().iGPRSPDPType.SetL( RPacketContext::EPdpTypeIPv4 );
   637 
   636 
   638     CMDBRecordSet<CCDModemBearerRecord>* bearerRS =
   637     CMDBRecordSet<CCDModemBearerRecord>* bearerRS =
   639             new( ELeave ) CMDBRecordSet<CCDModemBearerRecord>( KCDTIdModemBearerRecord );
   638             new( ELeave ) CMDBRecordSet<CCDModemBearerRecord>( KCDTIdModemBearerRecord );
   640     CleanupStack::PushL( bearerRS );
   639     CleanupStack::PushL( bearerRS );
   641 
   640 
   642     CCDModemBearerRecord* bearerRecord = static_cast<CCDModemBearerRecord *>(
   641     CCDModemBearerRecord* bearerRecord = static_cast<CCDModemBearerRecord*>(
   643             CCDRecordBase::RecordFactoryL( KCDTIdModemBearerRecord ) );
   642             CCDRecordBase::RecordFactoryL( KCDTIdModemBearerRecord ) );
   644 
   643 
   645     CleanupStack::PushL( bearerRecord );
   644     CleanupStack::PushL( bearerRecord );
   646 
   645 
   647     bearerRecord->iRecordName.SetL( KModemBearerPacketData );
   646     bearerRecord->iRecordName.SetL( KModemBearerPacketData );
   743     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CREATEBEARERRECORDSL_ENTRY );
   742     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_CREATEBEARERRECORDSL_ENTRY );
   744 
   743 
   745     delete iPacketDataQoSRecord;
   744     delete iPacketDataQoSRecord;
   746     iPacketDataQoSRecord = NULL;
   745     iPacketDataQoSRecord = NULL;
   747 
   746 
   748     iPacketDataQoSRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord *>(
   747     iPacketDataQoSRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
   749             CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
   748             CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
   750 
   749 
   751     iPacketDataQoSRecord->iGPRSReqTrafficClass = RPacketQoS::ETrafficClassUnspecified;
   750     iPacketDataQoSRecord->iGPRSReqTrafficClass = RPacketQoS::ETrafficClassUnspecified;
   752     iPacketDataQoSRecord->iGPRSMinTrafficClass = RPacketQoS::ETrafficClassUnspecified;
   751     iPacketDataQoSRecord->iGPRSMinTrafficClass = RPacketQoS::ETrafficClassUnspecified;
   753     iPacketDataQoSRecord->iGPRSReqDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
   752     iPacketDataQoSRecord->iGPRSReqDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
   754     iPacketDataQoSRecord->iGPRSMinDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
   753     iPacketDataQoSRecord->iGPRSMinDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
   755     iPacketDataQoSRecord->iGPRSReqDeliverErroneousSDU = RPacketQoS::EErroneousSDUDeliveryUnspecified;
   754     iPacketDataQoSRecord->iGPRSReqDeliverErroneousSDU =
   756     iPacketDataQoSRecord->iGPRSMinDeliverErroneousSDU = RPacketQoS::EErroneousSDUDeliveryUnspecified;
   755             RPacketQoS::EErroneousSDUDeliveryUnspecified;
       
   756     iPacketDataQoSRecord->iGPRSMinDeliverErroneousSDU =
       
   757             RPacketQoS::EErroneousSDUDeliveryUnspecified;
   757     iPacketDataQoSRecord->iGPRSReqMaxSDUSize = 0;
   758     iPacketDataQoSRecord->iGPRSReqMaxSDUSize = 0;
   758     iPacketDataQoSRecord->iGPRSMinAcceptableMaxSDUSize = 0;
   759     iPacketDataQoSRecord->iGPRSMinAcceptableMaxSDUSize = 0;
   759     iPacketDataQoSRecord->iGPRSReqMaxUplinkRate = 0;
   760     iPacketDataQoSRecord->iGPRSReqMaxUplinkRate = 0;
   760     iPacketDataQoSRecord->iGPRSReqMinUplinkRate = 0;
   761     iPacketDataQoSRecord->iGPRSReqMinUplinkRate = 0;
   761     iPacketDataQoSRecord->iGPRSReqMaxDownlinkRate = 0;
   762     iPacketDataQoSRecord->iGPRSReqMaxDownlinkRate = 0;
   762     iPacketDataQoSRecord->iGPRSReqMinDownlinkRate = 0;
   763     iPacketDataQoSRecord->iGPRSReqMinDownlinkRate = 0;
   763     iPacketDataQoSRecord->iGPRSReqBER = RPacketQoS::EBERUnspecified;
   764     iPacketDataQoSRecord->iGPRSReqBER = RPacketQoS::EBERUnspecified;
   764     iPacketDataQoSRecord->iGPRSMaxBER = RPacketQoS::EBERUnspecified;
   765     iPacketDataQoSRecord->iGPRSMaxBER = RPacketQoS::EBERUnspecified;
   765     iPacketDataQoSRecord->iGPRSReqSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
   766     iPacketDataQoSRecord->iGPRSReqSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
   766     iPacketDataQoSRecord->iGPRSMaxSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
   767     iPacketDataQoSRecord->iGPRSMaxSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
   767     iPacketDataQoSRecord->iGPRSReqTrafficHandlingPriority = RPacketQoS::ETrafficPriorityUnspecified;
   768     iPacketDataQoSRecord->iGPRSReqTrafficHandlingPriority =
   768     iPacketDataQoSRecord->iGPRSMinTrafficHandlingPriority = RPacketQoS::ETrafficPriorityUnspecified;
   769             RPacketQoS::ETrafficPriorityUnspecified;
       
   770     iPacketDataQoSRecord->iGPRSMinTrafficHandlingPriority =
       
   771             RPacketQoS::ETrafficPriorityUnspecified;
   769     iPacketDataQoSRecord->iGPRSReqTransferDelay = 0;
   772     iPacketDataQoSRecord->iGPRSReqTransferDelay = 0;
   770     iPacketDataQoSRecord->iGPRSMaxTransferDelay = 0;
   773     iPacketDataQoSRecord->iGPRSMaxTransferDelay = 0;
   771     iPacketDataQoSRecord->iGPRSReqGuaranteedUplinkRate = 0;
   774     iPacketDataQoSRecord->iGPRSReqGuaranteedUplinkRate = 0;
   772     iPacketDataQoSRecord->iGPRSMinGuaranteedUplinkRate = 0;
   775     iPacketDataQoSRecord->iGPRSMinGuaranteedUplinkRate = 0;
   773     iPacketDataQoSRecord->iGPRSReqGuaranteedDownlinkRate = 0;
   776     iPacketDataQoSRecord->iGPRSReqGuaranteedDownlinkRate = 0;
   774     iPacketDataQoSRecord->iGPRSMinGuaranteedDownlinkRate = 0;
   777     iPacketDataQoSRecord->iGPRSMinGuaranteedDownlinkRate = 0;
   775     iPacketDataQoSRecord->iGPRSSignallingIndication = EFalse;
   778     iPacketDataQoSRecord->iGPRSSignallingIndication = EFalse;
   776     iPacketDataQoSRecord->iGPRS_ImCnSignallingIndication = EFalse;
   779     iPacketDataQoSRecord->iGPRS_ImCnSignallingIndication = EFalse;
   777     iPacketDataQoSRecord->iGPRSSourceStatisticsDescriptor = RPacketQoS::ESourceStatisticsDescriptorUnknown;
   780     iPacketDataQoSRecord->iGPRSSourceStatisticsDescriptor =
       
   781             RPacketQoS::ESourceStatisticsDescriptorUnknown;
   778 
   782 
   779     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_CREATEBEARERRECORDSL_EXIT );
   783     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_CREATEBEARERRECORDSL_EXIT );
   780     }
   784     }
   781 
   785 
   782 // ---------------------------------------------------------------------------
   786 // ---------------------------------------------------------------------------
   811     CCDWCDMAPacketServiceRecord* clientServiceRecordCopy =
   815     CCDWCDMAPacketServiceRecord* clientServiceRecordCopy =
   812             static_cast<CCDWCDMAPacketServiceRecord*>( aGenRecordArray[KServiceRecordIndex] );
   816             static_cast<CCDWCDMAPacketServiceRecord*>( aGenRecordArray[KServiceRecordIndex] );
   813 
   817 
   814     if ( !clientServiceRecordCopy->iRecordTag.IsNull() )
   818     if ( !clientServiceRecordCopy->iRecordTag.IsNull() )
   815         {
   819         {
   816         origServiceRecord->iRecordTag.SetL( clientServiceRecordCopy->iRecordTag );
   820         origServiceRecord->iRecordTag.SetL(
       
   821                 clientServiceRecordCopy->iRecordTag );
   817         }
   822         }
   818     if ( !clientServiceRecordCopy->iRecordName.IsNull() )
   823     if ( !clientServiceRecordCopy->iRecordName.IsNull() )
   819         {
   824         {
   820         origServiceRecord->iRecordName.SetL( clientServiceRecordCopy->iRecordName );
   825         origServiceRecord->iRecordName.SetL(
       
   826                 clientServiceRecordCopy->iRecordName );
   821         }
   827         }
   822 
   828 
   823     if ( !clientServiceRecordCopy->iServiceEnableLlmnr.IsNull() )
   829     if ( !clientServiceRecordCopy->iServiceEnableLlmnr.IsNull() )
   824         {
   830         {
   825         origServiceRecord->iServiceEnableLlmnr.SetL( clientServiceRecordCopy->iServiceEnableLlmnr );
   831         origServiceRecord->iServiceEnableLlmnr.SetL(
       
   832                 clientServiceRecordCopy->iServiceEnableLlmnr );
   826         }
   833         }
   827 
   834 
   828     if ( !clientServiceRecordCopy->iGPRSAPN.IsNull() )
   835     if ( !clientServiceRecordCopy->iGPRSAPN.IsNull() )
   829         {
   836         {
   830         origServiceRecord->iGPRSAPN.SetL( clientServiceRecordCopy->iGPRSAPN );
   837         origServiceRecord->iGPRSAPN.SetL(
       
   838                 clientServiceRecordCopy->iGPRSAPN );
   831         }
   839         }
   832     if ( !clientServiceRecordCopy->iGPRSPDPType.IsNull() )
   840     if ( !clientServiceRecordCopy->iGPRSPDPType.IsNull() )
   833         {
   841         {
   834         origServiceRecord->iGPRSPDPType.SetL( clientServiceRecordCopy->iGPRSPDPType );
   842         origServiceRecord->iGPRSPDPType.SetL(
       
   843                 clientServiceRecordCopy->iGPRSPDPType );
   835         }
   844         }
   836     if ( !clientServiceRecordCopy->iGPRSPDPAddress.IsNull() )
   845     if ( !clientServiceRecordCopy->iGPRSPDPAddress.IsNull() )
   837         {
   846         {
   838         origServiceRecord->iGPRSPDPAddress.SetL( clientServiceRecordCopy->iGPRSPDPAddress );
   847         origServiceRecord->iGPRSPDPAddress.SetL(
       
   848                 clientServiceRecordCopy->iGPRSPDPAddress );
   839         }
   849         }
   840     if ( !clientServiceRecordCopy->iGPRSReqPrecedence.IsNull() )
   850     if ( !clientServiceRecordCopy->iGPRSReqPrecedence.IsNull() )
   841         {
   851         {
   842         origServiceRecord->iGPRSReqPrecedence.SetL( clientServiceRecordCopy->iGPRSReqPrecedence );
   852         origServiceRecord->iGPRSReqPrecedence.SetL(
       
   853                 clientServiceRecordCopy->iGPRSReqPrecedence );
   843         }
   854         }
   844     if ( !clientServiceRecordCopy->iGPRSReqDelay.IsNull() )
   855     if ( !clientServiceRecordCopy->iGPRSReqDelay.IsNull() )
   845         {
   856         {
   846         origServiceRecord->iGPRSReqDelay.SetL( clientServiceRecordCopy->iGPRSReqDelay );
   857         origServiceRecord->iGPRSReqDelay.SetL(
       
   858                 clientServiceRecordCopy->iGPRSReqDelay );
   847         }
   859         }
   848     if ( !clientServiceRecordCopy->iGPRSReqReliability.IsNull() )
   860     if ( !clientServiceRecordCopy->iGPRSReqReliability.IsNull() )
   849         {
   861         {
   850         origServiceRecord->iGPRSReqReliability.SetL( clientServiceRecordCopy->iGPRSReqReliability );
   862         origServiceRecord->iGPRSReqReliability.SetL(
       
   863                 clientServiceRecordCopy->iGPRSReqReliability );
   851         }
   864         }
   852     if ( !clientServiceRecordCopy->iGPRSReqPeakThroughput.IsNull() )
   865     if ( !clientServiceRecordCopy->iGPRSReqPeakThroughput.IsNull() )
   853         {
   866         {
   854         origServiceRecord->iGPRSReqPeakThroughput.SetL( clientServiceRecordCopy->iGPRSReqPeakThroughput );
   867         origServiceRecord->iGPRSReqPeakThroughput.SetL(
       
   868                 clientServiceRecordCopy->iGPRSReqPeakThroughput );
   855         }
   869         }
   856     if ( !clientServiceRecordCopy->iGPRSReqMeanThroughput.IsNull() )
   870     if ( !clientServiceRecordCopy->iGPRSReqMeanThroughput.IsNull() )
   857         {
   871         {
   858         origServiceRecord->iGPRSReqMeanThroughput.SetL( clientServiceRecordCopy->iGPRSReqMeanThroughput );
   872         origServiceRecord->iGPRSReqMeanThroughput.SetL(
       
   873                 clientServiceRecordCopy->iGPRSReqMeanThroughput );
   859         }
   874         }
   860     if ( !clientServiceRecordCopy->iGPRSMinPrecedence.IsNull() )
   875     if ( !clientServiceRecordCopy->iGPRSMinPrecedence.IsNull() )
   861         {
   876         {
   862         origServiceRecord->iGPRSMinPrecedence.SetL( clientServiceRecordCopy->iGPRSMinPrecedence );
   877         origServiceRecord->iGPRSMinPrecedence.SetL(
       
   878                 clientServiceRecordCopy->iGPRSMinPrecedence );
   863         }
   879         }
   864     if ( !clientServiceRecordCopy->iGPRSMinDelay.IsNull() )
   880     if ( !clientServiceRecordCopy->iGPRSMinDelay.IsNull() )
   865         {
   881         {
   866         origServiceRecord->iGPRSMinDelay.SetL( clientServiceRecordCopy->iGPRSMinDelay );
   882         origServiceRecord->iGPRSMinDelay.SetL(
       
   883                 clientServiceRecordCopy->iGPRSMinDelay );
   867         }
   884         }
   868     if ( !clientServiceRecordCopy->iGPRSMinReliability.IsNull() )
   885     if ( !clientServiceRecordCopy->iGPRSMinReliability.IsNull() )
   869         {
   886         {
   870         origServiceRecord->iGPRSMinReliability.SetL( clientServiceRecordCopy->iGPRSMinReliability );
   887         origServiceRecord->iGPRSMinReliability.SetL(
       
   888                 clientServiceRecordCopy->iGPRSMinReliability );
   871         }
   889         }
   872     if ( !clientServiceRecordCopy->iGPRSMinPeakThroughput.IsNull() )
   890     if ( !clientServiceRecordCopy->iGPRSMinPeakThroughput.IsNull() )
   873         {
   891         {
   874         origServiceRecord->iGPRSMinPeakThroughput.SetL( clientServiceRecordCopy->iGPRSMinPeakThroughput );
   892         origServiceRecord->iGPRSMinPeakThroughput.SetL(
       
   893                 clientServiceRecordCopy->iGPRSMinPeakThroughput );
   875         }
   894         }
   876     if ( !clientServiceRecordCopy->iGPRSMinMeanThroughput.IsNull() )
   895     if ( !clientServiceRecordCopy->iGPRSMinMeanThroughput.IsNull() )
   877         {
   896         {
   878         origServiceRecord->iGPRSMinMeanThroughput.SetL( clientServiceRecordCopy->iGPRSMinMeanThroughput );
   897         origServiceRecord->iGPRSMinMeanThroughput.SetL(
       
   898                 clientServiceRecordCopy->iGPRSMinMeanThroughput );
   879         }
   899         }
   880     if ( !clientServiceRecordCopy->iGPRSDataCompression.IsNull() )
   900     if ( !clientServiceRecordCopy->iGPRSDataCompression.IsNull() )
   881         {
   901         {
   882         origServiceRecord->iGPRSDataCompression.SetL( clientServiceRecordCopy->iGPRSDataCompression );
   902         origServiceRecord->iGPRSDataCompression.SetL(
       
   903                 clientServiceRecordCopy->iGPRSDataCompression );
   883         }
   904         }
   884     if ( !clientServiceRecordCopy->iGPRSHeaderCompression.IsNull() )
   905     if ( !clientServiceRecordCopy->iGPRSHeaderCompression.IsNull() )
   885         {
   906         {
   886         origServiceRecord->iGPRSHeaderCompression.SetL( clientServiceRecordCopy->iGPRSHeaderCompression );
   907         origServiceRecord->iGPRSHeaderCompression.SetL(
       
   908                 clientServiceRecordCopy->iGPRSHeaderCompression );
   887         }
   909         }
   888     if ( !clientServiceRecordCopy->iGPRSUseEdge.IsNull() )
   910     if ( !clientServiceRecordCopy->iGPRSUseEdge.IsNull() )
   889         {
   911         {
   890         origServiceRecord->iGPRSUseEdge.SetL( clientServiceRecordCopy->iGPRSUseEdge );
   912         origServiceRecord->iGPRSUseEdge.SetL(
       
   913                 clientServiceRecordCopy->iGPRSUseEdge );
   891         }
   914         }
   892     if ( !clientServiceRecordCopy->iGPRSAnonymousAccess.IsNull() )
   915     if ( !clientServiceRecordCopy->iGPRSAnonymousAccess.IsNull() )
   893         {
   916         {
   894         origServiceRecord->iGPRSAnonymousAccess.SetL( clientServiceRecordCopy->iGPRSAnonymousAccess );
   917         origServiceRecord->iGPRSAnonymousAccess.SetL(
       
   918                 clientServiceRecordCopy->iGPRSAnonymousAccess );
   895         }
   919         }
   896     if ( !clientServiceRecordCopy->iGPRSIfParams.IsNull() )
   920     if ( !clientServiceRecordCopy->iGPRSIfParams.IsNull() )
   897         {
   921         {
   898         origServiceRecord->iGPRSIfParams.SetL( clientServiceRecordCopy->iGPRSIfParams );
   922         origServiceRecord->iGPRSIfParams.SetL(
       
   923                 clientServiceRecordCopy->iGPRSIfParams );
   899         }
   924         }
   900     if ( !clientServiceRecordCopy->iGPRSIfNetworks.IsNull() )
   925     if ( !clientServiceRecordCopy->iGPRSIfNetworks.IsNull() )
   901         {
   926         {
   902         origServiceRecord->iGPRSIfNetworks.SetL( clientServiceRecordCopy->iGPRSIfNetworks );
   927         origServiceRecord->iGPRSIfNetworks.SetL(
       
   928                 clientServiceRecordCopy->iGPRSIfNetworks );
   903         }
   929         }
   904     if ( !clientServiceRecordCopy->iGPRSIfPromptForAuth.IsNull() )
   930     if ( !clientServiceRecordCopy->iGPRSIfPromptForAuth.IsNull() )
   905         {
   931         {
   906         origServiceRecord->iGPRSIfPromptForAuth.SetL( clientServiceRecordCopy->iGPRSIfPromptForAuth );
   932         origServiceRecord->iGPRSIfPromptForAuth.SetL(
       
   933                 clientServiceRecordCopy->iGPRSIfPromptForAuth );
   907         }
   934         }
   908     if ( !clientServiceRecordCopy->iGPRSIfAuthName.IsNull() )
   935     if ( !clientServiceRecordCopy->iGPRSIfAuthName.IsNull() )
   909         {
   936         {
   910         origServiceRecord->iGPRSIfAuthName.SetL( clientServiceRecordCopy->iGPRSIfAuthName );
   937         origServiceRecord->iGPRSIfAuthName.SetL(
       
   938                 clientServiceRecordCopy->iGPRSIfAuthName );
   911         }
   939         }
   912     if ( !clientServiceRecordCopy->iGPRSIfAuthPass.IsNull() )
   940     if ( !clientServiceRecordCopy->iGPRSIfAuthPass.IsNull() )
   913         {
   941         {
   914         origServiceRecord->iGPRSIfAuthPass.SetL( clientServiceRecordCopy->iGPRSIfAuthPass );
   942         origServiceRecord->iGPRSIfAuthPass.SetL(
       
   943                 clientServiceRecordCopy->iGPRSIfAuthPass );
   915         }
   944         }
   916     if ( !clientServiceRecordCopy->iGPRSIfAuthRetries.IsNull() )
   945     if ( !clientServiceRecordCopy->iGPRSIfAuthRetries.IsNull() )
   917         {
   946         {
   918         origServiceRecord->iGPRSIfAuthRetries.SetL( clientServiceRecordCopy->iGPRSIfAuthRetries );
   947         origServiceRecord->iGPRSIfAuthRetries.SetL(
       
   948                 clientServiceRecordCopy->iGPRSIfAuthRetries );
   919         }
   949         }
   920     if ( !clientServiceRecordCopy->iGPRSIPNetMask.IsNull() )
   950     if ( !clientServiceRecordCopy->iGPRSIPNetMask.IsNull() )
   921         {
   951         {
   922         origServiceRecord->iGPRSIPNetMask.SetL( clientServiceRecordCopy->iGPRSIPNetMask );
   952         origServiceRecord->iGPRSIPNetMask.SetL(
       
   953                 clientServiceRecordCopy->iGPRSIPNetMask );
   923         }
   954         }
   924     if ( !clientServiceRecordCopy->iGPRSIPGateway.IsNull() )
   955     if ( !clientServiceRecordCopy->iGPRSIPGateway.IsNull() )
   925         {
   956         {
   926         origServiceRecord->iGPRSIPGateway.SetL( clientServiceRecordCopy->iGPRSIPGateway );
   957         origServiceRecord->iGPRSIPGateway.SetL(
       
   958                 clientServiceRecordCopy->iGPRSIPGateway );
   927         }
   959         }
   928     if ( !clientServiceRecordCopy->iGPRSIPAddrFromServer.IsNull() )
   960     if ( !clientServiceRecordCopy->iGPRSIPAddrFromServer.IsNull() )
   929         {
   961         {
   930         origServiceRecord->iGPRSIPAddrFromServer.SetL( clientServiceRecordCopy->iGPRSIPAddrFromServer );
   962         origServiceRecord->iGPRSIPAddrFromServer.SetL(
       
   963                 clientServiceRecordCopy->iGPRSIPAddrFromServer );
   931         }
   964         }
   932     if ( !clientServiceRecordCopy->iGPRSIPAddr.IsNull() )
   965     if ( !clientServiceRecordCopy->iGPRSIPAddr.IsNull() )
   933         {
   966         {
   934         origServiceRecord->iGPRSIPAddr.SetL( clientServiceRecordCopy->iGPRSIPAddr );
   967         origServiceRecord->iGPRSIPAddr.SetL(
       
   968                 clientServiceRecordCopy->iGPRSIPAddr );
   935         }
   969         }
   936     if ( !clientServiceRecordCopy->iGPRSIPDNSAddrFromServer.IsNull() )
   970     if ( !clientServiceRecordCopy->iGPRSIPDNSAddrFromServer.IsNull() )
   937         {
   971         {
   938         origServiceRecord->iGPRSIPDNSAddrFromServer.SetL( clientServiceRecordCopy->iGPRSIPDNSAddrFromServer );
   972         origServiceRecord->iGPRSIPDNSAddrFromServer.SetL(
       
   973                 clientServiceRecordCopy->iGPRSIPDNSAddrFromServer );
   939         }
   974         }
   940     if ( !clientServiceRecordCopy->iGPRSIPNameServer1.IsNull() )
   975     if ( !clientServiceRecordCopy->iGPRSIPNameServer1.IsNull() )
   941         {
   976         {
   942         origServiceRecord->iGPRSIPNameServer1.SetL( clientServiceRecordCopy->iGPRSIPNameServer1 );
   977         origServiceRecord->iGPRSIPNameServer1.SetL(
       
   978                 clientServiceRecordCopy->iGPRSIPNameServer1 );
   943         }
   979         }
   944     if ( !clientServiceRecordCopy->iGPRSIPNameServer2.IsNull() )
   980     if ( !clientServiceRecordCopy->iGPRSIPNameServer2.IsNull() )
   945         {
   981         {
   946         origServiceRecord->iGPRSIPNameServer2.SetL( clientServiceRecordCopy->iGPRSIPNameServer2 );
   982         origServiceRecord->iGPRSIPNameServer2.SetL(
       
   983                 clientServiceRecordCopy->iGPRSIPNameServer2 );
   947         }
   984         }
   948     if ( !clientServiceRecordCopy->iGPRSIP6DNSAddrFromServer.IsNull() )
   985     if ( !clientServiceRecordCopy->iGPRSIP6DNSAddrFromServer.IsNull() )
   949         {
   986         {
   950         origServiceRecord->iGPRSIP6DNSAddrFromServer.SetL( clientServiceRecordCopy->iGPRSIP6DNSAddrFromServer );
   987         origServiceRecord->iGPRSIP6DNSAddrFromServer.SetL(
       
   988                 clientServiceRecordCopy->iGPRSIP6DNSAddrFromServer );
   951         }
   989         }
   952     if ( !clientServiceRecordCopy->iGPRSIP6NameServer1.IsNull() )
   990     if ( !clientServiceRecordCopy->iGPRSIP6NameServer1.IsNull() )
   953         {
   991         {
   954         origServiceRecord->iGPRSIP6NameServer1.SetL( clientServiceRecordCopy->iGPRSIP6NameServer1 );
   992         origServiceRecord->iGPRSIP6NameServer1.SetL(
       
   993                 clientServiceRecordCopy->iGPRSIP6NameServer1 );
   955         }
   994         }
   956     if ( !clientServiceRecordCopy->iGPRSIP6NameServer2.IsNull() )
   995     if ( !clientServiceRecordCopy->iGPRSIP6NameServer2.IsNull() )
   957         {
   996         {
   958         origServiceRecord->iGPRSIP6NameServer2.SetL( clientServiceRecordCopy->iGPRSIP6NameServer2 );
   997         origServiceRecord->iGPRSIP6NameServer2.SetL(
       
   998                 clientServiceRecordCopy->iGPRSIP6NameServer2 );
   959         }
   999         }
   960     if ( !clientServiceRecordCopy->iGPRSIPAddrLeaseValidFrom.IsNull() )
  1000     if ( !clientServiceRecordCopy->iGPRSIPAddrLeaseValidFrom.IsNull() )
   961         {
  1001         {
   962         origServiceRecord->iGPRSIPAddrLeaseValidFrom.SetL( clientServiceRecordCopy->iGPRSIPAddrLeaseValidFrom );
  1002         origServiceRecord->iGPRSIPAddrLeaseValidFrom.SetL(
       
  1003                 clientServiceRecordCopy->iGPRSIPAddrLeaseValidFrom );
   963         }
  1004         }
   964     if ( !clientServiceRecordCopy->iGPRSIPAddrLeaseValidTo.IsNull() )
  1005     if ( !clientServiceRecordCopy->iGPRSIPAddrLeaseValidTo.IsNull() )
   965         {
  1006         {
   966         origServiceRecord->iGPRSIPAddrLeaseValidTo.SetL( clientServiceRecordCopy->iGPRSIPAddrLeaseValidTo );
  1007         origServiceRecord->iGPRSIPAddrLeaseValidTo.SetL(
       
  1008                 clientServiceRecordCopy->iGPRSIPAddrLeaseValidTo );
   967         }
  1009         }
   968     if ( !clientServiceRecordCopy->iGPRSConfigDaemonManagerName.IsNull() )
  1010     if ( !clientServiceRecordCopy->iGPRSConfigDaemonManagerName.IsNull() )
   969         {
  1011         {
   970         origServiceRecord->iGPRSConfigDaemonManagerName.SetL( clientServiceRecordCopy->iGPRSConfigDaemonManagerName );
  1012         origServiceRecord->iGPRSConfigDaemonManagerName.SetL(
       
  1013                 clientServiceRecordCopy->iGPRSConfigDaemonManagerName );
   971         }
  1014         }
   972     if ( !clientServiceRecordCopy->iGPRSConfigDaemonName.IsNull() )
  1015     if ( !clientServiceRecordCopy->iGPRSConfigDaemonName.IsNull() )
   973         {
  1016         {
   974         origServiceRecord->iGPRSConfigDaemonName.SetL( clientServiceRecordCopy->iGPRSConfigDaemonName );
  1017         origServiceRecord->iGPRSConfigDaemonName.SetL(
       
  1018                 clientServiceRecordCopy->iGPRSConfigDaemonName );
   975         }
  1019         }
   976     if ( !clientServiceRecordCopy->iGPRSEnableLCPExtension.IsNull() )
  1020     if ( !clientServiceRecordCopy->iGPRSEnableLCPExtension.IsNull() )
   977         {
  1021         {
   978         origServiceRecord->iGPRSEnableLCPExtension.SetL( clientServiceRecordCopy->iGPRSEnableLCPExtension );
  1022         origServiceRecord->iGPRSEnableLCPExtension.SetL(
       
  1023                 clientServiceRecordCopy->iGPRSEnableLCPExtension );
   979         }
  1024         }
   980     if ( !clientServiceRecordCopy->iGPRSDisablePlainTextAuth.IsNull() )
  1025     if ( !clientServiceRecordCopy->iGPRSDisablePlainTextAuth.IsNull() )
   981         {
  1026         {
   982         origServiceRecord->iGPRSDisablePlainTextAuth.SetL( clientServiceRecordCopy->iGPRSDisablePlainTextAuth );
  1027         origServiceRecord->iGPRSDisablePlainTextAuth.SetL(
       
  1028                 clientServiceRecordCopy->iGPRSDisablePlainTextAuth );
   983         }
  1029         }
   984     if ( !clientServiceRecordCopy->iGPRSAPType.IsNull() )
  1030     if ( !clientServiceRecordCopy->iGPRSAPType.IsNull() )
   985         {
  1031         {
   986         origServiceRecord->iGPRSAPType.SetL( clientServiceRecordCopy->iGPRSAPType );
  1032         origServiceRecord->iGPRSAPType.SetL(
       
  1033                 clientServiceRecordCopy->iGPRSAPType );
   987         }
  1034         }
   988     if ( !clientServiceRecordCopy->iGPRSQOSWarningTimeOut.IsNull() )
  1035     if ( !clientServiceRecordCopy->iGPRSQOSWarningTimeOut.IsNull() )
   989         {
  1036         {
   990         origServiceRecord->iGPRSQOSWarningTimeOut.SetL( clientServiceRecordCopy->iGPRSQOSWarningTimeOut );
  1037         origServiceRecord->iGPRSQOSWarningTimeOut.SetL(
       
  1038                 clientServiceRecordCopy->iGPRSQOSWarningTimeOut );
   991         }
  1039         }
   992     if ( !clientServiceRecordCopy->iGPRSR5DataCompression.IsNull() )
  1040     if ( !clientServiceRecordCopy->iGPRSR5DataCompression.IsNull() )
   993         {
  1041         {
   994         origServiceRecord->iGPRSR5DataCompression.SetL( clientServiceRecordCopy->iGPRSR5DataCompression );
  1042         origServiceRecord->iGPRSR5DataCompression.SetL(
       
  1043                 clientServiceRecordCopy->iGPRSR5DataCompression );
   995         }
  1044         }
   996     if ( !clientServiceRecordCopy->iGPRSR5HeaderCompression.IsNull() )
  1045     if ( !clientServiceRecordCopy->iGPRSR5HeaderCompression.IsNull() )
   997         {
  1046         {
   998         origServiceRecord->iGPRSR5HeaderCompression.SetL( clientServiceRecordCopy->iGPRSR5HeaderCompression );
  1047         origServiceRecord->iGPRSR5HeaderCompression.SetL(
       
  1048                 clientServiceRecordCopy->iGPRSR5HeaderCompression );
   999         }
  1049         }
  1000     if ( !clientServiceRecordCopy->iGPRSPacketFlowIdentifier.IsNull() )
  1050     if ( !clientServiceRecordCopy->iGPRSPacketFlowIdentifier.IsNull() )
  1001         {
  1051         {
  1002         origServiceRecord->iGPRSPacketFlowIdentifier.SetL( clientServiceRecordCopy->iGPRSPacketFlowIdentifier );
  1052         origServiceRecord->iGPRSPacketFlowIdentifier.SetL(
       
  1053                 clientServiceRecordCopy->iGPRSPacketFlowIdentifier );
  1003         }
  1054         }
  1004     if ( !clientServiceRecordCopy->iGPRSUmtsGprsRelease.IsNull() )
  1055     if ( !clientServiceRecordCopy->iGPRSUmtsGprsRelease.IsNull() )
  1005         {
  1056         {
  1006         origServiceRecord->iGPRSUmtsGprsRelease.SetL( clientServiceRecordCopy->iGPRSUmtsGprsRelease );
  1057         origServiceRecord->iGPRSUmtsGprsRelease.SetL(
       
  1058                 clientServiceRecordCopy->iGPRSUmtsGprsRelease );
  1007         }
  1059         }
  1008 
  1060 
  1009     if ( iPacketDataQoSRecord )
  1061     if ( iPacketDataQoSRecord )
  1010         {
  1062         {
  1011         origServiceRecord->iUmtsR99QoSAndOnTable = iPacketDataQoSRecord->RecordId();
  1063         origServiceRecord->iUmtsR99QoSAndOnTable = iPacketDataQoSRecord->RecordId();
  1037         RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
  1089         RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
  1038         RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
  1090         RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
  1039     {
  1091     {
  1040     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_UPDATEBEARERRECORDSL_ENTRY );
  1092     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_UPDATEBEARERRECORDSL_ENTRY );
  1041 
  1093 
       
  1094     CCDUmtsR99QoSAndOnTableRecord* packetDataQoSRecord =
       
  1095             static_cast<CCDUmtsR99QoSAndOnTableRecord*>( aBearerSpecRecordArray[KQosRecordIndex] );
       
  1096 
  1042     delete iPacketDataQoSRecord;
  1097     delete iPacketDataQoSRecord;
  1043     iPacketDataQoSRecord = NULL;
  1098     iPacketDataQoSRecord = NULL;
  1044 
       
  1045     CCDUmtsR99QoSAndOnTableRecord* packetDataQoSRecord =
       
  1046             static_cast<CCDUmtsR99QoSAndOnTableRecord*>( aBearerSpecRecordArray[KQosRecordIndex] );
       
  1047 
       
  1048     iPacketDataQoSRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
  1099     iPacketDataQoSRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
  1049             CCDRecordBase::CreateCopyRecordL( *packetDataQoSRecord ) );
  1100             CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
  1050 
  1101     CopyRecordFieldsL( *packetDataQoSRecord, *iPacketDataQoSRecord );
  1051     iPacketDataQoSRecord->SetElementId( aBearerSpecRecordArray[KQosRecordIndex]->ElementId() );
  1102     iPacketDataQoSRecord->SetElementId( aBearerSpecRecordArray[KQosRecordIndex]->ElementId() );
  1052 
  1103 
  1053     if ( !iPacketDataQoSRecord->RecordId() )
  1104     if ( !iPacketDataQoSRecord->RecordId() )
  1054         {
  1105         {
  1055         iPacketDataQoSRecord->SetRecordId( KCDNewRecordRequest );
  1106         iPacketDataQoSRecord->SetRecordId( KCDNewRecordRequest );
  1081     {
  1132     {
  1082     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERSPECIFICRECORDSL_ENTRY );
  1133     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETBEARERSPECIFICRECORDSL_ENTRY );
  1083 
  1134 
  1084     if ( !iPacketDataQoSRecord )
  1135     if ( !iPacketDataQoSRecord )
  1085         {
  1136         {
  1086         // IAP not yet in CommDat
  1137         // IAP not yet in CommDat.
  1087         GetDefaultQosRecordL( aRecordArray );
  1138         GetDefaultQosRecordL( aRecordArray );
  1088         }
  1139         }
  1089     else
  1140     else
  1090         {
  1141         {
  1091         CCDUmtsR99QoSAndOnTableRecord* qosRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
  1142         CCDUmtsR99QoSAndOnTableRecord* qosRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
  1092                 CCDRecordBase::CreateCopyRecordL( *iPacketDataQoSRecord ) );
  1143                 CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
  1093         CleanupStack::PushL( qosRecord );
  1144         CleanupStack::PushL( qosRecord );
       
  1145         CopyRecordFieldsL( *iPacketDataQoSRecord, *qosRecord );
  1094         qosRecord->SetElementId( iPacketDataQoSRecord->ElementId() );
  1146         qosRecord->SetElementId( iPacketDataQoSRecord->ElementId() );
  1095         aRecordArray.AppendL( static_cast<CommsDat::CCDRecordBase*>( qosRecord ) );
  1147         aRecordArray.AppendL( static_cast<CommsDat::CCDRecordBase*>( qosRecord ) );
  1096         CleanupStack::Pop( qosRecord );
  1148         CleanupStack::Pop( qosRecord );
  1097         }
  1149         }
  1098 
  1150 
  1169         RPointerArray<CommsDat::CCDRecordBase>& aRecordArray )
  1221         RPointerArray<CommsDat::CCDRecordBase>& aRecordArray )
  1170     {
  1222     {
  1171     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETDEFAULTQOSRECORDL_ENTRY );
  1223     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETDEFAULTQOSRECORDL_ENTRY );
  1172 
  1224 
  1173     CCDUmtsR99QoSAndOnTableRecord* packetDataQoSRecord =
  1225     CCDUmtsR99QoSAndOnTableRecord* packetDataQoSRecord =
  1174             static_cast<CCDUmtsR99QoSAndOnTableRecord *>(
  1226             static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
  1175                     CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
  1227                     CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
  1176     CleanupStack::PushL( packetDataQoSRecord );
  1228     CleanupStack::PushL( packetDataQoSRecord );
  1177 
  1229 
  1178     packetDataQoSRecord->iGPRSReqTrafficClass = RPacketQoS::ETrafficClassUnspecified;
  1230     packetDataQoSRecord->iGPRSReqTrafficClass = RPacketQoS::ETrafficClassUnspecified;
  1179     packetDataQoSRecord->iGPRSMinTrafficClass = RPacketQoS::ETrafficClassUnspecified;
  1231     packetDataQoSRecord->iGPRSMinTrafficClass = RPacketQoS::ETrafficClassUnspecified;
  1180     packetDataQoSRecord->iGPRSReqDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
  1232     packetDataQoSRecord->iGPRSReqDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
  1181     packetDataQoSRecord->iGPRSMinDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
  1233     packetDataQoSRecord->iGPRSMinDeliveryOrder = RPacketQoS::EDeliveryOrderUnspecified;
  1182     packetDataQoSRecord->iGPRSReqDeliverErroneousSDU = RPacketQoS::EErroneousSDUDeliveryUnspecified;
  1234     packetDataQoSRecord->iGPRSReqDeliverErroneousSDU =
  1183     packetDataQoSRecord->iGPRSMinDeliverErroneousSDU = RPacketQoS::EErroneousSDUDeliveryUnspecified;
  1235             RPacketQoS::EErroneousSDUDeliveryUnspecified;
       
  1236     packetDataQoSRecord->iGPRSMinDeliverErroneousSDU =
       
  1237             RPacketQoS::EErroneousSDUDeliveryUnspecified;
  1184     packetDataQoSRecord->iGPRSReqMaxSDUSize = 0;
  1238     packetDataQoSRecord->iGPRSReqMaxSDUSize = 0;
  1185     packetDataQoSRecord->iGPRSMinAcceptableMaxSDUSize = 0;
  1239     packetDataQoSRecord->iGPRSMinAcceptableMaxSDUSize = 0;
  1186     packetDataQoSRecord->iGPRSReqMaxUplinkRate = 0;
  1240     packetDataQoSRecord->iGPRSReqMaxUplinkRate = 0;
  1187     packetDataQoSRecord->iGPRSReqMinUplinkRate = 0;
  1241     packetDataQoSRecord->iGPRSReqMinUplinkRate = 0;
  1188     packetDataQoSRecord->iGPRSReqMaxDownlinkRate = 0;
  1242     packetDataQoSRecord->iGPRSReqMaxDownlinkRate = 0;
  1189     packetDataQoSRecord->iGPRSReqMinDownlinkRate = 0;
  1243     packetDataQoSRecord->iGPRSReqMinDownlinkRate = 0;
  1190     packetDataQoSRecord->iGPRSReqBER = RPacketQoS::EBERUnspecified;
  1244     packetDataQoSRecord->iGPRSReqBER = RPacketQoS::EBERUnspecified;
  1191     packetDataQoSRecord->iGPRSMaxBER = RPacketQoS::EBERUnspecified;
  1245     packetDataQoSRecord->iGPRSMaxBER = RPacketQoS::EBERUnspecified;
  1192     packetDataQoSRecord->iGPRSReqSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
  1246     packetDataQoSRecord->iGPRSReqSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
  1193     packetDataQoSRecord->iGPRSMaxSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
  1247     packetDataQoSRecord->iGPRSMaxSDUErrorRatio = RPacketQoS::ESDUErrorRatioUnspecified;
  1194     packetDataQoSRecord->iGPRSReqTrafficHandlingPriority = RPacketQoS::ETrafficPriorityUnspecified;
  1248     packetDataQoSRecord->iGPRSReqTrafficHandlingPriority =
  1195     packetDataQoSRecord->iGPRSMinTrafficHandlingPriority = RPacketQoS::ETrafficPriorityUnspecified;
  1249             RPacketQoS::ETrafficPriorityUnspecified;
       
  1250     packetDataQoSRecord->iGPRSMinTrafficHandlingPriority =
       
  1251             RPacketQoS::ETrafficPriorityUnspecified;
  1196     packetDataQoSRecord->iGPRSReqTransferDelay = 0;
  1252     packetDataQoSRecord->iGPRSReqTransferDelay = 0;
  1197     packetDataQoSRecord->iGPRSMaxTransferDelay = 0;
  1253     packetDataQoSRecord->iGPRSMaxTransferDelay = 0;
  1198     packetDataQoSRecord->iGPRSReqGuaranteedUplinkRate = 0;
  1254     packetDataQoSRecord->iGPRSReqGuaranteedUplinkRate = 0;
  1199     packetDataQoSRecord->iGPRSMinGuaranteedUplinkRate = 0;
  1255     packetDataQoSRecord->iGPRSMinGuaranteedUplinkRate = 0;
  1200     packetDataQoSRecord->iGPRSReqGuaranteedDownlinkRate = 0;
  1256     packetDataQoSRecord->iGPRSReqGuaranteedDownlinkRate = 0;
  1201     packetDataQoSRecord->iGPRSMinGuaranteedDownlinkRate = 0;
  1257     packetDataQoSRecord->iGPRSMinGuaranteedDownlinkRate = 0;
  1202     packetDataQoSRecord->iGPRSSignallingIndication = EFalse;
  1258     packetDataQoSRecord->iGPRSSignallingIndication = EFalse;
  1203     packetDataQoSRecord->iGPRS_ImCnSignallingIndication = EFalse;
  1259     packetDataQoSRecord->iGPRS_ImCnSignallingIndication = EFalse;
  1204     packetDataQoSRecord->iGPRSSourceStatisticsDescriptor = RPacketQoS::ESourceStatisticsDescriptorUnknown;
  1260     packetDataQoSRecord->iGPRSSourceStatisticsDescriptor =
       
  1261             RPacketQoS::ESourceStatisticsDescriptorUnknown;
  1205 
  1262 
  1206     aRecordArray.AppendL( static_cast<CommsDat::CCDRecordBase*>( packetDataQoSRecord ) );
  1263     aRecordArray.AppendL( static_cast<CommsDat::CCDRecordBase*>( packetDataQoSRecord ) );
  1207     CleanupStack::Pop( packetDataQoSRecord );
  1264     CleanupStack::Pop( packetDataQoSRecord );
  1208 
  1265 
  1209     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETDEFAULTQOSRECORDL_EXIT );
  1266     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETDEFAULTQOSRECORDL_EXIT );
  1256                 retVal = KExtensionBaseLevel;
  1313                 retVal = KExtensionBaseLevel;
  1257                 }
  1314                 }
  1258                 break;
  1315                 break;
  1259             case ECmInvalidAttribute:
  1316             case ECmInvalidAttribute:
  1260                 {
  1317                 {
  1261                 retVal = 0;
  1318                 // This attribute has been deprecated since Symbian^4.
       
  1319                 User::Leave( KErrNotSupported );
  1262                 }
  1320                 }
  1263                 break;
  1321                 break;
  1264             case ECmIFAuthRetries:
  1322             case ECmIFAuthRetries:
  1265                 {
  1323                 {
  1266                 retVal = serviceRecord->iGPRSIfAuthRetries;
  1324                 retVal = serviceRecord->iGPRSIfAuthRetries;
  1267                 }
  1325                 }
  1268                 break;
  1326                 break;
  1269             default:
  1327             default:
  1270                 {
  1328                 {
  1271                 User::Leave( KErrNotFound );
  1329                 User::Leave( KErrNotFound ); //TODO, check leave code, should it be KErrNotSupported ?
  1272                 }
  1330                 }
  1273                 break;
  1331                 break;
  1274             }
  1332             }
  1275 
  1333 
  1276         OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINTATTRIBUTEL_EXIT );
  1334         OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINTATTRIBUTEL_EXIT );
  1298 
  1356 
  1299 // ---------------------------------------------------------------------------
  1357 // ---------------------------------------------------------------------------
  1300 // CCmPluginPacketData::GetServiceIntAttributeL
  1358 // CCmPluginPacketData::GetServiceIntAttributeL
  1301 // ---------------------------------------------------------------------------
  1359 // ---------------------------------------------------------------------------
  1302 //
  1360 //
  1303 TUint32 CCmPluginPacketData::GetServiceIntAttributeL( TUint32 aAttribute,
  1361 TUint32 CCmPluginPacketData::GetServiceIntAttributeL(
  1304                                                       RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray )
  1362         TUint32 aAttribute,
       
  1363         RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray )
  1305     {
  1364     {
  1306     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETSERVICEINTATTRIBUTEL_ENTRY );
  1365     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETSERVICEINTATTRIBUTEL_ENTRY );
  1307 
  1366 
  1308     TUint32 retVal( 0 );
  1367     TUint32 retVal( 0 );
  1309 
  1368 
  1408 
  1467 
  1409 // ---------------------------------------------------------------------------
  1468 // ---------------------------------------------------------------------------
  1410 // CCmPluginPacketData::GetQosIntAttributeL
  1469 // CCmPluginPacketData::GetQosIntAttributeL
  1411 // ---------------------------------------------------------------------------
  1470 // ---------------------------------------------------------------------------
  1412 //
  1471 //
  1413 TUint32 CCmPluginPacketData::GetQosIntAttributeL( TUint32 aAttribute,
  1472 TUint32 CCmPluginPacketData::GetQosIntAttributeL(
  1414                                                   RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
  1473         TUint32 aAttribute,
       
  1474         RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
  1415     {
  1475     {
  1416     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETQOSINTATTRIBUTEL_ENTRY );
  1476     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_GETQOSINTATTRIBUTEL_ENTRY );
  1417 
  1477 
  1418     TUint32 retVal( 0 );
  1478     TUint32 retVal( 0 );
  1419 
  1479 
  1420     CCDUmtsR99QoSAndOnTableRecord* qosRecord =
  1480     CCDUmtsR99QoSAndOnTableRecord* qosRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
  1421             static_cast<CCDUmtsR99QoSAndOnTableRecord*>( aBearerSpecRecordArray[KQosRecordIndex] );
  1481             aBearerSpecRecordArray[KQosRecordIndex] );
  1422 
  1482 
  1423     switch ( aAttribute )
  1483     switch ( aAttribute )
  1424         {
  1484         {
  1425         case EGPRSReqTrafficClass:
  1485         case EGPRSReqTrafficClass:
  1426             {
  1486             {
  1575             }
  1635             }
  1576             break;
  1636             break;
  1577         }
  1637         }
  1578 
  1638 
  1579     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETQOSINTATTRIBUTEL_EXIT );
  1639     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETQOSINTATTRIBUTEL_EXIT );
  1580 
       
  1581     return retVal;
  1640     return retVal;
  1582     }
  1641     }
  1583 
  1642 
  1584 // ---------------------------------------------------------------------------
  1643 // ---------------------------------------------------------------------------
  1585 // CCmPluginPacketData::GetBearerBoolAttributeL
  1644 // CCmPluginPacketData::GetBearerBoolAttributeL
  1931         TUint32 aValue,
  1990         TUint32 aValue,
  1932         RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray )
  1991         RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray )
  1933     {
  1992     {
  1934     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETSERVICEINTATTRIBUTEL_ENTRY );
  1993     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETSERVICEINTATTRIBUTEL_ENTRY );
  1935 
  1994 
  1936     CCDWCDMAPacketServiceRecord* serviceRecord =
  1995     CCDWCDMAPacketServiceRecord* serviceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
  1937                 static_cast<CCDWCDMAPacketServiceRecord*>( aGenRecordArray[KServiceRecordIndex] );
  1996             aGenRecordArray[KServiceRecordIndex] );
  1938 
  1997 
  1939     switch ( aAttribute )
  1998     switch ( aAttribute )
  1940         {
  1999         {
  1941         case EPacketDataPDPType:
  2000         case EPacketDataPDPType:
  1942             {
  2001             {
  2033 // ---------------------------------------------------------------------------
  2092 // ---------------------------------------------------------------------------
  2034 // CCmPluginPacketData::SetQosIntAttributeL
  2093 // CCmPluginPacketData::SetQosIntAttributeL
  2035 // ---------------------------------------------------------------------------
  2094 // ---------------------------------------------------------------------------
  2036 //
  2095 //
  2037 void CCmPluginPacketData::SetQosIntAttributeL(
  2096 void CCmPluginPacketData::SetQosIntAttributeL(
  2038     TUint32 aAttribute,
  2097         TUint32 aAttribute,
  2039     TUint32 aValue,
  2098         TUint32 aValue,
  2040     RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
  2099         RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
  2041     {
  2100     {
  2042     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETQOSINTATTRIBUTEL_ENTRY );
  2101     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETQOSINTATTRIBUTEL_ENTRY );
  2043 
  2102 
  2044     CCDUmtsR99QoSAndOnTableRecord* qosRecord =
  2103     CCDUmtsR99QoSAndOnTableRecord* qosRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
  2045                 static_cast<CCDUmtsR99QoSAndOnTableRecord*>( aBearerSpecRecordArray[KQosRecordIndex] );
  2104             aBearerSpecRecordArray[KQosRecordIndex] );
  2046 
  2105 
  2047     switch ( aAttribute )
  2106     switch ( aAttribute )
  2048         {
  2107         {
  2049         case EGPRSReqTrafficClass:
  2108         case EGPRSReqTrafficClass:
  2050             {
  2109             {
  2051             qosRecord->iGPRSReqTrafficClass.SetL( static_cast<RPacketQoS::TTrafficClass>( aValue ) );
  2110             qosRecord->iGPRSReqTrafficClass.SetL(
       
  2111                     static_cast<RPacketQoS::TTrafficClass>( aValue ) );
  2052             }
  2112             }
  2053             break;
  2113             break;
  2054 
  2114 
  2055         case EGPRSMinTrafficClass:
  2115         case EGPRSMinTrafficClass:
  2056             {
  2116             {
  2057             qosRecord->iGPRSMinTrafficClass.SetL( static_cast<RPacketQoS::TTrafficClass>( aValue ) );
  2117             qosRecord->iGPRSMinTrafficClass.SetL(
       
  2118                     static_cast<RPacketQoS::TTrafficClass>( aValue ) );
  2058             }
  2119             }
  2059             break;
  2120             break;
  2060 
  2121 
  2061         case EGPRSReqDeliveryOrder:
  2122         case EGPRSReqDeliveryOrder:
  2062             {
  2123             {
  2063             qosRecord->iGPRSReqDeliveryOrder.SetL( static_cast<RPacketQoS::TDeliveryOrder>( aValue ) );
  2124             qosRecord->iGPRSReqDeliveryOrder.SetL(
       
  2125                     static_cast<RPacketQoS::TDeliveryOrder>( aValue ) );
  2064             }
  2126             }
  2065             break;
  2127             break;
  2066 
  2128 
  2067         case GPRSMinDeliveryOrder:
  2129         case GPRSMinDeliveryOrder:
  2068             {
  2130             {
  2069             qosRecord->iGPRSMinDeliveryOrder.SetL( static_cast<RPacketQoS::TDeliveryOrder>( aValue ) );
  2131             qosRecord->iGPRSMinDeliveryOrder.SetL(
       
  2132                     static_cast<RPacketQoS::TDeliveryOrder>( aValue ) );
  2070             }
  2133             }
  2071             break;
  2134             break;
  2072         case EGPRSReqDeliverErroneousSDU:
  2135         case EGPRSReqDeliverErroneousSDU:
  2073             {
  2136             {
  2074             qosRecord->iGPRSReqDeliverErroneousSDU.SetL( static_cast<RPacketQoS::TErroneousSDUDelivery>( aValue ) );
  2137             qosRecord->iGPRSReqDeliverErroneousSDU.SetL(
       
  2138                     static_cast<RPacketQoS::TErroneousSDUDelivery>( aValue ) );
  2075             }
  2139             }
  2076             break;
  2140             break;
  2077         case EGPRSMinDeliverErroneousSDU:
  2141         case EGPRSMinDeliverErroneousSDU:
  2078             {
  2142             {
  2079             qosRecord->iGPRSMinDeliverErroneousSDU.SetL( static_cast<RPacketQoS::TErroneousSDUDelivery>( aValue ) );
  2143             qosRecord->iGPRSMinDeliverErroneousSDU.SetL(
       
  2144                     static_cast<RPacketQoS::TErroneousSDUDelivery>( aValue ) );
  2080             }
  2145             }
  2081             break;
  2146             break;
  2082         case EGPRSReqMaxSDUSize:
  2147         case EGPRSReqMaxSDUSize:
  2083             {
  2148             {
  2084             qosRecord->iGPRSReqMaxSDUSize.SetL( aValue );
  2149             qosRecord->iGPRSReqMaxSDUSize.SetL( aValue );
  2115             }
  2180             }
  2116             break;
  2181             break;
  2117 
  2182 
  2118         case EGPRSReqBER:
  2183         case EGPRSReqBER:
  2119             {
  2184             {
  2120             qosRecord->iGPRSReqBER.SetL( static_cast<RPacketQoS::TBitErrorRatio>( aValue ) );
  2185             qosRecord->iGPRSReqBER.SetL(
       
  2186                     static_cast<RPacketQoS::TBitErrorRatio>( aValue ) );
  2121             }
  2187             }
  2122             break;
  2188             break;
  2123 
  2189 
  2124         case EGPRSMaxBER:
  2190         case EGPRSMaxBER:
  2125             {
  2191             {
  2126             qosRecord->iGPRSMaxBER.SetL( static_cast<RPacketQoS::TBitErrorRatio>( aValue ) );
  2192             qosRecord->iGPRSMaxBER.SetL(
       
  2193                     static_cast<RPacketQoS::TBitErrorRatio>( aValue ) );
  2127             }
  2194             }
  2128             break;
  2195             break;
  2129 
  2196 
  2130         case EGPRSReqSDUErrorRatio:
  2197         case EGPRSReqSDUErrorRatio:
  2131             {
  2198             {
  2132             qosRecord->iGPRSReqSDUErrorRatio.SetL( static_cast<RPacketQoS::TSDUErrorRatio>( aValue ) );
  2199             qosRecord->iGPRSReqSDUErrorRatio.SetL(
       
  2200                     static_cast<RPacketQoS::TSDUErrorRatio>( aValue ) );
  2133             }
  2201             }
  2134             break;
  2202             break;
  2135 
  2203 
  2136         case EGPRSMaxSDUErrorRatio:
  2204         case EGPRSMaxSDUErrorRatio:
  2137             {
  2205             {
  2138             qosRecord->iGPRSMaxSDUErrorRatio.SetL( static_cast<RPacketQoS::TSDUErrorRatio>( aValue ) );
  2206             qosRecord->iGPRSMaxSDUErrorRatio.SetL(
       
  2207                     static_cast<RPacketQoS::TSDUErrorRatio>( aValue ) );
  2139             }
  2208             }
  2140             break;
  2209             break;
  2141 
  2210 
  2142         case EGPRSReqTrafficHandlingPriority:
  2211         case EGPRSReqTrafficHandlingPriority:
  2143             {
  2212             {
  2144             qosRecord->iGPRSReqTrafficHandlingPriority.SetL( static_cast<RPacketQoS::TTrafficHandlingPriority>( aValue ) );
  2213             qosRecord->iGPRSReqTrafficHandlingPriority.SetL(
       
  2214                     static_cast<RPacketQoS::TTrafficHandlingPriority>( aValue ) );
  2145             }
  2215             }
  2146             break;
  2216             break;
  2147 
  2217 
  2148         case EGPRSMinTrafficHandlingPriority:
  2218         case EGPRSMinTrafficHandlingPriority:
  2149             {
  2219             {
  2150             qosRecord->iGPRSMinTrafficHandlingPriority.SetL( static_cast<RPacketQoS::TTrafficHandlingPriority>( aValue ) );
  2220             qosRecord->iGPRSMinTrafficHandlingPriority.SetL(
       
  2221                     static_cast<RPacketQoS::TTrafficHandlingPriority>( aValue ) );
  2151             }
  2222             }
  2152             break;
  2223             break;
  2153 
  2224 
  2154         case EGPRSReqTransferDelay:
  2225         case EGPRSReqTransferDelay:
  2155             {
  2226             {
  2187             }
  2258             }
  2188             break;
  2259             break;
  2189 
  2260 
  2190         case EGPRSSourceStatisticsDescriptor:
  2261         case EGPRSSourceStatisticsDescriptor:
  2191             {
  2262             {
  2192             qosRecord->iGPRSSourceStatisticsDescriptor.SetL( static_cast<RPacketQoS::TSourceStatisticsDescriptor>( aValue ) );
  2263             qosRecord->iGPRSSourceStatisticsDescriptor.SetL(
       
  2264                     static_cast<RPacketQoS::TSourceStatisticsDescriptor>( aValue ) );
  2193             }
  2265             }
  2194             break;
  2266             break;
  2195 
  2267 
  2196         default:
  2268         default:
  2197             {
  2269             {
  2198             User::Leave( KErrNotFound );
  2270             User::Leave( KErrNotFound );
  2199             }
  2271             }
  2200             break;
  2272             break;
  2201         }
  2273         }
       
  2274 
  2202     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETQOSINTATTRIBUTEL_EXIT );
  2275     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETQOSINTATTRIBUTEL_EXIT );
  2203     }
  2276     }
  2204 
  2277 
  2205 // ---------------------------------------------------------------------------
  2278 // ---------------------------------------------------------------------------
  2206 // CCmPluginPacketData::SetBearerBoolAttributeL
  2279 // CCmPluginPacketData::SetBearerBoolAttributeL
  2207 // ---------------------------------------------------------------------------
  2280 // ---------------------------------------------------------------------------
  2208 //
  2281 //
  2209 void CCmPluginPacketData::SetBearerBoolAttributeL( TUint32 aAttribute, TBool aValue,
  2282 void CCmPluginPacketData::SetBearerBoolAttributeL(
  2210                                         RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
  2283         TUint32 aAttribute,
  2211                                         RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
  2284         TBool aValue,
       
  2285         RPointerArray<CommsDat::CCDRecordBase>& aGenRecordArray,
       
  2286         RPointerArray<CommsDat::CCDRecordBase>& aBearerSpecRecordArray )
  2212     {
  2287     {
  2213     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETBEARERBOOLATTRIBUTEL_ENTRY );
  2288     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETBEARERBOOLATTRIBUTEL_ENTRY );
  2214 
  2289 
  2215     CCDWCDMAPacketServiceRecord* serviceRecord =
  2290     CCDWCDMAPacketServiceRecord* serviceRecord = static_cast<CCDWCDMAPacketServiceRecord*>(
  2216                     static_cast<CCDWCDMAPacketServiceRecord*>( aGenRecordArray[KServiceRecordIndex] );
  2291             aGenRecordArray[KServiceRecordIndex] );
  2217 
  2292 
  2218     switch ( aAttribute )
  2293     switch ( aAttribute )
  2219         {
  2294         {
  2220         case EPacketDataOutGoing:
  2295         case EPacketDataOutGoing:
  2221             {
  2296             {
  2278             serviceRecord->iGPRSDisablePlainTextAuth.SetL( aValue );
  2353             serviceRecord->iGPRSDisablePlainTextAuth.SetL( aValue );
  2279             }
  2354             }
  2280             break;
  2355             break;
  2281         case EGPRSSignallingIndication:
  2356         case EGPRSSignallingIndication:
  2282             {
  2357             {
       
  2358             static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
       
  2359                     aBearerSpecRecordArray[KQosRecordIndex] )
       
  2360                     ->iGPRSSignallingIndication.SetL( aValue );
       
  2361             }
       
  2362             break;
       
  2363         case EGPRS_ImCnSignallingIndication:
       
  2364             {
  2283             static_cast<CCDUmtsR99QoSAndOnTableRecord*>
  2365             static_cast<CCDUmtsR99QoSAndOnTableRecord*>
  2284                  ( aBearerSpecRecordArray[KQosRecordIndex] )->iGPRSSignallingIndication.SetL( aValue );
  2366                  ( aBearerSpecRecordArray[KQosRecordIndex] )
  2285             }
  2367                  ->iGPRS_ImCnSignallingIndication.SetL( aValue );
  2286             break;
       
  2287         case EGPRS_ImCnSignallingIndication:
       
  2288             {
       
  2289             static_cast<CCDUmtsR99QoSAndOnTableRecord*>
       
  2290                  ( aBearerSpecRecordArray[KQosRecordIndex] )->iGPRS_ImCnSignallingIndication.SetL( aValue );
       
  2291             }
  2368             }
  2292             break;
  2369             break;
  2293         case EPacketDataServiceEnableLLMNR:
  2370         case EPacketDataServiceEnableLLMNR:
  2294             {
  2371             {
  2295             serviceRecord->iServiceEnableLlmnr.SetL( aValue );
  2372             serviceRecord->iServiceEnableLlmnr.SetL( aValue );
  2299             {
  2376             {
  2300             User::Leave( KErrNotFound );
  2377             User::Leave( KErrNotFound );
  2301             }
  2378             }
  2302             break;
  2379             break;
  2303         }
  2380         }
       
  2381 
  2304     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETBEARERBOOLATTRIBUTEL_EXIT );
  2382     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETBEARERBOOLATTRIBUTEL_EXIT );
  2305     }
  2383     }
  2306 
  2384 
  2307 
  2385 
  2308 // ---------------------------------------------------------------------------
  2386 // ---------------------------------------------------------------------------
  2470 
  2548 
  2471 // ---------------------------------------------------------------------------
  2549 // ---------------------------------------------------------------------------
  2472 // CCmPluginPacketData::SetBearerString8AttributeL
  2550 // CCmPluginPacketData::SetBearerString8AttributeL
  2473 // ---------------------------------------------------------------------------
  2551 // ---------------------------------------------------------------------------
  2474 //
  2552 //
  2475 void CCmPluginPacketData::SetBearerString8AttributeL( TUint32 /*aAttribute*/, const TDesC8& /*aValue*/,
  2553 void CCmPluginPacketData::SetBearerString8AttributeL(
  2476                                            RPointerArray<CommsDat::CCDRecordBase>& /*aGenRecordArray*/,
  2554         TUint32 /*aAttribute*/,
  2477                                            RPointerArray<CommsDat::CCDRecordBase>& /*aBearerSpecRecordArray*/ )
  2555         const TDesC8& /*aValue*/,
       
  2556         RPointerArray<CommsDat::CCDRecordBase>& /*aGenRecordArray*/,
       
  2557         RPointerArray<CommsDat::CCDRecordBase>& /*aBearerSpecRecordArray*/ )
  2478     {
  2558     {
  2479     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETBEARERSTRING8ATTRIBUTEL_ENTRY );
  2559     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_SETBEARERSTRING8ATTRIBUTEL_ENTRY );
  2480 
  2560 
  2481     User::Leave( KErrNotSupported );
  2561     User::Leave( KErrNotSupported );
  2482 
  2562 
  2483     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETBEARERSTRING8ATTRIBUTEL_EXIT );
  2563     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_SETBEARERSTRING8ATTRIBUTEL_EXIT );
  2484 
       
  2485     return;
  2564     return;
  2486     }
  2565     }
  2487 
  2566 
  2488 
  2567 
  2489 // ---------------------------------------------------------------------------
  2568 // ---------------------------------------------------------------------------
  2529             }
  2608             }
  2530             break;
  2609             break;
  2531         }
  2610         }
  2532 
  2611 
  2533     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINFOINTL_EXIT );
  2612     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINFOINTL_EXIT );
  2534 
       
  2535     return retVal;
  2613     return retVal;
  2536     }
  2614     }
  2537 
  2615 
  2538 // ---------------------------------------------------------------------------
  2616 // ---------------------------------------------------------------------------
  2539 // CCmPluginPacketData::GetBearerInfoBoolL
  2617 // CCmPluginPacketData::GetBearerInfoBoolL
  2587             }
  2665             }
  2588         break;
  2666         break;
  2589         }
  2667         }
  2590 
  2668 
  2591     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINFOBOOLL_EXIT );
  2669     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINFOBOOLL_EXIT );
  2592 
       
  2593     return retVal;
  2670     return retVal;
  2594     }
  2671     }
  2595 
  2672 
  2596 
  2673 
  2597 // ---------------------------------------------------------------------------
  2674 // ---------------------------------------------------------------------------
  2611             }
  2688             }
  2612         break;
  2689         break;
  2613         }
  2690         }
  2614 
  2691 
  2615     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINFOSTRINGL_EXIT );
  2692     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_GETBEARERINFOSTRINGL_EXIT );
  2616 
       
  2617     return retVal;
  2693     return retVal;
  2618     }
  2694     }
  2619 
  2695 
  2620 // ---------------------------------------------------------------------------
  2696 // ---------------------------------------------------------------------------
  2621 // CCmPluginPacketData::GetBearerInfoString8L
  2697 // CCmPluginPacketData::GetBearerInfoString8L
  2978     {
  3054     {
  2979     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_COPYBEARERRECORDSL_ENTRY );
  3055     OstTraceFunctionEntry0( CCMPLUGINPACKETDATA_COPYBEARERRECORDSL_ENTRY );
  2980 
  3056 
  2981     CCmPluginPacketData* plugin = static_cast<CCmPluginPacketData*>( aCopyInstance );
  3057     CCmPluginPacketData* plugin = static_cast<CCmPluginPacketData*>( aCopyInstance );
  2982 
  3058 
  2983     plugin->iPacketDataQoSRecord =
  3059     CCDUmtsR99QoSAndOnTableRecord* qosRecord = static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
  2984         static_cast<CCDUmtsR99QoSAndOnTableRecord*>(
  3060             CCDRecordBase::RecordFactoryL( KCDTIdUmtsR99QoSAndOnTableRecord ) );
  2985                 CCDRecordBase::CreateCopyRecordL( *iPacketDataQoSRecord ) );
  3061     CleanupStack::PushL( qosRecord );
       
  3062     CopyRecordFieldsL( *iPacketDataQoSRecord, *qosRecord );
       
  3063     CleanupStack::Pop( qosRecord );
       
  3064     plugin->iPacketDataQoSRecord = qosRecord;
  2986 
  3065 
  2987     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_COPYBEARERRECORDSL_EXIT );
  3066     OstTraceFunctionExit0( CCMPLUGINPACKETDATA_COPYBEARERRECORDSL_EXIT );
  2988     }
  3067     }
  2989 
  3068 
  2990 // ---------------------------------------------------------------------------
  3069 // ---------------------------------------------------------------------------