@Override
protected void onSubtreeModified(DataObjectModification<OfOverlayL3Context> rootNode,
InstanceIdentifier<OfOverlayL3Context> rootIdentifier) {
Name newPortName = rootNode.getDataAfter().getPortName();
Name oldPortName = rootNode.getDataBefore().getPortName();
LOG.trace("on update: \n old OfOverlayL3Context: {} \n new OfOverlayL3Context: {} \n rootIdentifier: {}",
rootNode.getDataBefore(), rootNode.getDataAfter(), rootIdentifier);
if (oldPortName == null && newPortName == null) {
LOG.debug("Cannot update location for L3EP {} because port-name is missing.",
rootIdentifier.firstKeyOf(EndpointL3.class));
return;
}
if (oldPortName != null && newPortName != null && oldPortName.equals(newPortName)) {
LOG.debug("No need to update location for L3EP {} because port-name {} was not changed.",
rootIdentifier.firstKeyOf(EndpointL3.class), oldPortName.getValue());
return;
}
updateLocationBasedOnPortName(newPortName, rootIdentifier);
}