@Nullable @Override public LeafSetEntryNode<?> build(final NormalizedNodeBuilder<YangInstanceIdentifier.NodeWithValue, ?, LeafSetEntryNode<?>> builder) { LeafSetEntryNode<?> node = builder.build(); String operation = (String) node.getAttributeValue(OPERATION_ATTRIBUTE); if (operation == null) { return node; } if (builder instanceof AttributesBuilder<?>) { ((AttributesBuilder<?>) builder).withAttributes(Collections.<QName, String>emptyMap()); } node = builder.build(); ModifyAction action = ModifyAction.fromXmlValue(operation); if (dataTreeChangeTracker.getDeleteOperationTracker() > 0 || dataTreeChangeTracker.getRemoveOperationTracker() > 0) { return node; } else { if (!action.equals(dataTreeChangeTracker.peekAction())) { dataTreeChangeTracker.pushPath(node.getIdentifier()); dataTreeChangeTracker.addDataTreeChange(new DataTreeChangeTracker.DataTreeChange(node, action, new ArrayList<>(dataTreeChangeTracker.getCurrentPath()))); dataTreeChangeTracker.popPath(); return null; } else { return node; } } }
@Nullable @Override public LeafSetEntryNode<?> build(final NormalizedNodeBuilder<YangInstanceIdentifier.NodeWithValue, ?, LeafSetEntryNode<?>> builder) { LeafSetEntryNode<?> node = builder.build(); String operation = (String) node.getAttributeValue(OPERATION_ATTRIBUTE); if (operation == null) { return node; } if (builder instanceof AttributesBuilder<?>) { ((AttributesBuilder<?>) builder).withAttributes(Collections.<QName, String>emptyMap()); } node = builder.build(); ModifyAction action = ModifyAction.fromXmlValue(operation); if (dataTreeChangeTracker.getDeleteOperationTracker() > 0 || dataTreeChangeTracker.getRemoveOperationTracker() > 0) { return node; } else { if (!action.equals(dataTreeChangeTracker.peekAction())) { dataTreeChangeTracker.pushPath(node.getIdentifier()); dataTreeChangeTracker.addDataTreeChange(new DataTreeChangeTracker.DataTreeChange(node, action, new ArrayList<>(dataTreeChangeTracker.getCurrentPath()))); dataTreeChangeTracker.popPath(); return null; } else { return node; } } }