Merge "When a node is going down, remove edges in both directions associated with...
[controller.git] / opendaylight / sal / yang-prototype / yang / yang-data-impl / src / main / java / org / opendaylight / controller / yang / data / impl / MutableSimpleNodeTOImpl.java
1 /*\r
2  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
3  *\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
7  */\r
8 package org.opendaylight.controller.yang.data.impl;\r
9 \r
10 import org.opendaylight.controller.yang.common.QName;\r
11 import org.opendaylight.controller.yang.data.api.CompositeNode;\r
12 import org.opendaylight.controller.yang.data.api.ModifyAction;\r
13 import org.opendaylight.controller.yang.data.api.MutableSimpleNode;\r
14 import org.opendaylight.controller.yang.data.api.SimpleNode;\r
15 \r
16 /**\r
17  * @author michal.rehak\r
18  * @param <T> type of simple node value\r
19  * \r
20  */\r
21 public class MutableSimpleNodeTOImpl<T> extends SimpleNodeTOImpl<T> \r
22         implements MutableSimpleNode<T> {\r
23 \r
24     private SimpleNode<T> original;\r
25 \r
26     /**\r
27      * @param qname\r
28      * @param parent\r
29      * @param value\r
30      * @param modifyAction\r
31      */\r
32     public MutableSimpleNodeTOImpl(QName qname, CompositeNode parent, T value,\r
33             ModifyAction modifyAction) {\r
34         super(qname, parent, value, modifyAction);\r
35     }\r
36 \r
37     @Override\r
38     public void setValue(T value) {\r
39         super.setValue(value);\r
40     }\r
41     \r
42     @Override\r
43     public void setModifyAction(ModifyAction action) {\r
44         super.setModificationAction(action);\r
45     }\r
46     \r
47     @Override\r
48     public MutableSimpleNode<T> asMutable() {\r
49         return this;\r
50     }\r
51     \r
52     @Override\r
53     public SimpleNode<T> getOriginal() {\r
54         return original;\r
55     }\r
56     \r
57     /**\r
58      * @param original the original to set\r
59      */\r
60     public void setOriginal(SimpleNode<T> original) {\r
61         this.original = original;\r
62     }\r
63 }\r