import java.io.ObjectOutput;
import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.controller.cluster.datastore.DataStoreVersions;
-import org.opendaylight.controller.cluster.datastore.node.utils.stream.NormalizedNodeStreamVersion;
+import org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeStreamVersion;
/**
* Abstract base class for a versioned Externalizable message.
*
* @author Thomas Pantelis
*/
+@Deprecated(since = "9.0.0", forRemoval = true)
public abstract class VersionedExternalizableMessage implements Externalizable, SerializableMessage {
private static final long serialVersionUID = 1L;
private short version = DataStoreVersions.CURRENT_VERSION;
public VersionedExternalizableMessage() {
+ // Required for externalizable
}
public VersionedExternalizableMessage(final short version) {
this.version = version <= DataStoreVersions.CURRENT_VERSION ? version : DataStoreVersions.CURRENT_VERSION;
}
- public short getVersion() {
+ public final short getVersion() {
return version;
}
protected final @NonNull NormalizedNodeStreamVersion getStreamVersion() {
- return version < DataStoreVersions.NEON_SR2_VERSION
- ? NormalizedNodeStreamVersion.LITHIUM : NormalizedNodeStreamVersion.NEON_SR2;
+ if (version >= DataStoreVersions.POTASSIUM_VERSION) {
+ return NormalizedNodeStreamVersion.POTASSIUM;
+ } else if (version >= DataStoreVersions.PHOSPHORUS_VERSION) {
+ return NormalizedNodeStreamVersion.MAGNESIUM;
+ } else {
+ throw new IllegalStateException("Unsupported version " + version);
+ }
}
@Override
@Override
public final Object toSerializable() {
final short ver = getVersion();
- if (ver < DataStoreVersions.BORON_VERSION) {
+ if (ver < DataStoreVersions.SODIUM_SR1_VERSION) {
throw new UnsupportedOperationException("Version " + ver
- + " is older than the oldest version supported version " + DataStoreVersions.BORON_VERSION);
+ + " is older than the oldest version supported version " + DataStoreVersions.SODIUM_SR1_VERSION);
}
return this;