+ //Check if the router is associated with any BGP VPN and update the association
+ String routerName = routerPorts.getRouterId();
+ Uuid vpnName = NatUtil.getVpnForRouter(broker, routerName);
+ if(vpnName != null) {
+ InstanceIdentifier<Routermapping> routerMappingId = NatUtil.getRouterVpnMappingId(routerName);
+ Optional<Routermapping> optRouterMapping = NatUtil.read(broker, LogicalDatastoreType.OPERATIONAL, routerMappingId);
+ if(!optRouterMapping.isPresent()){
+ Long vpnId = NatUtil.getVpnId(broker, vpnName.getValue());
+ LOG.debug("Updating router {} to VPN {} association with Id {}", routerName, vpnName, vpnId);
+ Routermapping routerMapping = new RoutermappingBuilder().setKey(new RoutermappingKey(routerName))
+ .setRouterName(routerName).setVpnName(vpnName.getValue()).setVpnId(vpnId).build();
+ MDSALUtil.syncWrite(broker, LogicalDatastoreType.OPERATIONAL, routerMappingId, routerMapping);
+ }
+ }