From 11806151529a522cf0a27b85e210d1eec433a464 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Mon, 8 Feb 2021 18:06:40 +0100 Subject: [PATCH] Remove yang.model.util.BaseTypes The only thing used from this class are the QName constants. Disperse them among their respective TypeDefinition specialications, eliminating the need for a centralized place. This is the first step in resolving model-util/parser-rfc7950 dependency conundrum. JIRA: YANGTOOLS-1052 Change-Id: Ib69814bb872ccd327e577e1efe83e9510288c025 Signed-off-by: Robert Varga --- .../model/api/type/BinaryTypeDefinition.java | 25 +++-- .../model/api/type/BitsTypeDefinition.java | 10 +- .../model/api/type/BooleanTypeDefinition.java | 9 +- .../model/api/type/DecimalTypeDefinition.java | 14 ++- .../model/api/type/EmptyTypeDefinition.java | 6 + .../model/api/type/EnumTypeDefinition.java | 7 ++ .../api/type/IdentityrefTypeDefinition.java | 7 ++ .../InstanceIdentifierTypeDefinition.java | 7 ++ .../model/api/type/Int16TypeDefinition.java | 6 + .../model/api/type/Int32TypeDefinition.java | 6 + .../model/api/type/Int64TypeDefinition.java | 6 + .../model/api/type/Int8TypeDefinition.java | 6 + .../model/api/type/LeafrefTypeDefinition.java | 6 + .../model/api/type/StringTypeDefinition.java | 7 ++ .../model/api/type/Uint16TypeDefinition.java | 6 + .../model/api/type/Uint32TypeDefinition.java | 6 + .../model/api/type/Uint64TypeDefinition.java | 6 + .../model/api/type/Uint8TypeDefinition.java | 7 ++ .../model/api/type/UnionTypeDefinition.java | 11 +- .../yangtools/yang/model/util/BaseTypes.java | 106 ------------------ .../yang/model/util/type/BaseBinaryType.java | 3 +- .../yang/model/util/type/BaseBooleanType.java | 3 +- .../yang/model/util/type/BaseEmptyType.java | 3 +- .../util/type/BaseInstanceIdentifierType.java | 3 +- .../yang/model/util/type/BaseInt16Type.java | 3 +- .../yang/model/util/type/BaseInt32Type.java | 3 +- .../yang/model/util/type/BaseInt64Type.java | 3 +- .../yang/model/util/type/BaseInt8Type.java | 3 +- .../yang/model/util/type/BaseStringType.java | 3 +- .../yang/model/util/type/BaseUint16Type.java | 3 +- .../yang/model/util/type/BaseUint32Type.java | 3 +- .../yang/model/util/type/BaseUint64Type.java | 3 +- .../yang/model/util/type/BaseUint8Type.java | 3 +- .../yang/model/util/BaseTypesTest.java | 23 ---- .../yang/model/util/BinaryTypeTest.java | 2 +- .../yang/model/util/BooleanTypeTest.java | 2 +- .../yang/model/util/EmptyTypeTest.java | 2 +- .../yangtools/yang/stmt/AugmentTest.java | 4 +- .../yang/stmt/TypedefConstraintsTest.java | 3 +- 39 files changed, 154 insertions(+), 185 deletions(-) delete mode 100644 yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/BaseTypes.java delete mode 100644 yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BaseTypesTest.java diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BinaryTypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BinaryTypeDefinition.java index 7d1a124277..767c728d87 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BinaryTypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BinaryTypeDefinition.java @@ -10,23 +10,24 @@ package org.opendaylight.yangtools.yang.model.api.type; import java.util.Objects; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; /** - * The binary built-in type represents any binary data, i.e., a sequence of - * octets. - *
- * Binary values are encoded with the base64 encoding scheme (see [RFC4648], Section - * 4).
- * The canonical form of a binary value follows the rules in [RFC4648]. + * The binary built-in type represents any binary data, i.e., a sequence of octets. Binary values are encoded with the + * Base64 encoding scheme (see [RFC4648], Section 4).
+ * The canonical form of a binary value follows the rules defined in + * [RFC4648]. * - *
- * This interface was modeled according to definition in [RFC-6020] The binary - * Built-In Type + *

+ * This interface was modeled according to definition in + * [RFC-6020] The binary Built-In Type */ public interface BinaryTypeDefinition extends LengthRestrictedTypeDefinition { + /** + * Well-known QName of the {@code binary} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "binary").intern(); static String toString(final @NonNull BinaryTypeDefinition type) { return TypeDefinitions.toStringHelper(type).add("length", type.getLengthConstraint().orElse(null)).toString(); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BitsTypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BitsTypeDefinition.java index 0aa6083c31..e8d98ae92e 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BitsTypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BitsTypeDefinition.java @@ -11,7 +11,9 @@ import java.util.Collection; import java.util.Objects; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.common.Uint32; +import org.opendaylight.yangtools.yang.common.YangConstants; import org.opendaylight.yangtools.yang.model.api.DocumentedNode; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; @@ -19,11 +21,15 @@ import org.opendaylight.yangtools.yang.model.api.TypeDefinition; * Makes is possible to access to the individual bits values of this type. */ public interface BitsTypeDefinition extends TypeDefinition { + /** + * Well-known QName of the {@code bits} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "bits").intern(); + /** * Returns all bit values. * - * @return list of Bit type instastances with data about all - * individual bits of bits YANG built-in type + * @return list of {@code Bit} type instances with data about all individual bits of {@code bits} YANG built-in type */ @NonNull Collection getBits(); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BooleanTypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BooleanTypeDefinition.java index 7b186895ca..4a7eb2bbf5 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BooleanTypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BooleanTypeDefinition.java @@ -9,13 +9,18 @@ package org.opendaylight.yangtools.yang.model.api.type; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; /** - * Marker interface which marks that type definition represents the built-in - * YANG boolean type. + * Marker interface which marks that type definition represents the built-in YANG {@code boolean} type. */ public interface BooleanTypeDefinition extends TypeDefinition { + /** + * Well-known QName of the {@code boolean} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "boolean").intern(); static int hashCode(final @NonNull BooleanTypeDefinition type) { return TypeDefinitions.basicHashCode(type); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/DecimalTypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/DecimalTypeDefinition.java index 4ef5eb9c3b..3a2e73ca9f 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/DecimalTypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/DecimalTypeDefinition.java @@ -9,20 +9,26 @@ package org.opendaylight.yangtools.yang.model.api.type; import java.math.BigDecimal; import java.util.Objects; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; /** * Contains methods for getting data from the YANG type substatement for decimal64 built-in * type. */ public interface DecimalTypeDefinition extends RangeRestrictedTypeDefinition { + /** + * Well-known QName of the {@code decimal64} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "decimal64").intern(); + /** * Returns integer between 1 and 18 inclusively. * *

- * The "fraction-digits" statement controls the size of the minimum - * difference between values of a decimal64 type, by restricting the value - * space to numbers that are expressible as "i x 10^-n" where n is the - * fraction-digits argument. + * The "fraction-digits" statement controls the size of the minimum difference between values of a decimal64 type, + * by restricting the value space to numbers that are expressible as "i x 10^-n" where n is the fraction-digits + * argument. * * @return number of fraction digits */ diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/EmptyTypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/EmptyTypeDefinition.java index 7595744555..1648bf2d15 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/EmptyTypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/EmptyTypeDefinition.java @@ -9,9 +9,15 @@ package org.opendaylight.yangtools.yang.model.api.type; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; public interface EmptyTypeDefinition extends TypeDefinition { + /** + * Well-known QName of the {@code empty} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "empty").intern(); static int hashCode(final @NonNull EmptyTypeDefinition type) { return TypeDefinitions.basicHashCode(type); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/EnumTypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/EnumTypeDefinition.java index 05d4ac3f9d..67448df4c8 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/EnumTypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/EnumTypeDefinition.java @@ -11,6 +11,8 @@ import java.util.List; import java.util.Objects; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; import org.opendaylight.yangtools.yang.model.api.DocumentedNode; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; @@ -18,6 +20,11 @@ import org.opendaylight.yangtools.yang.model.api.TypeDefinition; * Makes is possible to access to the individual enumeration values of this type. */ public interface EnumTypeDefinition extends TypeDefinition { + /** + * Well-known QName of the {@code enumeration} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "enumeration").intern(); + /** * Contains the methods for accessing the data about the concrete enumeration item which represents {@code enum} * YANG type. diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/IdentityrefTypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/IdentityrefTypeDefinition.java index 0f572d22b1..573c2bf065 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/IdentityrefTypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/IdentityrefTypeDefinition.java @@ -11,6 +11,8 @@ import java.util.Objects; import java.util.Set; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; @@ -18,6 +20,11 @@ import org.opendaylight.yangtools.yang.model.api.TypeDefinition; * Contains method for getting data from identityref built-in YANG type. */ public interface IdentityrefTypeDefinition extends TypeDefinition { + /** + * Well-known QName of the {@code identityref} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "identityref").intern(); + /** * Returns the set of identities this reference points to. * diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/InstanceIdentifierTypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/InstanceIdentifierTypeDefinition.java index e828f192d5..e0de16bf6a 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/InstanceIdentifierTypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/InstanceIdentifierTypeDefinition.java @@ -10,12 +10,19 @@ package org.opendaylight.yangtools.yang.model.api.type; import java.util.Objects; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; /** * Contains methods for getting data from the instance-identifier YANG built-in type. */ public interface InstanceIdentifierTypeDefinition extends RequireInstanceRestrictedTypeDefinition { + /** + * Well-known QName of the {@code instance-identifier} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "instance-identifier").intern(); + static int hashCode(final @NonNull InstanceIdentifierTypeDefinition type) { return Objects.hash(type.getQName(), type.getUnknownSchemaNodes(), type.getBaseType(), type.getUnits().orElse(null), type.getDefaultValue().orElse(null), type.requireInstance()); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int16TypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int16TypeDefinition.java index d8856e3473..10d98c1e17 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int16TypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int16TypeDefinition.java @@ -9,6 +9,8 @@ package org.opendaylight.yangtools.yang.model.api.type; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; /** * Type definition derived from int16 type. @@ -16,6 +18,10 @@ import org.eclipse.jdt.annotation.Nullable; * @author Robert Varga */ public interface Int16TypeDefinition extends RangeRestrictedTypeDefinition { + /** + * Well-known QName of the {@code int16} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "int16").intern(); static int hashCode(final @NonNull Int16TypeDefinition type) { return TypeDefinitions.hashCode(type); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int32TypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int32TypeDefinition.java index e4874433df..3d252683b7 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int32TypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int32TypeDefinition.java @@ -9,6 +9,8 @@ package org.opendaylight.yangtools.yang.model.api.type; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; /** * Type definition derived from int32 type. @@ -16,6 +18,10 @@ import org.eclipse.jdt.annotation.Nullable; * @author Robert Varga */ public interface Int32TypeDefinition extends RangeRestrictedTypeDefinition { + /** + * Well-known QName of the {@code int32} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "int32").intern(); static int hashCode(final @NonNull Int32TypeDefinition type) { return TypeDefinitions.hashCode(type); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int64TypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int64TypeDefinition.java index d27267f38a..8a260f904d 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int64TypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int64TypeDefinition.java @@ -9,6 +9,8 @@ package org.opendaylight.yangtools.yang.model.api.type; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; /** * Type definition derived from int64 type. @@ -16,6 +18,10 @@ import org.eclipse.jdt.annotation.Nullable; * @author Robert Varga */ public interface Int64TypeDefinition extends RangeRestrictedTypeDefinition { + /** + * Well-known QName of the {@code int64} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "int64").intern(); static int hashCode(final @NonNull Int64TypeDefinition type) { return TypeDefinitions.hashCode(type); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int8TypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int8TypeDefinition.java index d5f94d7000..a830f4b6cc 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int8TypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Int8TypeDefinition.java @@ -9,6 +9,8 @@ package org.opendaylight.yangtools.yang.model.api.type; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; /** * Type definition derived from int8 type. @@ -16,6 +18,10 @@ import org.eclipse.jdt.annotation.Nullable; * @author Robert Varga */ public interface Int8TypeDefinition extends RangeRestrictedTypeDefinition { + /** + * Well-known QName of the {@code int8} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "int8").intern(); static int hashCode(final @NonNull Int8TypeDefinition type) { return TypeDefinitions.hashCode(type); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/LeafrefTypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/LeafrefTypeDefinition.java index 53c9bbee1d..777f308920 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/LeafrefTypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/LeafrefTypeDefinition.java @@ -10,9 +10,15 @@ package org.opendaylight.yangtools.yang.model.api.type; import java.util.Objects; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; import org.opendaylight.yangtools.yang.model.api.PathExpression; public interface LeafrefTypeDefinition extends RequireInstanceRestrictedTypeDefinition { + /** + * Well-known QName of the {@code leafref} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "leafref").intern(); PathExpression getPathStatement(); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/StringTypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/StringTypeDefinition.java index 0772d5bb94..cab16512e9 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/StringTypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/StringTypeDefinition.java @@ -11,11 +11,18 @@ import java.util.List; import java.util.Objects; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; /** * Contains method for getting data from the string YANG built-in type. */ public interface StringTypeDefinition extends LengthRestrictedTypeDefinition { + /** + * Well-known QName of the {@code string} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "string").intern(); + /** * Returns patterns specified in the string. * diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint16TypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint16TypeDefinition.java index 9c42a0a9ce..06c5f92a1e 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint16TypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint16TypeDefinition.java @@ -9,7 +9,9 @@ package org.opendaylight.yangtools.yang.model.api.type; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.common.Uint16; +import org.opendaylight.yangtools.yang.common.YangConstants; /** * Type definition derived from uint16 type. @@ -17,6 +19,10 @@ import org.opendaylight.yangtools.yang.common.Uint16; * @author Robert Varga */ public interface Uint16TypeDefinition extends RangeRestrictedTypeDefinition { + /** + * Well-known QName of the {@code uint16} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "uint16").intern(); static int hashCode(final @NonNull Uint16TypeDefinition type) { return TypeDefinitions.hashCode(type); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint32TypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint32TypeDefinition.java index d143bfb6c7..43ccf2d925 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint32TypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint32TypeDefinition.java @@ -9,7 +9,9 @@ package org.opendaylight.yangtools.yang.model.api.type; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.common.Uint32; +import org.opendaylight.yangtools.yang.common.YangConstants; /** * Type definition derived from uint32 type. @@ -17,6 +19,10 @@ import org.opendaylight.yangtools.yang.common.Uint32; * @author Robert Varga */ public interface Uint32TypeDefinition extends RangeRestrictedTypeDefinition { + /** + * Well-known QName of the {@code uint32} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "uint32").intern(); static int hashCode(final @NonNull Uint32TypeDefinition type) { return TypeDefinitions.hashCode(type); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint64TypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint64TypeDefinition.java index fc30fbdda8..16da42267c 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint64TypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint64TypeDefinition.java @@ -9,7 +9,9 @@ package org.opendaylight.yangtools.yang.model.api.type; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.common.Uint64; +import org.opendaylight.yangtools.yang.common.YangConstants; /** * Type definition derived from uint64 type. @@ -17,6 +19,10 @@ import org.opendaylight.yangtools.yang.common.Uint64; * @author Robert Varga */ public interface Uint64TypeDefinition extends RangeRestrictedTypeDefinition { + /** + * Well-known QName of the {@code uint64} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "uint64").intern(); static int hashCode(final @NonNull Uint64TypeDefinition type) { return TypeDefinitions.hashCode(type); diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint8TypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint8TypeDefinition.java index a4fe95c241..8b7cb1b762 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint8TypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/Uint8TypeDefinition.java @@ -9,7 +9,9 @@ package org.opendaylight.yangtools.yang.model.api.type; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.common.Uint8; +import org.opendaylight.yangtools.yang.common.YangConstants; /** * Type definition derived from uint8 type. @@ -17,6 +19,11 @@ import org.opendaylight.yangtools.yang.common.Uint8; * @author Robert Varga */ public interface Uint8TypeDefinition extends RangeRestrictedTypeDefinition { + /** + * Well-known QName of the {@code uint8} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "uint8").intern(); + static int hashCode(final @NonNull Uint8TypeDefinition type) { return TypeDefinitions.hashCode(type); } diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/UnionTypeDefinition.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/UnionTypeDefinition.java index 65cda26a48..8c88c70cca 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/UnionTypeDefinition.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/UnionTypeDefinition.java @@ -9,17 +9,22 @@ package org.opendaylight.yangtools.yang.model.api.type; import java.util.List; import java.util.Objects; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; /** * Contains the method which access union item in the union type. */ public interface UnionTypeDefinition extends TypeDefinition { + /** + * Well-known QName of the {@code union} built-in type. + */ + QName QNAME = QName.create(YangConstants.RFC6020_YANG_MODULE, "union").intern(); /** - * Returns type definitions which represent the values of the arguments for - * all YANG type substatement in the main union - * statement. + * Returns type definitions which represent the values of the arguments for all YANG {@code type} substatement in + * the main {@code union} statement. * * @return list of the type definition which contains the union items. */ diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/BaseTypes.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/BaseTypes.java deleted file mode 100644 index 1d96038670..0000000000 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/BaseTypes.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ -package org.opendaylight.yangtools.yang.model.util; - -import com.google.common.base.Strings; -import com.google.common.collect.ImmutableSet; -import org.opendaylight.yangtools.yang.common.QName; -import org.opendaylight.yangtools.yang.common.YangConstants; -import org.opendaylight.yangtools.yang.model.api.TypeDefinition; - -/** - * Utility methods and constants to work with built-in YANG types. - */ -public final class BaseTypes { - - private BaseTypes() { - } - - public static final QName BINARY_QNAME = constructQName("binary"); - public static final QName BITS_QNAME = constructQName("bits"); - public static final QName BOOLEAN_QNAME = constructQName("boolean"); - public static final QName DECIMAL64_QNAME = constructQName("decimal64"); - public static final QName EMPTY_QNAME = constructQName("empty"); - public static final QName ENUMERATION_QNAME = constructQName("enumeration"); - public static final QName IDENTITYREF_QNAME = constructQName("identityref"); - public static final QName INSTANCE_IDENTIFIER_QNAME = constructQName("instance-identifier"); - public static final QName INT8_QNAME = constructQName("int8"); - public static final QName INT16_QNAME = constructQName("int16"); - public static final QName INT32_QNAME = constructQName("int32"); - public static final QName INT64_QNAME = constructQName("int64"); - public static final QName LEAFREF_QNAME = constructQName("leafref"); - public static final QName STRING_QNAME = constructQName("string"); - public static final QName UINT8_QNAME = constructQName("uint8"); - public static final QName UINT16_QNAME = constructQName("uint16"); - public static final QName UINT32_QNAME = constructQName("uint32"); - public static final QName UINT64_QNAME = constructQName("uint64"); - public static final QName UNION_QNAME = constructQName("union"); - - private static final ImmutableSet BUILT_IN_TYPES = ImmutableSet.builder() - .add(BINARY_QNAME) - .add(BITS_QNAME) - .add(BOOLEAN_QNAME) - .add(DECIMAL64_QNAME) - .add(EMPTY_QNAME) - .add(ENUMERATION_QNAME) - .add(IDENTITYREF_QNAME) - .add(INSTANCE_IDENTIFIER_QNAME) - .add(INT8_QNAME) - .add(INT16_QNAME) - .add(INT32_QNAME) - .add(INT64_QNAME) - .add(LEAFREF_QNAME) - .add(STRING_QNAME) - .add(UINT8_QNAME) - .add(UINT16_QNAME) - .add(UINT32_QNAME) - .add(UINT64_QNAME) - .add(UNION_QNAME) - .build(); - - /** - * Construct QName for Built-in base Yang type. The namespace for built-in - * base yang types is defined as: urn:ietf:params:xml:ns:yang:1 - * - * @param typeName - * yang type name - * @return built-in base yang type QName. - */ - public static QName constructQName(final String typeName) { - return QName.create(YangConstants.RFC6020_YANG_MODULE, typeName).intern(); - } - - /** - * Returns true if supplied type is representation of built-in YANG type as - * per RFC 6020. - * - *

- * See package documentation for description of base types. - * - * @param type A type name - * @return true if type is built-in YANG Types. - */ - public static boolean isYangBuildInType(final String type) { - return !Strings.isNullOrEmpty(type) && BUILT_IN_TYPES.contains( - QName.create(YangConstants.RFC6020_YANG_MODULE, type)); - } - - /** - * Returns true if supplied type is representation of built-in YANG type as - * per RFC 6020. - * - *

- * See package documentation for description of base types. - * - * @param type Type definition - * @return true if type is built-in YANG Types. - */ - public static boolean isYangBuildInType(final TypeDefinition type) { - return type != null && BUILT_IN_TYPES.contains(type.getQName()); - } -} diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseBinaryType.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseBinaryType.java index cf38120e7e..0db63df91f 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseBinaryType.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseBinaryType.java @@ -9,14 +9,13 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.model.api.type.BinaryTypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseBinaryType extends AbstractLengthRestrictedBaseType implements BinaryTypeDefinition { static final @NonNull BaseBinaryType INSTANCE = new BaseBinaryType(); private BaseBinaryType() { - super(BaseTypes.BINARY_QNAME); + super(QNAME); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseBooleanType.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseBooleanType.java index e3961dd204..c339d8ba5a 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseBooleanType.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseBooleanType.java @@ -9,13 +9,12 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.model.api.type.BooleanTypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseBooleanType extends AbstractBaseType implements BooleanTypeDefinition { static final @NonNull BaseBooleanType INSTANCE = new BaseBooleanType(); private BaseBooleanType() { - super(BaseTypes.BOOLEAN_QNAME); + super(QNAME); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseEmptyType.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseEmptyType.java index 12fe0ee47f..138d586b65 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseEmptyType.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseEmptyType.java @@ -9,13 +9,12 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.model.api.type.EmptyTypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseEmptyType extends AbstractBaseType implements EmptyTypeDefinition { static final @NonNull BaseEmptyType INSTANCE = new BaseEmptyType(); private BaseEmptyType() { - super(BaseTypes.EMPTY_QNAME); + super(QNAME); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInstanceIdentifierType.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInstanceIdentifierType.java index 10c26002ec..bb955a2b4b 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInstanceIdentifierType.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInstanceIdentifierType.java @@ -9,14 +9,13 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.model.api.type.InstanceIdentifierTypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseInstanceIdentifierType extends AbstractBaseType implements InstanceIdentifierTypeDefinition { static final @NonNull BaseInstanceIdentifierType INSTANCE = new BaseInstanceIdentifierType(); private BaseInstanceIdentifierType() { - super(BaseTypes.INSTANCE_IDENTIFIER_QNAME); + super(QNAME); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt16Type.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt16Type.java index af4d06a7d7..8c66349af8 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt16Type.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt16Type.java @@ -9,14 +9,13 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.model.api.type.Int16TypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseInt16Type extends AbstractRangeRestrictedBaseType implements Int16TypeDefinition { static final @NonNull BaseInt16Type INSTANCE = new BaseInt16Type(); private BaseInt16Type() { - super(BaseTypes.INT16_QNAME, Short.MIN_VALUE, Short.MAX_VALUE); + super(QNAME, Short.MIN_VALUE, Short.MAX_VALUE); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt32Type.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt32Type.java index 8e4d65f708..779966a532 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt32Type.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt32Type.java @@ -9,14 +9,13 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.model.api.type.Int32TypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseInt32Type extends AbstractRangeRestrictedBaseType implements Int32TypeDefinition { static final @NonNull BaseInt32Type INSTANCE = new BaseInt32Type(); private BaseInt32Type() { - super(BaseTypes.INT32_QNAME, Integer.MIN_VALUE, Integer.MAX_VALUE); + super(QNAME, Integer.MIN_VALUE, Integer.MAX_VALUE); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt64Type.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt64Type.java index cf8c033516..564a798740 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt64Type.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt64Type.java @@ -9,14 +9,13 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.model.api.type.Int64TypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseInt64Type extends AbstractRangeRestrictedBaseType implements Int64TypeDefinition { static final @NonNull BaseInt64Type INSTANCE = new BaseInt64Type(); private BaseInt64Type() { - super(BaseTypes.INT64_QNAME, Long.MIN_VALUE, Long.MAX_VALUE); + super(QNAME, Long.MIN_VALUE, Long.MAX_VALUE); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt8Type.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt8Type.java index bc11699ef4..6afd197830 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt8Type.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseInt8Type.java @@ -9,14 +9,13 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.model.api.type.Int8TypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseInt8Type extends AbstractRangeRestrictedBaseType implements Int8TypeDefinition { static final @NonNull BaseInt8Type INSTANCE = new BaseInt8Type(); private BaseInt8Type() { - super(BaseTypes.INT8_QNAME, Byte.MIN_VALUE, Byte.MAX_VALUE); + super(QNAME, Byte.MIN_VALUE, Byte.MAX_VALUE); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseStringType.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseStringType.java index 1cb7cfad74..0a170fec89 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseStringType.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseStringType.java @@ -12,14 +12,13 @@ import java.util.List; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.model.api.type.PatternConstraint; import org.opendaylight.yangtools.yang.model.api.type.StringTypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseStringType extends AbstractLengthRestrictedBaseType implements StringTypeDefinition { static final @NonNull BaseStringType INSTANCE = new BaseStringType(); private BaseStringType() { - super(BaseTypes.STRING_QNAME); + super(QNAME); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint16Type.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint16Type.java index 39ead259f4..9b2acb4fe6 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint16Type.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint16Type.java @@ -10,14 +10,13 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.common.Uint16; import org.opendaylight.yangtools.yang.model.api.type.Uint16TypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseUint16Type extends AbstractRangeRestrictedBaseType implements Uint16TypeDefinition { static final @NonNull BaseUint16Type INSTANCE = new BaseUint16Type(); private BaseUint16Type() { - super(BaseTypes.UINT16_QNAME, Uint16.ZERO, Uint16.MAX_VALUE); + super(QNAME, Uint16.ZERO, Uint16.MAX_VALUE); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint32Type.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint32Type.java index e4ada104a3..9dcf70bd91 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint32Type.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint32Type.java @@ -10,14 +10,13 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.common.Uint32; import org.opendaylight.yangtools.yang.model.api.type.Uint32TypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseUint32Type extends AbstractRangeRestrictedBaseType implements Uint32TypeDefinition { static final @NonNull BaseUint32Type INSTANCE = new BaseUint32Type(); private BaseUint32Type() { - super(BaseTypes.UINT32_QNAME, Uint32.ZERO, Uint32.MAX_VALUE); + super(QNAME, Uint32.ZERO, Uint32.MAX_VALUE); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint64Type.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint64Type.java index 02ea1f8d9d..8f99f02bdc 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint64Type.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint64Type.java @@ -10,14 +10,13 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.common.Uint64; import org.opendaylight.yangtools.yang.model.api.type.Uint64TypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseUint64Type extends AbstractRangeRestrictedBaseType implements Uint64TypeDefinition { static final @NonNull BaseUint64Type INSTANCE = new BaseUint64Type(); private BaseUint64Type() { - super(BaseTypes.UINT64_QNAME, Uint64.ZERO, Uint64.MAX_VALUE); + super(QNAME, Uint64.ZERO, Uint64.MAX_VALUE); } @Override diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint8Type.java b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint8Type.java index 5c33c0c141..72186ee7f0 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint8Type.java +++ b/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUint8Type.java @@ -10,14 +10,13 @@ package org.opendaylight.yangtools.yang.model.util.type; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.common.Uint8; import org.opendaylight.yangtools.yang.model.api.type.Uint8TypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; final class BaseUint8Type extends AbstractRangeRestrictedBaseType implements Uint8TypeDefinition { static final @NonNull BaseUint8Type INSTANCE = new BaseUint8Type(); private BaseUint8Type() { - super(BaseTypes.UINT8_QNAME, Uint8.ZERO, Uint8.MAX_VALUE); + super(QNAME, Uint8.ZERO, Uint8.MAX_VALUE); } @Override diff --git a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BaseTypesTest.java b/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BaseTypesTest.java deleted file mode 100644 index 2ed2274cce..0000000000 --- a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BaseTypesTest.java +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ -package org.opendaylight.yangtools.yang.model.util; - -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertTrue; - -import org.junit.Test; - -public class BaseTypesTest { - - @Test - public void testIsYangBuildInType() { - assertFalse("whatever is not build-in type", BaseTypes.isYangBuildInType("whatever")); - assertTrue("int8 is build-in type", BaseTypes.isYangBuildInType("int8")); - } - -} diff --git a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BinaryTypeTest.java b/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BinaryTypeTest.java index a5283e97cb..80433fa81b 100644 --- a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BinaryTypeTest.java +++ b/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BinaryTypeTest.java @@ -27,7 +27,7 @@ public class BinaryTypeTest { assertEquals(Optional.empty(), binType.getDefaultValue()); assertEquals("CURRENT", Status.CURRENT, binType.getStatus()); assertEquals("Base type is null", null, binType.getBaseType()); - assertEquals("getQName gives BINARY_QNAME", BaseTypes.BINARY_QNAME, binType.getQName()); + assertEquals("getQName gives BINARY_QNAME", BinaryTypeDefinition.QNAME, binType.getQName()); assertEquals(Optional.empty(), binType.getUnits()); assertTrue("binType1 should equal to binType", binType.equals(binType1) && binType1.equals(binType)); diff --git a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BooleanTypeTest.java b/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BooleanTypeTest.java index dbf9efdda1..50d42cdc1e 100644 --- a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BooleanTypeTest.java +++ b/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/BooleanTypeTest.java @@ -24,7 +24,7 @@ public class BooleanTypeTest { public void canCreateBooleanType() { final BooleanTypeDefinition boolType = booleanType(); - assertEquals("getQName gives BOOLEAN_QNAME", BaseTypes.BOOLEAN_QNAME, boolType.getQName()); + assertEquals("getQName gives BOOLEAN_QNAME", BooleanTypeDefinition.QNAME, boolType.getQName()); assertFalse(boolType.getDescription().isPresent()); assertThat(boolType.toString(), containsString("name=(urn:ietf:params:xml:ns:yang:1)boolean")); diff --git a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/EmptyTypeTest.java b/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/EmptyTypeTest.java index 5099330ce4..470e0c9605 100644 --- a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/EmptyTypeTest.java +++ b/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/EmptyTypeTest.java @@ -23,7 +23,7 @@ public class EmptyTypeTest { public void canCreateEmptyType() { EmptyTypeDefinition emptyType = emptyType(); - assertEquals("QName", BaseTypes.EMPTY_QNAME, emptyType.getQName()); + assertEquals("QName", EmptyTypeDefinition.QNAME, emptyType.getQName()); assertEquals("BaseType", null, emptyType.getBaseType()); assertEquals("DefaultValue", Optional.empty(), emptyType.getDefaultValue()); assertEquals("Status", Status.CURRENT, emptyType.getStatus()); diff --git a/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/AugmentTest.java b/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/AugmentTest.java index 65127364b6..ce6f87e7e8 100644 --- a/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/AugmentTest.java +++ b/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/AugmentTest.java @@ -35,7 +35,7 @@ import org.opendaylight.yangtools.yang.model.api.RpcDefinition; import org.opendaylight.yangtools.yang.model.api.SchemaContext; import org.opendaylight.yangtools.yang.model.api.SchemaPath; import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.Absolute; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; +import org.opendaylight.yangtools.yang.model.api.type.StringTypeDefinition; public class AugmentTest { private static final QNameModule FOO = QNameModule.create( @@ -95,7 +95,7 @@ public class AugmentTest { assertPathEquals(expectedSchemaPath, ds0ChannelNumber); assertFalse(ds0ChannelNumber.isAugmenting()); // type of leaf ds0ChannelNumber - assertEquals(BaseTypes.STRING_QNAME, ds0ChannelNumber.getType().getQName()); + assertEquals(StringTypeDefinition.QNAME, ds0ChannelNumber.getType().getQName()); // leaf interface-id qname = QName.create(FOO, "interface-id"); diff --git a/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TypedefConstraintsTest.java b/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TypedefConstraintsTest.java index 0d5921bef4..234ca5fc43 100644 --- a/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TypedefConstraintsTest.java +++ b/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TypedefConstraintsTest.java @@ -23,7 +23,6 @@ import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode; import org.opendaylight.yangtools.yang.model.api.SchemaContext; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; import org.opendaylight.yangtools.yang.model.api.type.DecimalTypeDefinition; -import org.opendaylight.yangtools.yang.model.util.BaseTypes; public class TypedefConstraintsTest { @@ -69,7 +68,7 @@ public class TypedefConstraintsTest { assertEquals(new BigDecimal(5.5), range.upperEndpoint()); assertTrue(decType.getQName().getModule().equals(leafDecimal.getQName().getModule())); - assertTrue(decType.getQName().getLocalName().equals(BaseTypes.DECIMAL64_QNAME.getLocalName())); + assertTrue(decType.getQName().getLocalName().equals(DecimalTypeDefinition.QNAME.getLocalName())); assertNull(decType.getBaseType()); } -- 2.36.6