@Override public boolean apply(DataObjectModification<Network> modifiedNetwork) { return (ModificationType.WRITE == modifiedNetwork.getModificationType() && NetworkUtils.isRouterExternal(modifiedNetwork.getDataAfter())); } }).transform(new Function<DataObjectModification<Network>, Uuid>() {
@Override public Uuid apply(DataObjectModification<Network> modifiedNetwork) { return modifiedNetwork.getDataAfter().getTenantId(); } }).toSet();
@Override public boolean apply(@Nullable DataObjectModification<T> input) { return input != null && input.getDataAfter() != null && filter.apply(input); } };
@Override public boolean apply(@Nullable DataObjectModification<T> input) { return input != null && input.getDataAfter() != null && filter.apply(input); } };
@Override public boolean apply(@Nullable DataObjectModification<T> input) { return input != null && input.getDataBefore() != null && input.getDataAfter() != null; } };
@Override protected void onDelete(DataObjectModification<VppEndpoint> rootNode, InstanceIdentifier<VppEndpoint> rootIdentifier) { VppEndpointConfEvent event = new VppEndpointConfEvent(rootIdentifier, rootNode.getDataBefore(), rootNode.getDataAfter()); LOG.trace("Dispatching event on delete: {}", event); eventBus.post(event); }
@Override protected void onDelete(DataObjectModification<RendererPolicy> rootNode, InstanceIdentifier<RendererPolicy> rootIdentifier) { RendererPolicyConfEvent event = new RendererPolicyConfEvent(rootIdentifier, rootNode.getDataBefore(), rootNode.getDataAfter()); LOG.trace("Dispatching event on delete: {}", event); eventBus.post(event); }
@Override protected void onWrite(DataObjectModification<VppEndpoint> rootNode, InstanceIdentifier<VppEndpoint> rootIdentifier) { VppEndpointConfEvent event = new VppEndpointConfEvent(rootIdentifier, rootNode.getDataBefore(), rootNode.getDataAfter()); LOG.trace("Dispatching event on write: {}", event); eventBus.post(event); }
@Override protected void onWrite(DataObjectModification<RendererPolicy> rootNode, InstanceIdentifier<RendererPolicy> rootIdentifier) { RendererPolicyConfEvent event = new RendererPolicyConfEvent(rootIdentifier, rootNode.getDataBefore(), rootNode.getDataAfter()); LOG.trace("Dispatching event on write: {}", event); eventBus.post(event); }
@Override protected void onSubtreeModified(DataObjectModification<RendererPolicy> rootNode, InstanceIdentifier<RendererPolicy> rootIdentifier) { RendererPolicyConfEvent event = new RendererPolicyConfEvent(rootIdentifier, rootNode.getDataBefore(), rootNode.getDataAfter()); LOG.trace("Dispatching event on subtree modified: {}", event); eventBus.post(event); }
@Override protected void onSubtreeModified(DataObjectModification<VppEndpoint> rootNode, InstanceIdentifier<VppEndpoint> rootIdentifier) { VppEndpointConfEvent event = new VppEndpointConfEvent(rootIdentifier, rootNode.getDataBefore(), rootNode.getDataAfter()); LOG.trace("Dispatching event on subtree modified: {}", event); eventBus.post(event); }
public static <K, V extends DataObject> void updateCachedDao(final SimpleCachedDao<K, V> valueCachedDao, final K key, final DataTreeModification<V> change) { final V value = change.getRootNode().getDataAfter(); valueCachedDao.update(key, value); }
@Override public void onDataTreeChanged(final Collection<DataTreeModification<Node>> changes) { logger.info("onDataTreeChanged called"); for (final DataTreeModification<Node> change : changes) { final DataObjectModification<Node> changeDiff = change.getRootNode(); if (changeDiff.getModificationType().equals( org.opendaylight.controller.md.sal.binding.api.DataObjectModification.ModificationType.SUBTREE_MODIFIED)) { logger.info("There is a sub-tree modified operation performed"); extractOpenFlowStatistics(changeDiff.getDataAfter()); } } }
@Override protected void onWrite(DataObjectModification<OfOverlayContext> rootNode, InstanceIdentifier<OfOverlayContext> rootIdentifier) { OfOverlayContext ofOverlayCtx = rootNode.getDataAfter(); LOG.trace("on write: \n OfOverlayContext: {} \n rootIdentifier: {}", ofOverlayCtx, rootIdentifier); if (ofOverlayCtx.getNodeConnectorId() != null && ofOverlayCtx.getNodeId() != null) { return; // Location is already on EP } Name portName = ofOverlayCtx.getPortName(); updateLocationBasedOnPortName(portName, rootIdentifier); }
@Override protected void onWrite(DataObjectModification<OfOverlayL3Context> rootNode, InstanceIdentifier<OfOverlayL3Context> rootIdentifier) { OfOverlayL3Context ofOverlayL3Ctx = rootNode.getDataAfter(); LOG.trace("on write: \n OfOverlayL3Context: {} \n rootIdentifier: {}", ofOverlayL3Ctx, rootIdentifier); if (ofOverlayL3Ctx.getNodeConnectorId() != null && ofOverlayL3Ctx.getNodeId() != null) { return; // Location is already on L3EP } Name portName = ofOverlayL3Ctx.getPortName(); updateLocationBasedOnPortName(portName, rootIdentifier); }
private void resolveAndSetNeutron(DataObjectModification<Neutron> originalNeutron) { Neutron oldNeutronBefore = originalNeutron.getDataBefore(); neutronBefore = resolveAndCreateNewNeutron(oldNeutronBefore); Neutron oldNeutronAfter = originalNeutron.getDataAfter(); neutronAfter = resolveAndCreateNewNeutron(oldNeutronAfter); }
private void updateFlowCapableNodeConnector(DataTreeModification<FlowCapableNodeConnector> modifiedDataObject) { try { FlowCapableNodeConnector original = modifiedDataObject.getRootNode().getDataBefore(); FlowCapableNodeConnector update = modifiedDataObject.getRootNode().getDataAfter(); String dpnFromNodeConnectorId = getDpnIdFromNodeConnector(modifiedDataObject); handleNodeConnectorUpdated(dataBroker, dpnFromNodeConnectorId, original, update); } catch (final Exception e) { log.error("Update node connector failed !", e); } }
private void processAddedConnector(final DataTreeModification<T> modification) { final InstanceIdentifier<T> identifier = modification.getRootPath().getRootIdentifier(); InstanceIdentifier<NodeConnector> nodeConnectorInstanceId =identifier.firstIdentifierOf(NodeConnector.class); if (compareIITail(identifier, II_TO_FLOW_CAPABLE_NODE_CONNECTOR)) { FlowCapableNodeConnector flowConnector = (FlowCapableNodeConnector) modification.getRootNode().getDataAfter(); if (!isPortDown(flowConnector)) { notifyNodeConnectorAppeared(nodeConnectorInstanceId, flowConnector); } else { iiToDownFlowCapableNodeConnectors.put(nodeConnectorInstanceId, flowConnector); } } }
@Override public void onDataTreeChanged(@Nonnull final Collection<DataTreeModification<EndpointForwardingTemplateBySubnet>> collection) { for (DataTreeModification<EndpointForwardingTemplateBySubnet> change : collection) { LOG.trace("received modification: {} -> {}", change.getRootPath(), change.getRootNode().getModificationType()); // update cached dao final InstanceIdentifier<EndpointForwardingTemplateBySubnet> changePath = change.getRootPath().getRootIdentifier(); final IpPrefix changeKey = changePath.firstKeyOf(EndpointForwardingTemplateBySubnet.class).getIpPrefix(); SxpListenerUtil.updateCachedDao(templateCachedDao, changeKey, change); final EndpointForwardingTemplateBySubnet epForwardingTemplate = change.getRootNode().getDataAfter(); processWithEPTemplates(epForwardingTemplate); } }
@Override public void onDataTreeChanged(@Nonnull final Collection<DataTreeModification<EndpointPolicyTemplateBySgt>> collection) { for (DataTreeModification<EndpointPolicyTemplateBySgt> change : collection) { LOG.trace("received modification: {} -> {}", change.getRootPath(), change.getRootNode().getModificationType()); // update cached dao final InstanceIdentifier<EndpointPolicyTemplateBySgt> changePath = change.getRootPath().getRootIdentifier(); final Sgt changeKey = changePath.firstKeyOf(EndpointPolicyTemplateBySgt.class).getSgt(); SxpListenerUtil.updateCachedDao(templateCachedDao, changeKey, change); final EndpointPolicyTemplateBySgt epPolicyTemplate = change.getRootNode().getDataAfter(); processWithEPTemplates(epPolicyTemplate); } }