Added YANG typedef support in the YANG parser
[controller.git] / opendaylight / sal / yang-prototype / code-generator / yang-model-parser-impl / src / main / java / org / opendaylight / controller / yang / model / parser / builder / impl / TypedefBuilder.java
index 1a2c43d148689ecf4f9065a1254c06d181611cb9..3a8813fd6574ae4751aad0adfb713f97eb33dbe3 100644 (file)
@@ -32,6 +32,7 @@ public class TypedefBuilder implements TypeDefinitionBuilder,
     private String reference;
     private Status status;
     private String units;
+    private Object defaultValue;
 
     TypedefBuilder(QName qname) {
         this.qname = qname;
@@ -53,6 +54,7 @@ public class TypedefBuilder implements TypeDefinitionBuilder,
                 instance.setPath(schemaPath);
                 instance.setBaseType(baseType);
                 instance.setUnits(units);
+                instance.setDefaultValue(defaultValue);
                 return instance;
             } else {
                 // type
@@ -96,6 +98,11 @@ public class TypedefBuilder implements TypeDefinitionBuilder,
         this.units = units;
     }
 
+    @Override
+    public void setDefaultValue(Object defaultValue) {
+        this.defaultValue = defaultValue;
+    }
+
     @Override
     public TypeDefinition<?> getType() {
         return baseType;
@@ -111,6 +118,11 @@ public class TypedefBuilder implements TypeDefinitionBuilder,
         return baseType;
     }
 
+    @Override
+    public void addUnknownSchemaNode(UnknownSchemaNodeBuilder unknownSchemaNodeBuilder) {
+        // TODO
+    }
+
     private static class TypeDefinitionImpl<T extends TypeDefinition<T>>
             implements TypeDefinition<T> {
 
@@ -119,6 +131,7 @@ public class TypedefBuilder implements TypeDefinitionBuilder,
         private String description;
         private String reference;
         private Status status = Status.CURRENT;
+        private Object defaultValue;
         private T baseType;
         private String units;
         private List<UnknownSchemaNode> unknownSchemaNodes = Collections.emptyList();
@@ -188,8 +201,11 @@ public class TypedefBuilder implements TypeDefinitionBuilder,
 
         @Override
         public Object getDefaultValue() {
-            // TODO Auto-generated method stub
-            return null;
+            return defaultValue;
+        }
+
+        private void setDefaultValue(Object defaultValue) {
+            this.defaultValue = defaultValue;
         }
 
         @Override