public class ProtocolVersion extends java.lang.Object implements java.lang.Comparable<ProtocolVersion>
Constructor and Description |
---|
ProtocolVersion(int version,
int snapshotVersion,
java.lang.String name,
@Nullable SubVersionRange versionRange)
Deprecated.
|
ProtocolVersion(int version,
java.lang.String name)
Deprecated.
|
ProtocolVersion(VersionType versionType,
int version,
int snapshotVersion,
java.lang.String name,
@Nullable SubVersionRange versionRange)
Constructs a new ProtocolVersion instance.
|
Modifier and Type | Method and Description |
---|---|
boolean |
betweenExclusive(ProtocolVersion min,
ProtocolVersion max)
Returns whether this protocol version is between the given protocol versions, exclusive.
|
boolean |
betweenInclusive(ProtocolVersion min,
ProtocolVersion max)
Returns whether this protocol version is between the given protocol versions, inclusive.
|
int |
compareTo(ProtocolVersion other) |
protected @Nullable java.util.Comparator<ProtocolVersion> |
customComparator()
Returns a custom comparator used to compare protocol versions.
|
boolean |
equals(java.lang.Object o) |
boolean |
equalTo(ProtocolVersion other)
Returns whether this protocol version is equal to the other protocol version.
|
static @Nullable ProtocolVersion |
getClosest(java.lang.String protocol)
Returns the registered protocol version if present, else null.
|
int |
getFullSnapshotVersion()
Returns the snapshot protocol version with the snapshot indicator bit if this is a snapshot protocol version.
|
java.util.Set<java.lang.String> |
getIncludedVersions()
Returns an immutable set of all included versions if the protocol is a version range.
|
static int |
getIndex(ProtocolVersion version)
Deprecated.
comparison should be done via the comparison methods
|
java.lang.String |
getName()
Returns the version name.
|
int |
getOriginalVersion()
Returns the release version if release, snapshot version (with the snapshot indicator bit) if snapshot.
|
static @NonNull ProtocolVersion |
getProtocol(int version) |
static @NonNull ProtocolVersion |
getProtocol(VersionType versionType,
int version)
Returns a ProtocolVersion instance, even if this protocol version
has not been registered.
|
static java.util.List<ProtocolVersion> |
getProtocols()
Returns an immutable list of registered protocol versions.
|
int |
getSnapshotVersion()
Returns the snapshot protocol version without the snapshot indicator bit if this is a snapshot protocol version.
|
int |
getVersion()
Returns the release protocol version.
|
VersionType |
getVersionType()
Returns the type of version (excluding whether it is a snapshot).
|
int |
hashCode() |
boolean |
isKnown()
Returns whether the protocol is set.
|
boolean |
isRange()
Returns whether the protocol includes a range of versions (but not an entire major version range), for example 1.7-1.7.5.
|
static boolean |
isRegistered(int version) |
static boolean |
isRegistered(VersionType versionType,
int version)
Returns whether a protocol with the given protocol version is registered.
|
boolean |
isSnapshot()
Returns whether this represents a snapshot version.
|
boolean |
isVersionWildcard()
Returns whether the protocol includes an entire major version range (for example 1.8.x).
|
boolean |
newerThan(ProtocolVersion other)
Returns whether this protocol version is higher than the other protocol version.
|
boolean |
newerThanOrEqualTo(ProtocolVersion other)
Returns whether this protocol version is higher than or equal to the other protocol version.
|
boolean |
olderThan(ProtocolVersion other)
Returns whether this protocol version is lower than the other protocol version.
|
boolean |
olderThanOrEqualTo(ProtocolVersion other)
Returns whether this protocol version is lower than or equal to the other protocol version.
|
static ProtocolVersion |
register(int version,
int snapshotVersion,
java.lang.String name) |
static ProtocolVersion |
register(int version,
java.lang.String name) |
static ProtocolVersion |
register(int version,
java.lang.String name,
@Nullable SubVersionRange versionRange) |
static void |
register(ProtocolVersion protocolVersion)
Registers a protocol version.
|
java.lang.String |
toString() |
public static final ProtocolVersion v1_7_2
@Deprecated public static final ProtocolVersion v1_7_1
public static final ProtocolVersion v1_7_6
public static final ProtocolVersion v1_8
public static final ProtocolVersion v1_9
public static final ProtocolVersion v1_9_1
public static final ProtocolVersion v1_9_2
public static final ProtocolVersion v1_9_3
public static final ProtocolVersion v1_10
public static final ProtocolVersion v1_11
public static final ProtocolVersion v1_11_1
public static final ProtocolVersion v1_12
public static final ProtocolVersion v1_12_1
public static final ProtocolVersion v1_12_2
public static final ProtocolVersion v1_13
public static final ProtocolVersion v1_13_1
public static final ProtocolVersion v1_13_2
public static final ProtocolVersion v1_14
public static final ProtocolVersion v1_14_1
public static final ProtocolVersion v1_14_2
public static final ProtocolVersion v1_14_3
public static final ProtocolVersion v1_14_4
public static final ProtocolVersion v1_15
public static final ProtocolVersion v1_15_1
public static final ProtocolVersion v1_15_2
public static final ProtocolVersion v1_16
public static final ProtocolVersion v1_16_1
public static final ProtocolVersion v1_16_2
public static final ProtocolVersion v1_16_3
public static final ProtocolVersion v1_16_4
public static final ProtocolVersion v1_17
public static final ProtocolVersion v1_17_1
public static final ProtocolVersion v1_18
public static final ProtocolVersion v1_18_2
public static final ProtocolVersion v1_19
public static final ProtocolVersion v1_19_1
public static final ProtocolVersion v1_19_3
public static final ProtocolVersion v1_19_4
public static final ProtocolVersion v1_20
public static final ProtocolVersion v1_20_2
public static final ProtocolVersion v1_20_3
public static final ProtocolVersion v1_20_5
public static final ProtocolVersion unknown
@Deprecated public ProtocolVersion(int version, java.lang.String name)
version
- protocol versionname
- version name@Deprecated public ProtocolVersion(int version, int snapshotVersion, java.lang.String name, @Nullable SubVersionRange versionRange)
public ProtocolVersion(VersionType versionType, int version, int snapshotVersion, java.lang.String name, @Nullable SubVersionRange versionRange)
versionType
- protocol version typeversion
- protocol versionsnapshotVersion
- actual snapshot protocol version, -1 if not a snapshotname
- version nameversionRange
- range of versions that are supported by this protocol version, null if not a rangepublic static ProtocolVersion register(int version, java.lang.String name)
public static ProtocolVersion register(int version, int snapshotVersion, java.lang.String name)
public static ProtocolVersion register(int version, java.lang.String name, @Nullable SubVersionRange versionRange)
public static void register(ProtocolVersion protocolVersion)
protocolVersion
- protocol version to registerpublic static boolean isRegistered(VersionType versionType, int version)
version
- protocol versionpublic static boolean isRegistered(int version)
public static @NonNull ProtocolVersion getProtocol(VersionType versionType, int version)
isRegistered(VersionType, int)
beforehand or isKnown()
.versionType
- protocol version typeversion
- protocol versionpublic static @NonNull ProtocolVersion getProtocol(int version)
@Deprecated public static int getIndex(ProtocolVersion version)
version
- protocol version instancepublic static java.util.List<ProtocolVersion> getProtocols()
public static @Nullable ProtocolVersion getClosest(java.lang.String protocol)
protocol
- version name, e.g. "1.16.3"public VersionType getVersionType()
isSnapshot()
public int getVersion()
public int getSnapshotVersion()
java.lang.IllegalArgumentException
- if the version is not a snapshot versionisSnapshot()
public int getFullSnapshotVersion()
java.lang.IllegalArgumentException
- if the version is not a snapshot versionisSnapshot()
public int getOriginalVersion()
public boolean isKnown()
getProtocol(int)
.public boolean isRange()
getIncludedVersions()
public java.util.Set<java.lang.String> getIncludedVersions()
isVersionWildcard()
),
the set will only contain the string given in getName()
.isRange()
public boolean isVersionWildcard()
public java.lang.String getName()
public boolean isSnapshot()
public boolean equalTo(ProtocolVersion other)
other
- other protocol versionpublic boolean newerThan(ProtocolVersion other)
other
- other protocol versionpublic boolean newerThanOrEqualTo(ProtocolVersion other)
other
- other protocol versionpublic boolean olderThan(ProtocolVersion other)
other
- other protocol versionpublic boolean olderThanOrEqualTo(ProtocolVersion other)
other
- other protocol versionpublic boolean betweenInclusive(ProtocolVersion min, ProtocolVersion max)
min
- minimum versionmax
- maximum versionpublic boolean betweenExclusive(ProtocolVersion min, ProtocolVersion max)
min
- minimum versionmax
- maximum versionprotected @Nullable java.util.Comparator<ProtocolVersion> customComparator()
VersionType.SPECIAL
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object
public int compareTo(ProtocolVersion other)
compareTo
in interface java.lang.Comparable<ProtocolVersion>