BUG-865: mark yang-model-util types as deprecated 24/29724/5
authorRobert Varga <robert.varga@pantheon.sk>
Sun, 15 Nov 2015 11:47:51 +0000 (12:47 +0100)
committerGerrit Code Review <gerrit@opendaylight.org>
Thu, 19 Nov 2015 16:40:33 +0000 (16:40 +0000)
Having these classes out in the open creates confusion in users.
Deprecate them in favor of util.type.{Base,Derived,Restricted}Types(),
which do not leak implementation details.

Change-Id: Ib690a43d7e956e5ed0cac13a6276cb03fd049843
Signed-off-by: Robert Varga <robert.varga@pantheon.sk>
21 files changed:
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/BaseTypes.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/BinaryType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/BitsType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/BooleanType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/Decimal64.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/DerivedType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/EmptyType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/EnumerationType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/IdentityrefType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/InstanceIdentifierType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/Int16.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/Int32.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/Int64.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/Int8.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/Leafref.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/StringType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/Uint16.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/Uint32.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/Uint64.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/Uint8.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/UnionType.java

index 9e96fcc55709aa8893ef34200f37c30a8e46f22f..dfc5dfb5c4f0ec385901000ea76b23f1c0f55cc1 100644 (file)
@@ -115,11 +115,14 @@ public final class BaseTypes {
      * @return Returns default instance or {@link Optional#absent()} if default
      *         instance does not exists
      *
+     * @deprecated Use parser-specific lookup tables.
      */
+    @Deprecated
     public static Optional<TypeDefinition<?>> defaultBaseTypeFor(final String typeName) {
         return Optional.<TypeDefinition<?>> fromNullable(defaultBaseTypeForImpl(typeName));
     }
 
+    @Deprecated
     private static TypeDefinition<?> defaultBaseTypeForImpl(final String typeName) {
         Preconditions.checkNotNull(typeName, "typeName must not be null.");
 
index 061a0c646149898d48049d7357a4c713b3eaae67..c323a1ac243a6affc13804925094083a31e4f2ab 100644 (file)
@@ -22,7 +22,9 @@ import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint;
  * The <code>default</code> implementation of Binary Type Definition interface.
  *
  * @see BinaryTypeDefinition
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#binaryType()} instead
  */
+@Deprecated
 public final class BinaryType implements BinaryTypeDefinition {
     private static final String DESCRIPTION = "The binary built-in type represents any binary data, i.e., a sequence of octets.";
     private static final String REFERENCE = "https://tools.ietf.org/html/rfc6020#section-9.8";
index b277834f07ca87f643e354006f45fda9290d3bf5..588e6d04c060f994555c031a6549588c5311253c 100644 (file)
@@ -22,7 +22,9 @@ import org.opendaylight.yangtools.yang.model.api.type.BitsTypeDefinition;
  * The <code>default</code> implementation of Bits Type Definition interface.
  *
  * @see BitsTypeDefinition
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#bitsTypeBuilder(SchemaPath)} instead
  */
+@Deprecated
 public final class BitsType implements BitsTypeDefinition {
     private static final QName NAME = BaseTypes.BITS_QNAME;
     private static final String DESCRIPTION = "The bits built-in type represents a bit set. "
index 20ec00cce25147bc2a8627902e97966734ae6077..3783da14f9e9b43251b75354f971374cc51b9a79 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.yangtools.yang.model.util;
 
 import java.util.Collections;
 import java.util.List;
-
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.Status;
@@ -20,7 +19,9 @@ import org.opendaylight.yangtools.yang.model.api.type.BooleanTypeDefinition;
  * The <code>default</code> implementation of Boolean Type Definition interface.
  *
  * @see BooleanTypeDefinition
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#booleanType()} instead
  */
+@Deprecated
 public final class BooleanType implements BooleanTypeDefinition {
     private static final BooleanType INSTANCE = new BooleanType();
     private static final SchemaPath PATH = SchemaPath.create(true, BaseTypes.BOOLEAN_QNAME);
index ef259fdbdb953e5d1638d94a401df351d10f7f6b..26aba5774cee2ae8d89cc1e41ca1f40e03d76de2 100644 (file)
@@ -25,7 +25,9 @@ import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
  * The <code>default</code> implementation of Decimal Type Definition interface.
  *
  * @see DecimalTypeDefinition
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#decimalTypeBuilder(SchemaPath)} instead
  */
+@Deprecated
 public final class Decimal64 implements DecimalTypeDefinition {
     private static final String DESCRIPTION = "The decimal64 type represents a subset of the real numbers, which can "
             + "be represented by decimal numerals. The value space of decimal64 is the set of numbers that can "
index 0f9400a6efb5ab116bb9a6c46a71a00b2d9ae401..74ff865d17d8c768baefccd375a74cee64f78d00 100644 (file)
@@ -35,7 +35,10 @@ import org.opendaylight.yangtools.yang.model.api.type.UnsignedIntegerTypeDefinit
  * preserving original implemented interface instead of {@link ExtendedType}
  * which does not preserve final type of data.
  *
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.DerivedTypes} or
+ *             {@link org.opendaylight.yangtools.yang.model.util.type.RestrictedTypes} instead
  */
+@Deprecated
 public abstract class DerivedType<T extends TypeDefinition<T>> implements TypeDefinition<T> {
 
     private final ExtendedType definition;
@@ -46,7 +49,7 @@ public abstract class DerivedType<T extends TypeDefinition<T>> implements TypeDe
         this.publicType = Preconditions.checkNotNull(publicType);
     }
 
-    public static TypeDefinition<?> from(TypeDefinition<?> type) {
+    public static TypeDefinition<?> from(final TypeDefinition<?> type) {
         if(type instanceof ExtendedType) {
             return from((ExtendedType) type);
         }
index 7efebad4d43bdd4b0d2d5c8a84826de0ef09082e..bdd7fb3f935d84256ad8f64b1bf1caa286bbb2b6 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.yangtools.yang.model.util;
 
 import java.util.Collections;
 import java.util.List;
-
 import org.opendaylight.yangtools.concepts.Immutable;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
@@ -17,6 +16,10 @@ import org.opendaylight.yangtools.yang.model.api.Status;
 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.type.EmptyTypeDefinition;
 
+/**
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#emptyType()} instead
+ */
+@Deprecated
 public final class EmptyType implements EmptyTypeDefinition, Immutable {
     private static final EmptyType INSTANCE = new EmptyType();
     private static final QName NAME = BaseTypes.EMPTY_QNAME;
index 36e589ea1116e92a72bb346afc1e68624317816a..9d28eb2dffed7d98428e4ca8ae9d9b9173725336 100644 (file)
@@ -24,7 +24,9 @@ import org.opendaylight.yangtools.yang.model.api.type.EnumTypeDefinition;
  * interface.
  *
  * @see EnumTypeDefinition
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#enumerationTypeBuilder(SchemaPath)} instead
  */
+@Deprecated
 public final class EnumerationType implements EnumTypeDefinition {
     private static final String DESCRIPTION = "The enumeration built-in type represents values from a set of assigned names.";
     private static final String REFERENCE = "https://tools.ietf.org/html/rfc6020#section-9.6";
index 097e9ecb222e605707d4d814e20f9adc1f77bab0..43def3464b4c8c7e9122e4aff1ccf90d1c0e3ea2 100644 (file)
@@ -22,7 +22,9 @@ import org.opendaylight.yangtools.yang.model.api.type.IdentityrefTypeDefinition;
  * interface.
  *
  * @see IdentityrefTypeDefinition
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#identityrefTypeBuilder(SchemaPath)} instead
  */
+@Deprecated
 public final class IdentityrefType implements IdentityrefTypeDefinition {
     private static final QName NAME = BaseTypes.IDENTITYREF_QNAME;
     private static final String DESCRIPTION = "The identityref type is used to reference an existing identity.";
index a0f45d89c8283e2463ecc125dfe34e45879deb39..452c9a7c80d8c0ea395c6a7a8abcaeed5fd2136e 100644 (file)
@@ -26,8 +26,9 @@ import org.opendaylight.yangtools.yang.model.api.type.InstanceIdentifierTypeDefi
  * returns false.
  *
  * @see InstanceIdentifierTypeDefinition
- *
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#instanceIdentifierType()} instead
  */
+@Deprecated
 public final class InstanceIdentifierType implements InstanceIdentifierTypeDefinition, Immutable {
 
     private static final QName NAME = BaseTypes.INSTANCE_IDENTIFIER_QNAME;
index f88e7984a16909b0682c60350662b6acf5aa664a..cf975bead399818186f313c30ddca9a77aa9c92c 100644 (file)
@@ -15,7 +15,9 @@ import org.opendaylight.yangtools.concepts.Immutable;
  * Java counterpart of Yang int16 built-in type is {@link Short}.
  *
  * @see AbstractSignedInteger
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#int16Type()} instead
  */
+@Deprecated
 public final class Int16 extends AbstractSignedInteger implements Immutable {
     private static final String DESCRIPTION = "int16  represents integer values between -32768 and 32767, inclusively.";
 
index d42768bc71b14b2ffc88008673a049d8dc4e5a85..1acb55a4ccd9e2d6148a893a61b4b43c5c68eec1 100644 (file)
@@ -16,8 +16,9 @@ import org.opendaylight.yangtools.concepts.Immutable;
  * {@link Integer}.
  *
  * @see AbstractSignedInteger
- *
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#int32Type()} instead
  */
+@Deprecated
 public final class Int32 extends AbstractSignedInteger implements Immutable {
     private static final String DESCRIPTION = "int32  represents integer values between -2147483648 and 2147483647, inclusively.";
 
index ea6830fa13e90572a7eb2e6c66d89ebec0976bd4..0e8a11dcfb7f29d8a155bc8cc58eefa2ba1822a3 100644 (file)
@@ -15,7 +15,9 @@ import org.opendaylight.yangtools.concepts.Immutable;
  * 9223372036854775807, inclusively. The Java counterpart of Yang int64 built-in
  * type is {@link Long}.
  *
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#int64Type()} instead
  */
+@Deprecated
 public final class Int64 extends AbstractSignedInteger implements Immutable {
     private static final String DESCRIPTION = "int64  represents integer values between -9223372036854775808 and 9223372036854775807, inclusively.";
 
index 61d7a469491e3ee910fe29ebb332e9ae085c989f..d16d7dc5c14e2048738760e74db119b4fbcb79aa 100644 (file)
@@ -15,7 +15,9 @@ import org.opendaylight.yangtools.concepts.Immutable;
  * counterpart of Yang int8 built-in type is {@link Byte}.
  *
  * @see AbstractSignedInteger
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#int8Type()} instead
  */
+@Deprecated
 public final class Int8 extends AbstractSignedInteger implements Immutable {
     private static final String DESCRIPTION = "represents integer values between -128 and 127, inclusively.";
 
index eab8b22ba81e2469f1f09695343056aa479e1796..e2688665bfad397526674b99628bdd69dbcb96ad 100644 (file)
@@ -23,7 +23,9 @@ import org.opendaylight.yangtools.yang.model.api.type.LeafrefTypeDefinition;
  * interface.
  *
  * @see LeafrefTypeDefinition
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#leafrefTypeBuilder(SchemaPath)} instead
  */
+@Deprecated
 public final class Leafref implements LeafrefTypeDefinition {
     private static final QName NAME = BaseTypes.constructQName("leafref");
     private static final SchemaPath PATH = SchemaPath.create(true, NAME);
index 7477ff0de5d72d53c4fab8420e045334b2477938..911ed2c37ad0a8d91ff4acd6db3feefff796d54f 100644 (file)
@@ -24,7 +24,9 @@ import org.opendaylight.yangtools.yang.model.api.type.StringTypeDefinition;
  * The <code>default</code> implementation of String Type Definition interface.
  *
  * @see StringTypeDefinition
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#stringType()} instead
  */
+@Deprecated
 public final class StringType implements StringTypeDefinition, Immutable {
     private static final QName NAME = BaseTypes.STRING_QNAME;
     private static final SchemaPath PATH = SchemaPath.create(true, NAME);
index 5c233df5ad9c761a1b344ebca0c38e0a006e572a..afa95fea2d691656c75a058793cd24a0d4c5588d 100644 (file)
@@ -14,7 +14,9 @@ import org.opendaylight.yangtools.concepts.Immutable;
  * uint16 represents integer values between 0 and 65535, inclusively. The Java
  * counterpart of Yang uint16 built-in type is {@link Integer}.
  *
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#uint16Type()} instead
  */
+@Deprecated
 public final class Uint16 extends AbstractUnsignedInteger implements Immutable {
     public static final int MAX_VALUE = 65535;
     private static final String DESCRIPTION = "uint16 represents integer values between 0 and 65535, inclusively.";
index aef0f8fac27ff60928a27d9b251b772c0fab3f54..c48c4d42cc8c1ade2f157908c3abec1436ccfffe 100644 (file)
@@ -13,7 +13,9 @@ import org.opendaylight.yangtools.concepts.Immutable;
  * Implementation of Yang uint32 built-in type. <br>
  * uint32 represents integer values between 0 and 4294967295, inclusively.
  *
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#uint32Type()} instead
  */
+@Deprecated
 public final class Uint32 extends AbstractUnsignedInteger implements Immutable {
     public static final long MAX_VALUE = 4294967295L;
     private static final String DESCRIPTION = "uint32 represents integer values between 0 and 4294967295, inclusively.";
index 3ec9d25369eb3c966fab370a661cc0a8aea750ab..3d872c020062000064560bbc4cf5ad3fb64ec98f 100644 (file)
@@ -8,7 +8,6 @@
 package org.opendaylight.yangtools.yang.model.util;
 
 import java.math.BigInteger;
-
 import org.opendaylight.yangtools.concepts.Immutable;
 
 /**
@@ -17,7 +16,9 @@ import org.opendaylight.yangtools.concepts.Immutable;
  * inclusively. The Java counterpart of Yang uint64 built-in type is
  * {@link BigInteger}.
  *
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#uint64Type()} instead
  */
+@Deprecated
 public final class Uint64 extends AbstractUnsignedInteger implements Immutable {
     public static final BigInteger MAX_VALUE = new BigInteger("18446744073709551615");
     private static final String DESCRIPTION = "uint64 represents integer values between 0 and 18446744073709551615, inclusively.";
index f44ba754a7d62c8c94310382c1e0b2c569799f62..4f0aad49d5ab8138716bafff2f850af9df9a1cb6 100644 (file)
@@ -14,7 +14,9 @@ import org.opendaylight.yangtools.concepts.Immutable;
  * uint8 represents integer values between 0 and 255, inclusively.
  *
  * @see AbstractUnsignedInteger
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#uint8Type()} instead
  */
+@Deprecated
 public final class Uint8 extends AbstractUnsignedInteger implements Immutable {
     public static final int MAX_VALUE = 255;
     private static final String DESCRIPTION = "uint8  represents integer values between 0 and 255, inclusively.";
index a27fc024efca760a2cf23c567fd93271f95821a5..64094fc9036ebd3afa9e4644001703a197d9dd58 100644 (file)
@@ -18,6 +18,10 @@ import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.type.UnionTypeDefinition;
 
+/**
+ * @deprecated Use {@link org.opendaylight.yangtools.yang.model.util.type.BaseTypes#unionTypeBuilder(SchemaPath)} instead
+ */
+@Deprecated
 public final class UnionType implements UnionTypeDefinition {
     private static final SchemaPath PATH = SchemaPath.create(true, BaseTypes.UNION_QNAME);
     private static final String DESCRIPTION = "The union built-in type represents a value that corresponds to one of its member types.";