Class VersionedWritable

java.lang.Object
org.apache.hadoop.io.VersionedWritable
All Implemented Interfaces:
Writable

@Public @Stable public abstract class VersionedWritable extends Object implements Writable
A base class for Writables that provides version checking.

This is useful when a class may evolve, so that instances written by the old version of the class may still be processed by the new version. To handle this situation, readFields(DataInput) implementations should catch VersionMismatchException.

  • Constructor Details

    • VersionedWritable

      public VersionedWritable()
  • Method Details

    • getVersion

      public abstract byte getVersion()
      Returns:
      Return the version number of the current implementation.
    • write

      public void write(DataOutput out) throws IOException
      Description copied from interface: Writable
      Serialize the fields of this object to out.
      Specified by:
      write in interface Writable
      Parameters:
      out - DataOuput to serialize this object into.
      Throws:
      IOException - any other problem for write.
    • readFields

      public void readFields(DataInput in) throws IOException
      Description copied from interface: Writable
      Deserialize the fields of this object from in.

      For efficiency, implementations should attempt to re-use storage in the existing object where possible.

      Specified by:
      readFields in interface Writable
      Parameters:
      in - DataInput to deseriablize this object from.
      Throws:
      IOException - any other problem for readFields.