*
* @param <S> Serializied (external) type
* @param <D> Deserialized (internal) type
+ * @deprecated This is a base class for implementing IllegalArgumentCodec, without further use. It will be removed with
+ * IllegalArgumentCodec.
*/
@Beta
+@Deprecated(since = "8.0.0", forRemoval = true)
public abstract class AbstractIllegalArgumentCodec<S, D> implements IllegalArgumentCodec<S, D> {
@Override
public final D deserialize(final S input) {
*
* @param <S> Serialized (external) type
* @param <D> Deserialized (internal) type
+ * @deprecated This interface ignores a number of complications when dealing with external forms. For one, it assumes
+ * a serdes operation does not have further context than the input -- and this is seldom the case. The other
+ * failing is that it actively discourages use of checked exceptions to deal with errors at the appropriate
+ * level. Based on these, this interface is deprecated for removal without a replacement. Users are
+ * encouraged to define similar interface fitting their needs.
*/
@Beta
+@Deprecated(since = "8.0.0", forRemoval = true)
public interface IllegalArgumentCodec<S, D> {
/**
* Produce an internal object based on an external object.