X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Fmessages%2FVersionedExternalizableMessage.java;h=51a9079d20cbc11c12295d02a6487d80b0d2c154;hb=50a2f5eb1c94650bc1be1e49d3a5382a1a74a9b3;hp=b34737be542d743e09bdd1a0d2df6abf18a4a78f;hpb=dea515c8870769408b9bea29f555d6b71ff43211;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/VersionedExternalizableMessage.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/VersionedExternalizableMessage.java index b34737be54..51a9079d20 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/VersionedExternalizableMessage.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/VersionedExternalizableMessage.java @@ -27,7 +27,7 @@ public abstract class VersionedExternalizableMessage implements Externalizable, } public VersionedExternalizableMessage(short version) { - this.version = version; + this.version = version <= DataStoreVersions.CURRENT_VERSION ? version: DataStoreVersions.CURRENT_VERSION; } public short getVersion() { @@ -43,4 +43,18 @@ public abstract class VersionedExternalizableMessage implements Externalizable, public void writeExternal(ObjectOutput out) throws IOException { out.writeShort(version); } + + @Override + public final Object toSerializable() { + if (getVersion() < DataStoreVersions.BORON_VERSION) { + throw new UnsupportedOperationException("Versions prior to " + DataStoreVersions.BORON_VERSION + " are not supported"); + } + + return this; + } + + @Override + public String toString() { + return getClass().getSimpleName() + " [version=" + getVersion() + "]"; + } }