Package com.google.protobuf
Class RuntimeVersion
- java.lang.Object
-
- com.google.protobuf.RuntimeVersion
-
public final class RuntimeVersion extends java.lang.Object
Provides the version of this Protobuf Java runtime, and methods for Protobuf Java gencode to validate that versions are compatible. Fields and methods in this class should be only accessed by related unit tests and Protobuf Java gencode, and should not be used elsewhere.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
RuntimeVersion.ProtobufRuntimeVersionException
A runtime exception to be thrown by the version validator if version is not well defined or versions mismatch.static class
RuntimeVersion.RuntimeDomain
Indicates the domain of the Protobuf artifact.
-
Field Summary
Fields Modifier and Type Field Description static RuntimeVersion.RuntimeDomain
DOMAIN
private static java.util.logging.Logger
logger
static int
MAJOR
static int
MINOR
static RuntimeVersion.RuntimeDomain
OSS_DOMAIN
static int
OSS_MAJOR
static int
OSS_MINOR
static int
OSS_PATCH
static java.lang.String
OSS_SUFFIX
static int
PATCH
static java.lang.String
SUFFIX
private static java.lang.String
VERSION_STRING
-
Constructor Summary
Constructors Modifier Constructor Description private
RuntimeVersion()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static boolean
checkDisabled()
static void
validateProtobufGencodeVersion(RuntimeVersion.RuntimeDomain domain, int major, int minor, int patch, java.lang.String suffix, java.lang.String location)
Validates that the gencode version is compatible with this runtime version according to https://protobuf.dev/support/cross-version-runtime-guarantee/.private static void
validateProtobufGencodeVersionImpl(RuntimeVersion.RuntimeDomain domain, int major, int minor, int patch, java.lang.String suffix, java.lang.String location)
The actual implementation of version validation.private static java.lang.String
versionString(int major, int minor, int patch, java.lang.String suffix)
Gets the version string given the version segments.
-
-
-
Field Detail
-
OSS_DOMAIN
public static final RuntimeVersion.RuntimeDomain OSS_DOMAIN
-
OSS_MAJOR
public static final int OSS_MAJOR
- See Also:
- Constant Field Values
-
OSS_MINOR
public static final int OSS_MINOR
- See Also:
- Constant Field Values
-
OSS_PATCH
public static final int OSS_PATCH
- See Also:
- Constant Field Values
-
OSS_SUFFIX
public static final java.lang.String OSS_SUFFIX
- See Also:
- Constant Field Values
-
DOMAIN
public static final RuntimeVersion.RuntimeDomain DOMAIN
-
MAJOR
public static final int MAJOR
- See Also:
- Constant Field Values
-
MINOR
public static final int MINOR
- See Also:
- Constant Field Values
-
PATCH
public static final int PATCH
- See Also:
- Constant Field Values
-
SUFFIX
public static final java.lang.String SUFFIX
- See Also:
- Constant Field Values
-
VERSION_STRING
private static final java.lang.String VERSION_STRING
-
logger
private static final java.util.logging.Logger logger
-
-
Method Detail
-
validateProtobufGencodeVersion
public static void validateProtobufGencodeVersion(RuntimeVersion.RuntimeDomain domain, int major, int minor, int patch, java.lang.String suffix, java.lang.String location)
Validates that the gencode version is compatible with this runtime version according to https://protobuf.dev/support/cross-version-runtime-guarantee/.This method is currently only used by Protobuf Java **full version** gencode. Do not call it elsewhere.
- Parameters:
domain
- the domain where Protobuf Java code was generated.major
- the major version of Protobuf Java gencode.minor
- the minor version of Protobuf Java gencode.patch
- the micro/patch version of Protobuf Java gencode.suffix
- the version suffix e.g. "-rc2", "-dev", etc.location
- the debugging location e.g. generated Java class to put in the error messages.- Throws:
RuntimeVersion.ProtobufRuntimeVersionException
- if versions are incompatible.
-
validateProtobufGencodeVersionImpl
private static void validateProtobufGencodeVersionImpl(RuntimeVersion.RuntimeDomain domain, int major, int minor, int patch, java.lang.String suffix, java.lang.String location)
The actual implementation of version validation.
-
versionString
private static java.lang.String versionString(int major, int minor, int patch, java.lang.String suffix)
Gets the version string given the version segments.
-
checkDisabled
private static boolean checkDisabled()
-
-