BUG-7996: reshuffle caching logic
[yangtools.git] / yang / yang-data-impl / src / main / java / org / opendaylight / yangtools / yang / data / impl / codec / BinaryStringCodec.java
index 467d226e777ad440e5a98815e77e8d080b1c9448..62aab281bba43bd55840da9c74598aacbb183ac4 100644 (file)
@@ -7,6 +7,7 @@
  */
 package org.opendaylight.yangtools.yang.data.impl.codec;
 
+import com.google.common.annotations.Beta;
 import com.google.common.base.Optional;
 import com.google.common.base.Preconditions;
 import com.google.common.collect.ImmutableRangeSet;
@@ -19,7 +20,12 @@ import org.opendaylight.yangtools.yang.data.api.codec.BinaryCodec;
 import org.opendaylight.yangtools.yang.model.api.type.BinaryTypeDefinition;
 import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint;
 
-abstract class BinaryStringCodec extends TypeDefinitionAwareCodec<byte[], BinaryTypeDefinition>
+
+/**
+ * Do not use this class outside of yangtools, its presence does not fall into the API stability contract.
+ */
+@Beta
+public abstract class BinaryStringCodec extends TypeDefinitionAwareCodec<byte[], BinaryTypeDefinition>
         implements BinaryCodec<String> {
     private static final class Restricted extends BinaryStringCodec {
         private final RangeSet<Integer> ranges;
@@ -57,7 +63,7 @@ abstract class BinaryStringCodec extends TypeDefinitionAwareCodec<byte[], Binary
         super(Optional.of(typeDef), byte[].class);
     }
 
-    static TypeDefinitionAwareCodec<?, BinaryTypeDefinition> from(final BinaryTypeDefinition type) {
+    public static BinaryStringCodec from(final BinaryTypeDefinition type) {
         return type.getLengthConstraints().isEmpty() ? new Unrestricted(type) : new Restricted(type);
     }