[ONOS-4938] Defect fix: range interval
Change-Id: I3229d35fb7c80da3bcf150d52ed7e7eba72bb4c8
diff --git a/utils/yangutils/datamodel/src/main/java/org/onosproject/yangutils/datamodel/utils/builtindatatype/YangUint64.java b/utils/yangutils/datamodel/src/main/java/org/onosproject/yangutils/datamodel/utils/builtindatatype/YangUint64.java
index 49a5153..16576c9 100644
--- a/utils/yangutils/datamodel/src/main/java/org/onosproject/yangutils/datamodel/utils/builtindatatype/YangUint64.java
+++ b/utils/yangutils/datamodel/src/main/java/org/onosproject/yangutils/datamodel/utils/builtindatatype/YangUint64.java
@@ -18,7 +18,6 @@
import java.io.Serializable;
import java.math.BigInteger;
-import java.util.regex.Pattern;
/**
* Handles the YANG's Uint16 data type processing.
@@ -40,11 +39,6 @@
private static final String MAX_KEYWORD = "max";
/**
- * YANG's Integer value pattern.
- */
- private static final Pattern NON_NEGATIVE_INTEGER_PATTERN = Pattern.compile("[0-9]+");
-
- /**
* Valid minimum value of YANG's Uint64.
*/
public static final BigInteger MIN_VALUE = BigInteger.valueOf(0);
@@ -71,11 +65,13 @@
value = MIN_VALUE;
} else if (valueInString.matches(MAX_KEYWORD)) {
value = MAX_VALUE;
- } else if (NON_NEGATIVE_INTEGER_PATTERN.matcher(valueInString).matches()) {
- value = new BigInteger(valueInString);
} else {
- throw new DataTypeException("YANG file error : Input value \"" + valueInString + "\" is not a valid " +
- "uint64.");
+ try {
+ value = new BigInteger(valueInString);
+ } catch (Exception e) {
+ throw new DataTypeException("YANG file error : Input value \"" + valueInString + "\" is not a valid " +
+ "uint64.");
+ }
}
if (value.compareTo(MIN_VALUE) < 0) {