package org.opendaylight.yangtools.yang.data.api.codec;
+import org.opendaylight.yangtools.concepts.Codec;
+
/**
*
* FIXME: Should be changed to UnsignedByte
*
* @param <T>
*/
-public interface Uint8Codec<T> {
+public interface Uint8Codec<T> extends Codec<T,Short>{
public T serialize(Short data);
--- /dev/null
+package org.opendaylight.yangtools.yang.data.api.codec;
+
+import org.opendaylight.yangtools.concepts.Codec;
+
+public interface UnionCodec<T> extends Codec<T,String> {
+
+ public T serialize(String data);
+
+ public String deserialize(T data);
+}
import java.math.BigInteger;
import java.util.Set;
-import javax.xml.bind.DatatypeConverter;
-
import org.opendaylight.yangtools.yang.data.api.codec.*;
import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
import org.opendaylight.yangtools.yang.model.api.type.*;
public static final Uint64CodecStringImpl UINT64_DEFAULT_CODEC = new Uint64CodecStringImpl(
Optional.<UnsignedIntegerTypeDefinition> absent());
+ public static final UnionCodecStringImpl UNION_DEFAULT_CODEC = new UnionCodecStringImpl(
+ Optional.<UnionTypeDefinition> absent());
+
public Class<J> getInputClass() {
return inputClass;
}
return new BigDecimal(stringRepresentation);
}
};
+
+ public static class UnionCodecStringImpl extends TypeDefinitionAwareCodec<String, UnionTypeDefinition> implements
+ UnionCodec<String> {
+
+ protected UnionCodecStringImpl(Optional<UnionTypeDefinition> typeDef) {
+ super(typeDef, String.class);
+ }
+
+ @Override
+ public String serialize(String data) {
+ return data;
+ }
+
+ @Override
+ public String deserialize(String stringRepresentation) {
+ return stringRepresentation;
+ }
+ };
}