Package com.io7m.coffeepick.runtime
Class RuntimeVersion.Builder
java.lang.Object
com.io7m.coffeepick.runtime.RuntimeVersion.Builder
- Enclosing class:
- RuntimeVersion
public static final class RuntimeVersion.Builder
extends java.lang.Object
Builds instances of type
RuntimeVersion.
Initialize attributes and then invoke the build() method to create an
immutable instance.
Builder is not thread-safe and generally should not be stored in a field or collection,
but instead used immediately to create instances.
-
Method Summary
Modifier and Type Method Description RuntimeVersionbuild()Builds a newRuntimeVersion.RuntimeVersion.Builderfrom(RuntimeVersionType instance)Fill a builder with attribute values from the providedRuntimeVersionTypeinstance.RuntimeVersion.BuildersetBuild(java.math.BigInteger build)Initializes the optional valuebuildto build.RuntimeVersion.BuildersetBuild(java.util.Optional<? extends java.math.BigInteger> build)Initializes the optional valuebuildto build.RuntimeVersion.BuildersetMajor(java.math.BigInteger major)Initializes the value for themajorattribute.RuntimeVersion.BuildersetMinor(java.math.BigInteger minor)Initializes the value for theminorattribute.RuntimeVersion.BuildersetPatch(java.math.BigInteger patch)Initializes the value for thepatchattribute.
-
Method Details
-
from
Fill a builder with attribute values from the providedRuntimeVersionTypeinstance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
setMajor
Initializes the value for themajorattribute.- Parameters:
major- The value for major- Returns:
thisbuilder for use in a chained invocation
-
setMinor
Initializes the value for theminorattribute.- Parameters:
minor- The value for minor- Returns:
thisbuilder for use in a chained invocation
-
setPatch
Initializes the value for thepatchattribute.- Parameters:
patch- The value for patch- Returns:
thisbuilder for use in a chained invocation
-
setBuild
Initializes the optional valuebuildto build.- Parameters:
build- The value for build- Returns:
thisbuilder for chained invocation
-
setBuild
public final RuntimeVersion.Builder setBuild(java.util.Optional<? extends java.math.BigInteger> build)Initializes the optional valuebuildto build.- Parameters:
build- The value for build- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newRuntimeVersion.- Returns:
- An immutable instance of RuntimeVersion
- Throws:
java.lang.IllegalStateException- if any required attributes are missing
-