Make DecimalTypeDefinition.getFractionDigits() return int 52/65052/3
authorRobert Varga <robert.varga@pantheon.tech>
Thu, 2 Nov 2017 16:53:34 +0000 (17:53 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Fri, 3 Nov 2017 15:46:02 +0000 (16:46 +0100)
This is required to be a non-null Integer, which may just as well
be a primitive int.

Change-Id: Ibca5afb3dda7ee56e08b60602c9256a02815c284
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/DecimalTypeDefinition.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseDecimalType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedDecimalType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedDecimalType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/TypeDefinitions.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/type/DecimalTypeEffectiveStatementImpl.java
yang/yang-parser-impl/src/test/java/org/opendaylight/yangtools/yang/stmt/EffectiveStatementTypeTest.java
yang/yang-parser-impl/src/test/java/org/opendaylight/yangtools/yang/stmt/YangParserTest.java
yang/yang-parser-impl/src/test/java/org/opendaylight/yangtools/yang/stmt/YangTypes2StmtTest.java

index a00a53257f23d2a5ec52f3ed40e9288fab6df228..31b768888ce042905924ff57c27c42b128430ceb 100644 (file)
@@ -7,8 +7,6 @@
  */
 package org.opendaylight.yangtools.yang.model.api.type;
 
-import javax.annotation.Nonnull;
-
 /**
  * Contains methods for getting data from the YANG <code>type</code> substatement for <code>decimal64</code> built-in
  * type.
@@ -25,5 +23,5 @@ public interface DecimalTypeDefinition extends RangeRestrictedTypeDefinition<Dec
      *
      * @return number of fraction digits
      */
-    @Nonnull Integer getFractionDigits();
+    int getFractionDigits();
 }
index 04e961fbf13187f2e001dbb6f1adb7c3affa3b6d..b0170ea5df660db21422d11f54a2f1fc924016d3 100644 (file)
@@ -15,7 +15,6 @@ import com.google.common.collect.Range;
 import java.math.BigDecimal;
 import java.util.List;
 import java.util.Optional;
-import javax.annotation.Nonnull;
 import org.opendaylight.yangtools.yang.model.api.ConstraintMetaDefinition;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
@@ -76,17 +75,16 @@ final class BaseDecimalType extends AbstractRangeRestrictedBaseType<DecimalTypeD
         return verifyNotNull(IMPLICIT_RANGE_STATEMENTS.get(fractionDigits - 1));
     }
 
-    private final Integer fractionDigits;
+    private final int fractionDigits;
 
     BaseDecimalType(final SchemaPath path, final List<UnknownSchemaNode> unknownSchemaNodes,
-            final Integer fractionDigits, final RangeConstraint<BigDecimal> rangeConstraint) {
+            final int fractionDigits, final RangeConstraint<BigDecimal> rangeConstraint) {
         super(path, unknownSchemaNodes, rangeConstraint);
         this.fractionDigits = fractionDigits;
     }
 
-    @Nonnull
     @Override
-    public Integer getFractionDigits() {
+    public int getFractionDigits() {
         return fractionDigits;
     }
 
index 65a840da6213db1ffc4b4ab88920c9b81f24217a..80a5a6b21c997b54a2897e4c8cec6e93148959f9 100644 (file)
@@ -8,7 +8,6 @@
 package org.opendaylight.yangtools.yang.model.util.type;
 
 import java.util.Collection;
-import javax.annotation.Nonnull;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.Status;
 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
@@ -22,9 +21,8 @@ final class DerivedDecimalType extends AbstractRangeRestrictedDerivedType<Decima
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemNodes);
     }
 
-    @Nonnull
     @Override
-    public Integer getFractionDigits() {
+    public int getFractionDigits() {
         return baseType().getFractionDigits();
     }
 
index a8bb33ebc27d62fbe262b4289781f0a8422b66bd..c587ed47689fc5070a41920c74459e733e22d498 100644 (file)
@@ -8,7 +8,6 @@
 package org.opendaylight.yangtools.yang.model.util.type;
 
 import java.util.Collection;
-import javax.annotation.Nonnull;
 import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
@@ -22,9 +21,8 @@ final class RestrictedDecimalType extends AbstractRangeRestrictedType<DecimalTyp
         super(baseType, path, unknownSchemaNodes, rangeConstraint);
     }
 
-    @Nonnull
     @Override
-    public Integer getFractionDigits() {
+    public int getFractionDigits() {
         return getBaseType().getFractionDigits();
     }
 
index b9dd40a2e27046c127ee610ef6e7c885c5cb25f3..3404bb53e773b493ff7c350011c632ff85d934f5 100644 (file)
@@ -155,7 +155,7 @@ final class TypeDefinitions {
         }
 
         final DecimalTypeDefinition other = castIfEquals(DecimalTypeDefinition.class, type, obj);
-        return other != null && type.getFractionDigits().equals(other.getFractionDigits())
+        return other != null && type.getFractionDigits() == other.getFractionDigits()
                 && type.getRangeConstraint().equals(other.getRangeConstraint());
     }
 
index 30fe521cb06566e72cab6e885a3be158992d6c63..c0b64581c165231456cb3275c6032b7b20664239 100644 (file)
@@ -44,7 +44,7 @@ public final class DecimalTypeEffectiveStatementImpl extends DeclaredEffectiveSt
             }
             if (stmt instanceof FractionDigitsEffectiveStatementImpl) {
                 final Integer digits = ((FractionDigitsEffectiveStatementImpl)stmt).argument();
-                SourceException.throwIf(!baseType.getFractionDigits().equals(digits), ctx.getStatementSourceReference(),
+                SourceException.throwIf(baseType.getFractionDigits() != digits, ctx.getStatementSourceReference(),
                     "Cannot override fraction-digits from base type %s to %s", baseType, digits);
             }
         }
index 622850fe0e6512704425aa450374e09b07a7f77e..e7238016ffe293a8ef25e2f518fa3e4dd1dfc8b5 100644 (file)
@@ -180,7 +180,7 @@ public class EffectiveStatementTypeTest {
         assertEquals(3, decimal64Eff.getRangeConstraint().get().getAllowedRanges().asRanges().size());
         assertNotNull(decimal64Eff.toString());
         assertNotNull(decimal64Eff.hashCode());
-        assertTrue(decimal64Eff.getFractionDigits().equals(2));
+        assertEquals(2, decimal64Eff.getFractionDigits());
         assertFalse(decimal64Eff.equals(null));
         assertFalse(decimal64Eff.equals("test"));
         assertTrue(decimal64Eff.equals(decimal64Eff));
index 9fd68e5daa9d8e7e56c91c4cc850748ef63935cb..325f27f79100dfa17aacb4ffcd99a1fe4edec8d7 100644 (file)
@@ -389,14 +389,14 @@ public class YangParserTest {
         assertEquals(QName.create(BAR, "my-decimal-type"), type.getQName());
         assertEquals(Optional.empty(), type.getUnits());
         assertEquals(Optional.empty(), type.getDefaultValue());
-        assertEquals(6, type.getFractionDigits().intValue());
+        assertEquals(6, type.getFractionDigits());
         assertEquals(1, type.getRangeConstraint().get().getAllowedRanges().asRanges().size());
 
         final DecimalTypeDefinition typeBase = type.getBaseType();
         assertEquals(QName.create(BAR, "decimal64"), typeBase.getQName());
         assertEquals(Optional.empty(), typeBase.getUnits());
         assertEquals(Optional.empty(), typeBase.getDefaultValue());
-        assertEquals(6, typeBase.getFractionDigits().intValue());
+        assertEquals(6, typeBase.getFractionDigits());
         assertEquals(1, typeBase.getRangeConstraint().get().getAllowedRanges().asRanges().size());
 
         assertNull(typeBase.getBaseType());
@@ -412,11 +412,11 @@ public class YangParserTest {
         assertEquals(QName.create(BAR, "my-decimal-type"), type.getQName());
         assertEquals(Optional.empty(), type.getUnits());
         assertEquals(Optional.empty(), type.getDefaultValue());
-        assertEquals(6, type.getFractionDigits().intValue());
+        assertEquals(6, type.getFractionDigits());
         assertEquals(1, type.getRangeConstraint().get().getAllowedRanges().asRanges().size());
 
         final DecimalTypeDefinition baseTypeDecimal = type.getBaseType();
-        assertEquals(6, baseTypeDecimal.getFractionDigits().intValue());
+        assertEquals(6, baseTypeDecimal.getFractionDigits());
     }
 
     @Test
index fec28104efc6153ca11940f0849a44202ae37600..0c6f2cc06f4634b3c312c89a8e92a894148f54b5 100644 (file)
@@ -60,7 +60,7 @@ public class YangTypes2StmtTest {
 
         assertTrue(lfDecimalNode.getType() instanceof DecimalTypeDefinition);
         final DecimalTypeDefinition lfDecimalNodeType = (DecimalTypeDefinition) lfDecimalNode.getType();
-        assertEquals(2, lfDecimalNodeType.getFractionDigits().intValue());
+        assertEquals(2, lfDecimalNodeType.getFractionDigits());
 
         final LeafSchemaNode lfInt8Node = (LeafSchemaNode) result.getDataChildByName(LF_INT8);
         assertNotNull(lfInt8Node);