Class Version

java.lang.Object
org.elasticsearch.Version
All Implemented Interfaces:
Comparable<Version>, VersionId<Version>, ToXContent, ToXContentFragment

public class Version extends Object implements VersionId<Version>, ToXContentFragment
  • Field Details

    • V_EMPTY_ID

      public static final int V_EMPTY_ID
      See Also:
    • V_EMPTY

      public static final Version V_EMPTY
    • V_7_0_0

      public static final Version V_7_0_0
    • V_7_0_1

      public static final Version V_7_0_1
    • V_7_1_0

      public static final Version V_7_1_0
    • V_7_1_1

      public static final Version V_7_1_1
    • V_7_2_0

      public static final Version V_7_2_0
    • V_7_2_1

      public static final Version V_7_2_1
    • V_7_3_0

      public static final Version V_7_3_0
    • V_7_3_1

      public static final Version V_7_3_1
    • V_7_3_2

      public static final Version V_7_3_2
    • V_7_4_0

      public static final Version V_7_4_0
    • V_7_4_1

      public static final Version V_7_4_1
    • V_7_4_2

      public static final Version V_7_4_2
    • V_7_5_0

      public static final Version V_7_5_0
    • V_7_5_1

      public static final Version V_7_5_1
    • V_7_5_2

      public static final Version V_7_5_2
    • V_7_6_0

      public static final Version V_7_6_0
    • V_7_6_1

      public static final Version V_7_6_1
    • V_7_6_2

      public static final Version V_7_6_2
    • V_7_7_0

      public static final Version V_7_7_0
    • V_7_7_1

      public static final Version V_7_7_1
    • V_7_8_0

      public static final Version V_7_8_0
    • V_7_8_1

      public static final Version V_7_8_1
    • V_7_9_0

      public static final Version V_7_9_0
    • V_7_9_1

      public static final Version V_7_9_1
    • V_7_9_2

      public static final Version V_7_9_2
    • V_7_9_3

      public static final Version V_7_9_3
    • V_7_10_0

      public static final Version V_7_10_0
    • V_7_10_1

      public static final Version V_7_10_1
    • V_7_10_2

      public static final Version V_7_10_2
    • V_7_11_0

      public static final Version V_7_11_0
    • V_7_11_1

      public static final Version V_7_11_1
    • V_7_11_2

      public static final Version V_7_11_2
    • V_7_12_0

      public static final Version V_7_12_0
    • V_7_12_1

      public static final Version V_7_12_1
    • V_7_13_0

      public static final Version V_7_13_0
    • V_7_13_1

      public static final Version V_7_13_1
    • V_7_13_2

      public static final Version V_7_13_2
    • V_7_13_3

      public static final Version V_7_13_3
    • V_7_13_4

      public static final Version V_7_13_4
    • V_7_14_0

      public static final Version V_7_14_0
    • V_7_14_1

      public static final Version V_7_14_1
    • V_7_14_2

      public static final Version V_7_14_2
    • V_7_15_0

      public static final Version V_7_15_0
    • V_7_15_1

      public static final Version V_7_15_1
    • V_7_15_2

      public static final Version V_7_15_2
    • V_7_16_0

      public static final Version V_7_16_0
    • V_7_16_1

      public static final Version V_7_16_1
    • V_7_16_2

      public static final Version V_7_16_2
    • V_7_16_3

      public static final Version V_7_16_3
    • V_7_17_0

      public static final Version V_7_17_0
    • V_7_17_1

      public static final Version V_7_17_1
    • V_7_17_2

      public static final Version V_7_17_2
    • V_7_17_3

      public static final Version V_7_17_3
    • V_7_17_4

      public static final Version V_7_17_4
    • V_7_17_5

      public static final Version V_7_17_5
    • V_7_17_6

      public static final Version V_7_17_6
    • V_7_17_7

      public static final Version V_7_17_7
    • V_7_17_8

      public static final Version V_7_17_8
    • V_7_17_9

      public static final Version V_7_17_9
    • V_7_17_10

      public static final Version V_7_17_10
    • V_7_17_11

      public static final Version V_7_17_11
    • V_7_17_12

      public static final Version V_7_17_12
    • V_7_17_13

      public static final Version V_7_17_13
    • V_7_17_14

      public static final Version V_7_17_14
    • V_7_17_15

      public static final Version V_7_17_15
    • V_7_17_16

      public static final Version V_7_17_16
    • V_7_17_17

      public static final Version V_7_17_17
    • V_7_17_18

      public static final Version V_7_17_18
    • V_7_17_19

      public static final Version V_7_17_19
    • V_7_17_20

      public static final Version V_7_17_20
    • V_8_0_0

      public static final Version V_8_0_0
    • V_8_0_1

      public static final Version V_8_0_1
    • V_8_1_0

      public static final Version V_8_1_0
    • V_8_1_1

      public static final Version V_8_1_1
    • V_8_1_2

      public static final Version V_8_1_2
    • V_8_1_3

      public static final Version V_8_1_3
    • V_8_2_0

      public static final Version V_8_2_0
    • V_8_2_1

      public static final Version V_8_2_1
    • V_8_2_2

      public static final Version V_8_2_2
    • V_8_2_3

      public static final Version V_8_2_3
    • V_8_3_0

      public static final Version V_8_3_0
    • V_8_3_1

      public static final Version V_8_3_1
    • V_8_3_2

      public static final Version V_8_3_2
    • V_8_3_3

      public static final Version V_8_3_3
    • V_8_4_0

      public static final Version V_8_4_0
    • V_8_4_1

      public static final Version V_8_4_1
    • V_8_4_2

      public static final Version V_8_4_2
    • V_8_4_3

      public static final Version V_8_4_3
    • V_8_5_0

      public static final Version V_8_5_0
    • V_8_5_1

      public static final Version V_8_5_1
    • V_8_5_2

      public static final Version V_8_5_2
    • V_8_5_3

      public static final Version V_8_5_3
    • V_8_6_0

      public static final Version V_8_6_0
    • V_8_6_1

      public static final Version V_8_6_1
    • V_8_6_2

      public static final Version V_8_6_2
    • V_8_7_0

      public static final Version V_8_7_0
    • V_8_7_1

      public static final Version V_8_7_1
    • V_8_8_0

      public static final Version V_8_8_0
    • V_8_8_1

      public static final Version V_8_8_1
    • V_8_8_2

      public static final Version V_8_8_2
    • V_8_9_0

      public static final Version V_8_9_0
    • V_8_9_1

      public static final Version V_8_9_1
    • V_8_9_2

      public static final Version V_8_9_2
    • V_8_10_0

      public static final Version V_8_10_0
    • V_8_10_1

      public static final Version V_8_10_1
    • V_8_10_2

      public static final Version V_8_10_2
    • V_8_10_3

      public static final Version V_8_10_3
    • V_8_10_4

      public static final Version V_8_10_4
    • V_8_11_0

      public static final Version V_8_11_0
    • V_8_11_1

      public static final Version V_8_11_1
    • V_8_11_2

      public static final Version V_8_11_2
    • V_8_11_3

      public static final Version V_8_11_3
    • V_8_11_4

      public static final Version V_8_11_4
    • V_8_12_0

      public static final Version V_8_12_0
    • V_8_12_1

      public static final Version V_8_12_1
    • V_8_12_2

      public static final Version V_8_12_2
    • V_8_13_0

      public static final Version V_8_13_0
    • V_8_13_1

      public static final Version V_8_13_1
    • V_8_13_2

      public static final Version V_8_13_2
    • CURRENT

      public static final Version CURRENT
    • id

      public final int id
    • major

      public final byte major
    • minor

      public final byte minor
    • revision

      public final byte revision
    • build

      public final byte build
  • Method Details

    • readVersion

      public static Version readVersion(StreamInput in) throws IOException
      Throws:
      IOException
    • fromId

      public static Version fromId(int id)
    • writeVersion

      public static void writeVersion(Version version, StreamOutput out) throws IOException
      Throws:
      IOException
    • min

      public static Version min(Version version1, Version version2)
      Returns the minimum version of version1 and version2
    • max

      public static Version max(Version version1, Version version2)
      Returns the maximum version of version1 and version2
    • fromString

      public static Version fromString(String version)
      Returns the version given its string representation, current version if the argument is null or empty
    • id

      public int id()
      Description copied from interface: VersionId
      The version id this object represents
      Specified by:
      id in interface VersionId<Version>
    • toXContent

      public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws IOException
      Specified by:
      toXContent in interface ToXContent
      Throws:
      IOException
    • minimumCompatibilityVersion

      public Version minimumCompatibilityVersion()
      Returns the minimum compatible version based on the current version. Ie a node needs to have at least the return version in order to communicate with a node running the current version. The returned version is in most of the cases the smallest major version release unless the current version is a beta or RC release then the version itself is returned.
    • isCompatible

      public boolean isCompatible(Version version)
      Returns true iff both version are compatible. Otherwise false
    • previousMajor

      public Version previousMajor()
      Returns a first major version previous to the version stored in this object. I.e 8.1.0 will return 7.0.0
    • main

      public static void main(String[] args)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

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

      public int hashCode()
      Overrides:
      hashCode in class Object
    • getDeclaredVersions

      public static List<Version> getDeclaredVersions(Class<?> versionClass)
      Extracts a sorted list of declared version constants from a class. The argument would normally be Version.class but is exposed for testing with other classes-containing-version-constants.