2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
\r
4 * This program and the accompanying materials are made available under the
\r
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
\r
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
\r
8 package org.opendaylight.controller.yang.data.impl;
\r
10 import java.util.List;
\r
11 import java.util.Map;
\r
13 import org.opendaylight.controller.yang.common.QName;
\r
14 import org.opendaylight.controller.yang.data.api.CompositeNode;
\r
15 import org.opendaylight.controller.yang.data.api.ModifyAction;
\r
16 import org.opendaylight.controller.yang.data.api.MutableCompositeNode;
\r
17 import org.opendaylight.controller.yang.data.api.Node;
\r
20 * @author michal.rehak
\r
23 public class MutableCompositeNodeTOImpl extends CompositeNodeTOImpl
\r
24 implements MutableCompositeNode {
\r
26 private Map<QName, List<Node<?>>> nodeMap;
\r
27 private CompositeNode original;
\r
33 * @param modifyAction
\r
35 public MutableCompositeNodeTOImpl(QName qname, CompositeNode parent,
\r
36 List<Node<?>> value, ModifyAction modifyAction) {
\r
37 super(qname, parent, value, modifyAction);
\r
44 public void init() {
\r
45 if (!getChildren().isEmpty()) {
\r
46 nodeMap = NodeUtils.buildNodeMap(getChildren());
\r
51 public void setValue(List<Node<?>> value) {
\r
52 super.setValue(value);
\r
56 public void setModifyAction(ModifyAction action) {
\r
57 super.setModificationAction(action);
\r
61 protected Map<QName, List<Node<?>>> getNodeMap() {
\r
66 public MutableCompositeNode asMutable() {
\r
71 public CompositeNode getOriginal() {
\r
76 * @param original the original to set
\r
78 public void setOriginal(CompositeNode original) {
\r
79 this.original = original;
\r