1. Ignore user given vpnId in config DS.
2. getVpnId() should always read from Operational DS.
3. getVpnId() should return -1 if non exists.
Change-Id: Ife24d50450cded171f04647d0d4d3cfcd0373c43
Signed-off-by: Vishal Thapar <vishal.thapar@ericsson.com>
InstanceIdentifier<VpnInstance> id = idBuilder.build();
InstanceIdentifier<VpnInstance1> idx = id.augmentation(VpnInstance1.class);
- Optional<VpnInstance1> vpn = read(LogicalDatastoreType.CONFIGURATION, idx);
+ Optional<VpnInstance1> vpn = read(LogicalDatastoreType.OPERATIONAL, idx);
if (vpn.isPresent()) {
return vpn.get().getVpnId();
} else {
- return 0;
+ return -1;
}
}
}
private long getVpnId(String vpnName) {
+ //TODO: This should be a Util function
InstanceIdentifier<VpnInstance1> id = InstanceIdentifier.builder(VpnInstances.class)
.child(VpnInstance.class, new VpnInstanceKey(vpnName)).augmentation(VpnInstance1.class).build();
- Optional<VpnInstance1> vpnInstance = read(LogicalDatastoreType.CONFIGURATION, id);
+ Optional<VpnInstance1> vpnInstance = read(LogicalDatastoreType.OPERATIONAL, id);
+ //TODO: Default vpnid should be a constant.
long vpnId = -1;
if(vpnInstance.isPresent()) {
vpnId = vpnInstance.get().getVpnId();
LOG.info("key: {}, value: {}" +identifier, value);
long vpnId = getUniqueId(value.getVpnInstanceName());
- InstanceIdentifier<VpnInstance1> augId = identifier.augmentation(VpnInstance1.class);
- Optional<VpnInstance1> vpnAugmenation = read(LogicalDatastoreType.CONFIGURATION, augId);
- if(vpnAugmenation.isPresent()) {
- VpnInstance1 vpn = vpnAugmenation.get();
- vpnId = vpn.getVpnId();
- LOG.info("VPN ID is {}", vpnId);
- }
VpnInstance opValue = new VpnInstanceBuilder(value).
addAugmentation(VpnInstance1.class, new VpnInstance1Builder().setVpnId(vpnId).build()).build();