Added YANG typedef support in the YANG parser 69/669/1
authorMartin Vitez <mvitez@cisco.com>
Thu, 28 Mar 2013 13:19:31 +0000 (14:19 +0100)
committerMartin Vitez <mvitez@cisco.com>
Wed, 24 Jul 2013 11:44:33 +0000 (13:44 +0200)
Added javadoc to builders
Added JUnit test
Fixed hashCode and equals implementation (now only based on QName) for schema Node TOs.

Change-Id: I0d064391ac8de2c77258d3817ce4f7f50ea90350
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Signed-off-by: Martin Vitez <mvitez@cisco.com>
yang-model-api/src/main/java/org/opendaylight/controller/model/api/type/UnknownTypeDefinition.java
yang-model-util/src/main/java/org/opendaylight/controller/model/util/UnknownType.java
yang-model-util/src/main/java/org/opendaylight/controller/model/util/YangTypesConverter.java

index a4da8f7a94dea4616d1675e5f918f43fe34d2fcc..f5f3b178869d49370756cb6c8ed792acc232d83c 100644 (file)
@@ -14,11 +14,14 @@ import org.opendaylight.controller.yang.model.api.TypeDefinition;
 public interface UnknownTypeDefinition extends\r
         TypeDefinition<UnknownTypeDefinition> {\r
 \r
-    public List<RangeConstraint> getRangeStatements();\r
+    List<RangeConstraint> getRangeStatements();\r
 \r
-    public List<LengthConstraint> getLengthStatements();\r
+    List<LengthConstraint> getLengthStatements();\r
 \r
-    public List<PatternConstraint> getPatterns();\r
+    List<PatternConstraint> getPatterns();\r
+\r
+    LengthConstraint getLengthConstraint();\r
+\r
+    Integer getFractionDigits();\r
 \r
-    public LengthConstraint getLengthConstraint();\r
 }\r
index 1553ce0d762ecb39fd1f5b774f5103b4ed741170..7ad57a7646f2ee20991d8d396c99cfb53246d92d 100644 (file)
@@ -31,6 +31,7 @@ public class UnknownType implements UnknownTypeDefinition {
     private final List<RangeConstraint> rangeStatements;\r
     private final List<UnknownSchemaNode> extensions;\r
     private final LengthConstraint lengthConstraint;\r
+    private final Integer fractionDigits;\r
 \r
     private final Status status;\r
     private final String units;\r
@@ -49,6 +50,7 @@ public class UnknownType implements UnknownTypeDefinition {
         private List<RangeConstraint> rangeStatements = Collections.emptyList();\r
         private List<UnknownSchemaNode> extensions = Collections.emptyList();\r
         private LengthConstraint lengthConstraint = null;\r
+        private Integer fractionDigits = null;\r
 \r
         private Status status = Status.CURRENT;\r
         private String units = "";\r
@@ -104,6 +106,11 @@ public class UnknownType implements UnknownTypeDefinition {
             return this;\r
         }\r
 \r
+        public Builder fractionDigits(final Integer fractionDigits) {\r
+            this.fractionDigits = fractionDigits;\r
+            return this;\r
+        }\r
+\r
         public Builder status(Status status) {\r
             this.status = status;\r
             return this;\r
@@ -137,11 +144,12 @@ public class UnknownType implements UnknownTypeDefinition {
         this.status = builder.status;\r
         this.units = builder.units;\r
         this.defaultValue = builder.defaultValue;\r
+        this.fractionDigits = builder.fractionDigits;\r
     }\r
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see\r
      * org.opendaylight.controller.yang.model.api.TypeDefinition#getBaseType()\r
      */\r
@@ -152,7 +160,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see org.opendaylight.controller.yang.model.api.TypeDefinition#getUnits()\r
      */\r
     @Override\r
@@ -162,7 +170,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see\r
      * org.opendaylight.controller.yang.model.api.TypeDefinition#getDefaultValue\r
      * ()\r
@@ -174,7 +182,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see org.opendaylight.controller.yang.model.api.SchemaNode#getQName()\r
      */\r
     @Override\r
@@ -184,7 +192,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see org.opendaylight.controller.yang.model.api.SchemaNode#getPath()\r
      */\r
     @Override\r
@@ -194,7 +202,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see\r
      * org.opendaylight.controller.yang.model.api.SchemaNode#getDescription()\r
      */\r
@@ -205,7 +213,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see org.opendaylight.controller.yang.model.api.SchemaNode#getReference()\r
      */\r
     @Override\r
@@ -215,7 +223,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see org.opendaylight.controller.yang.model.api.SchemaNode#getStatus()\r
      */\r
     @Override\r
@@ -225,7 +233,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see\r
      * org.opendaylight.controller.yang.model.api.SchemaNode#getExtensionSchemaNodes\r
      * ()\r
@@ -237,7 +245,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see\r
      * org.opendaylight.controller.yang.model.api.type.UnknownTypeDefinition\r
      * #getRangeStatements()\r
@@ -249,7 +257,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see\r
      * org.opendaylight.controller.yang.model.api.type.UnknownTypeDefinition\r
      * #getLengthStatements()\r
@@ -261,7 +269,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see\r
      * org.opendaylight.controller.yang.model.api.type.UnknownTypeDefinition\r
      * #getPatterns()\r
@@ -273,7 +281,7 @@ public class UnknownType implements UnknownTypeDefinition {
 \r
     /*\r
      * (non-Javadoc)\r
-     * \r
+     *\r
      * @see\r
      * org.opendaylight.controller.yang.model.api.type.UnknownTypeDefinition\r
      * #getLengthConstraint()\r
@@ -283,6 +291,11 @@ public class UnknownType implements UnknownTypeDefinition {
         return lengthConstraint;\r
     }\r
 \r
+    @Override\r
+    public Integer getFractionDigits() {\r
+        return fractionDigits;\r
+    }\r
+\r
     @Override\r
     public int hashCode() {\r
         final int prime = 31;\r
@@ -437,4 +450,5 @@ public class UnknownType implements UnknownTypeDefinition {
         builder2.append("]");\r
         return builder2.toString();\r
     }\r
+\r
 }\r
index 7f485c3c204c654b8425c6559bf684cefec281e7..1b96adf7cca0261b421b89142d9e20210744c63b 100644 (file)
@@ -92,29 +92,29 @@ public class YangTypesConverter {
     }\r
 \r
     public static TypeDefinition<IntegerTypeDefinition> javaTypeForBaseYangSignedIntegerType(\r
-            String typeName) {\r
+            String typeName, List<RangeConstraint> ranges) {\r
         if (typeName.equals("int8")) {\r
-            return new Int8();\r
+            return new Int8(ranges, null, null);\r
         } else if (typeName.equals("int16")) {\r
-            return new Int16();\r
+            return new Int16(ranges, null, null);\r
         } else if (typeName.equals("int32")) {\r
-            return new Int32();\r
+            return new Int32(ranges, null, null);\r
         } else if (typeName.equals("int64")) {\r
-            return new Int64();\r
+            return new Int64(ranges, null, null);\r
         }\r
         return null;\r
     }\r
 \r
     public static TypeDefinition<UnsignedIntegerTypeDefinition> javaTypeForBaseYangUnsignedIntegerType(\r
-            final String typeName) {\r
+            final String typeName, List<RangeConstraint> ranges) {\r
         if (typeName.equals("uint8")) {\r
-            return new Uint8();\r
+            return new Uint8(ranges, null, null);\r
         } else if (typeName.equals("uint16")) {\r
-            return new Uint16();\r
+            return new Uint16(ranges, null, null);\r
         } else if (typeName.equals("uint32")) {\r
-            return new Uint32();\r
+            return new Uint32(ranges, null, null);\r
         } else if (typeName.equals("uint64")) {\r
-            return new Uint64();\r
+            return new Uint64(ranges, null, null);\r
         }\r
         return null;\r
     }\r