public class ProtocolVersion
extends java.lang.Object
Constructor and Description |
---|
ProtocolVersion(int version,
int snapshotVersion,
java.lang.String name,
@Nullable VersionRange versionRange) |
ProtocolVersion(int version,
java.lang.String name) |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object o) |
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)
Returns the internal index of the stored protocol version.
|
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)
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.
|
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)
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).
|
static ProtocolVersion |
register(int version,
int snapshotVersion,
java.lang.String name) |
static ProtocolVersion |
register(int version,
int snapshotVersion,
java.lang.String name,
@Nullable VersionRange versionRange)
Registers a protocol version.
|
static ProtocolVersion |
register(int version,
java.lang.String name) |
static ProtocolVersion |
register(int version,
java.lang.String name,
@Nullable VersionRange versionRange) |
java.lang.String |
toString() |
public static final ProtocolVersion v1_4_6
public static final ProtocolVersion v1_5_1
public static final ProtocolVersion v1_5_2
public static final ProtocolVersion v_1_6_1
public static final ProtocolVersion v_1_6_2
public static final ProtocolVersion v_1_6_3
public static final ProtocolVersion v_1_6_4
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 unknown
public ProtocolVersion(int version, java.lang.String name)
version
- protocol versionname
- version namepublic ProtocolVersion(int version, int snapshotVersion, java.lang.String name, @Nullable VersionRange versionRange)
version
- 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 VersionRange versionRange)
public static ProtocolVersion register(int version, int snapshotVersion, java.lang.String name, @Nullable VersionRange versionRange)
version
- release protocol versionsnapshotVersion
- snapshot protocol version, or -1 if not a snapshotname
- version nameversionRange
- range of versions that are supported by this protocol version, null if not a rangeProtocolVersion
public static boolean isRegistered(int version)
version
- protocol versionpublic static @NonNull ProtocolVersion getProtocol(int version)
ProtocolVersion
instance, even if this protocol version
has not been registered. See isRegistered(int)
berorehand or isKnown()
.version
- protocol versionProtocolVersion
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 int getVersion()
public int getSnapshotVersion()
java.lang.IllegalArgumentException
- if the version if not a snapshot versionisSnapshot()
public int getFullSnapshotVersion()
java.lang.IllegalArgumentException
- if the version if 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 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