Class Utils.Version

java.lang.Object
org.apache.hadoop.io.file.tfile.Utils.Version
All Implemented Interfaces:
Comparable<Utils.Version>
Enclosing class:
Utils

public static final class Utils.Version extends Object implements Comparable<Utils.Version>
A generic Version class. We suggest applications built on top of TFile use this class to maintain version information in their meta blocks. A version number consists of a major version and a minor version. The suggested usage of major and minor version number is to increment major version number when the new storage format is not backward compatible, and increment the minor version otherwise.
  • Constructor Details

    • Version

      public Version(DataInput in) throws IOException
      Construct the Version object by reading from the input stream.
      Parameters:
      in - input stream
      Throws:
      IOException - raised on errors performing I/O.
    • Version

      public Version(short major, short minor)
      Constructor.
      Parameters:
      major - major version.
      minor - minor version.
  • Method Details

    • write

      public void write(DataOutput out) throws IOException
      Write the objec to a DataOutput. The serialized format of the Version is major version followed by minor version, both as big-endian short integers.
      Parameters:
      out - The DataOutput object.
      Throws:
      IOException - raised on errors performing I/O.
    • getMajor

      public int getMajor()
      Get the major version.
      Returns:
      Major version.
    • getMinor

      public int getMinor()
      Get the minor version.
      Returns:
      The minor version.
    • size

      public static int size()
      Get the size of the serialized Version object.
      Returns:
      serialized size of the version object.
    • toString

      public String toString()
      Return a string representation of the version.
      Overrides:
      toString in class Object
    • compatibleWith

      public boolean compatibleWith(Utils.Version other)
      Test compatibility.
      Parameters:
      other - The Version object to test compatibility with.
      Returns:
      true if both versions have the same major version number; false otherwise.
    • compareTo

      public int compareTo(Utils.Version that)
      Compare this version with another version.
      Specified by:
      compareTo in interface Comparable<Utils.Version>
    • equals

      public boolean equals(Object other)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object