1600 //the given field is not changed -> don't touch anything... |
1600 //the given field is not changed -> don't touch anything... |
1601 return; |
1601 return; |
1602 } |
1602 } |
1603 } |
1603 } |
1604 |
1604 |
1605 CCDAccessPointRecord* ipprotoAP = NULL; |
1605 CCDAccessPointRecord* ipProtoAP = CommsDatMapperAndValidator::LoadIPProtoAccessPoint(linkAPTagId, iSession.iOwner); |
1606 |
1606 |
1607 if (!CommsDatMapperAndValidator::IsIPProtoAPAlreadyExistL(linkAPTagId, iSession.iOwner)) |
1607 if (!ipProtoAP) |
1608 { |
1608 { |
1609 //The IPProto AP is not existing yet. Generate one. |
1609 //The IPProto AP is not existing yet. Generate one. |
1610 ipprotoAP = CommsDatMapperAndValidator::GenerateIPProtoAPL(IPProtoBaseTagId, |
1610 ipProtoAP = CommsDatMapperAndValidator::GenerateIPProtoAPL(IPProtoBaseTagId, linkAPTagId, iSession.iOwner); |
1611 linkAPTagId, |
1611 CleanupStack::PushL(ipProtoAP); |
1612 iSession.iOwner); |
|
1613 |
|
1614 CleanupStack::PushL(ipprotoAP); |
|
1615 |
1612 |
1616 //save the generated AP record |
1613 //save the generated AP record |
1617 ipprotoAP->StoreL(iSession.iOwner); |
1614 ipProtoAP->StoreL(iSession.iOwner); |
1618 } |
1615 } |
1619 else |
1616 else |
1620 { |
1617 { |
1621 //The IPProto AP is already exsiting. Use that one. |
1618 //The IPProto AP is already exsiting. Use that one. |
1622 ipprotoAP = CommsDatMapperAndValidator::LoadTheAPL(linkAPTagId, iSession.iOwner); |
1619 CleanupStack::PushL(ipProtoAP); |
1623 |
|
1624 CleanupStack::PushL(ipprotoAP); |
|
1625 } |
1620 } |
1626 |
1621 |
1627 TMDBElementId elemId = ipprotoAP->ElementId(); |
1622 TMDBElementId elemId = ipProtoAP->ElementId(); |
1628 elemId &= KCDMaskHideAttrAndRes; |
1623 elemId &= KCDMaskHideAttrAndRes; |
1629 TMDBElementId tableAndRecordBitMask = KCDMaskShowRecordType | KCDMaskShowRecordId; |
1624 TMDBElementId tableAndRecordBitMask = KCDMaskShowRecordType | KCDMaskShowRecordId; |
1630 elemId &= tableAndRecordBitMask; |
1625 elemId &= tableAndRecordBitMask; |
1631 |
1626 |
1632 //a) update the APPrioritySelPol record to point to the newly creeated AP record |
1627 //a) update the APPrioritySelPol record to point to the newly creeated AP record |
1640 1 == aLinkNumber*/) |
1635 1 == aLinkNumber*/) |
1641 { |
1636 { |
1642 CommsDatMapperAndValidator::ModifyDefaultTierRecordL(elemId, iSession.iOwner); |
1637 CommsDatMapperAndValidator::ModifyDefaultTierRecordL(elemId, iSession.iOwner); |
1643 } |
1638 } |
1644 |
1639 |
1645 CleanupStack::PopAndDestroy(ipprotoAP); |
1640 CleanupStack::PopAndDestroy(ipProtoAP); |
1646 } |
1641 } |
1647 |
1642 |
1648 void CCDMapperIAPPrioritySelectionPolicyRecord::DeleteIPProtoAPL(CMDBRecordLink<CCDAccessPointRecord>*& aAPPriorityField) |
1643 void CCDMapperIAPPrioritySelectionPolicyRecord::DeleteIPProtoAPL(CMDBRecordLink<CCDAccessPointRecord>*& aAPPriorityField) |
1649 { |
1644 { |
1650 TInt refCount = CommsDatMapperAndValidator::CountReferenceToThisIPProtoAPL(*aAPPriorityField, iSession.iOwner); |
1645 TInt refCount = CommsDatMapperAndValidator::CountReferenceToThisIPProtoAPL(*aAPPriorityField, iSession.iOwner); |