From 575c0159bf8a0d0cb6a9b4825bc69ba0bbf8a1ac Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Mon, 27 Sep 2021 17:29:15 +0200 Subject: [PATCH] Deprecate concents.{Codec,Deserializer,Serializer} These are not really useful, deprecate them for removal. JIRA: YANGTOOLS-1335 Change-Id: Ie3fae2c7b82e5292f18dd43d2a3f04603b707d29 Signed-off-by: Robert Varga --- .../org/opendaylight/yangtools/concepts/AbstractCodec.java | 1 + .../yangtools/concepts/AbstractIllegalArgumentCodec.java | 6 ++++++ .../yangtools/concepts/AbstractUncheckedCodec.java | 1 + .../java/org/opendaylight/yangtools/concepts/Codec.java | 1 + .../org/opendaylight/yangtools/concepts/Deserializer.java | 1 + .../yangtools/concepts/IllegalArgumentCodec.java | 4 ++++ .../org/opendaylight/yangtools/concepts/Serializer.java | 1 + .../org/opendaylight/yangtools/concepts/UncheckedCodec.java | 1 + .../yangtools/concepts/UncheckedDeserializer.java | 1 + .../yangtools/concepts/UncheckedSerializer.java | 1 + 10 files changed, 18 insertions(+) diff --git a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractCodec.java b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractCodec.java index 47d4f3de7f..29758080f9 100644 --- a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractCodec.java +++ b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractCodec.java @@ -23,6 +23,7 @@ import org.eclipse.jdt.annotation.NonNullByDefault; */ @Beta @NonNullByDefault +@Deprecated(since = "7.0.9", forRemoval = true) public abstract class AbstractCodec implements Codec { @Override public final @NonNull I deserialize(@NonNull final P input) throws X { diff --git a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractIllegalArgumentCodec.java b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractIllegalArgumentCodec.java index eed595ae57..c5e2784635 100644 --- a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractIllegalArgumentCodec.java +++ b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractIllegalArgumentCodec.java @@ -8,6 +8,7 @@ package org.opendaylight.yangtools.concepts; import com.google.common.annotations.Beta; +import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.NonNullByDefault; /** @@ -20,5 +21,10 @@ import org.eclipse.jdt.annotation.NonNullByDefault; @NonNullByDefault public abstract class AbstractIllegalArgumentCodec extends AbstractUncheckedCodec implements IllegalArgumentCodec { + @Override + protected abstract @NonNull I deserializeImpl(@NonNull P product); + // implementation is guarded from nulls and verified not to return null + @Override + protected abstract @NonNull P serializeImpl(@NonNull I input); } diff --git a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractUncheckedCodec.java b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractUncheckedCodec.java index 0edb216da9..60095b6640 100644 --- a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractUncheckedCodec.java +++ b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/AbstractUncheckedCodec.java @@ -20,6 +20,7 @@ import org.eclipse.jdt.annotation.NonNullByDefault; */ @Beta @NonNullByDefault +@Deprecated(since = "7.0.9", forRemoval = true) public abstract class AbstractUncheckedCodec extends AbstractCodec implements UncheckedCodec { @Override diff --git a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Codec.java b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Codec.java index 91060a1b66..55514f1d55 100644 --- a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Codec.java +++ b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Codec.java @@ -15,6 +15,7 @@ package org.opendaylight.yangtools.concepts; * @param Input type * @param Error exception type */ +@Deprecated(since = "7.0.9", forRemoval = true) public interface Codec extends Serializer, Deserializer { @Override I deserialize(P input) throws X; diff --git a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Deserializer.java b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Deserializer.java index d327beafdd..11e0162600 100644 --- a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Deserializer.java +++ b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Deserializer.java @@ -16,6 +16,7 @@ import org.eclipse.jdt.annotation.NonNull; * @param Input type * @param Error exception type */ +@Deprecated(since = "7.0.9", forRemoval = true) public interface Deserializer { /** * Produce an object base on input. diff --git a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/IllegalArgumentCodec.java b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/IllegalArgumentCodec.java index e2b072ad8e..b3ffc37deb 100644 --- a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/IllegalArgumentCodec.java +++ b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/IllegalArgumentCodec.java @@ -18,5 +18,9 @@ import com.google.common.annotations.Beta; */ @Beta public interface IllegalArgumentCodec extends UncheckedCodec { + @Override + P serialize(I input); + @Override + I deserialize(P input); } diff --git a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Serializer.java b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Serializer.java index f7a85c00a9..14288f2751 100644 --- a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Serializer.java +++ b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/Serializer.java @@ -16,6 +16,7 @@ import org.eclipse.jdt.annotation.NonNull; * @param Input type * @param Error exception type */ +@Deprecated(since = "7.0.9", forRemoval = true) public interface Serializer { /** * Convert an input into a product. diff --git a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedCodec.java b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedCodec.java index c1196a7d56..2d741dbb46 100644 --- a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedCodec.java +++ b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedCodec.java @@ -18,6 +18,7 @@ import com.google.common.annotations.Beta; * @param Error exception type */ @Beta +@Deprecated(since = "7.0.9", forRemoval = true) public interface UncheckedCodec extends UncheckedSerializer, UncheckedDeserializer, Codec { diff --git a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedDeserializer.java b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedDeserializer.java index e6ffd6c9c6..468fc09ff1 100644 --- a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedDeserializer.java +++ b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedDeserializer.java @@ -17,6 +17,7 @@ import com.google.common.annotations.Beta; * @param Error exception type */ @Beta +@Deprecated(since = "7.0.9", forRemoval = true) public interface UncheckedDeserializer extends Serializer { @Override P serialize(I input); diff --git a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedSerializer.java b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedSerializer.java index a8683e5aac..36dfa5a8f3 100644 --- a/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedSerializer.java +++ b/common/concepts/src/main/java/org/opendaylight/yangtools/concepts/UncheckedSerializer.java @@ -17,6 +17,7 @@ import com.google.common.annotations.Beta; * @param Error exception type */ @Beta +@Deprecated(since = "7.0.9", forRemoval = true) public interface UncheckedSerializer extends Deserializer { @Override P deserialize(I input); -- 2.36.6