2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.yangtools.yang.data.api;
11 * @author michal.rehak
14 public interface NodeModificationBuilder {
16 abstract Node<?> getMutableEquivalent(Node<?> originalNode);
18 abstract CompositeNode buildDiffTree();
20 abstract void mergeNode(MutableCompositeNode alteredNode);
22 abstract void removeNode(MutableCompositeNode deadNode);
24 abstract void removeNode(MutableSimpleNode<?> deadNode);
26 abstract void deleteNode(MutableSimpleNode<?> deadNode);
28 abstract void deleteNode(MutableCompositeNode deadNode);
30 abstract void replaceNode(MutableCompositeNode replacementNode);
32 abstract void replaceNode(MutableSimpleNode<?> replacementNode);
34 abstract void addNode(MutableCompositeNode newNode);
36 abstract void addNode(MutableSimpleNode<?> newNode);