Package com.io7m.coffeepick.runtime
Class RuntimeVersionRange.Builder
java.lang.Object
com.io7m.coffeepick.runtime.RuntimeVersionRange.Builder
- Enclosing class:
- RuntimeVersionRange
public static final class RuntimeVersionRange.Builder
extends java.lang.Object
Builds instances of type
RuntimeVersionRange
.
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 RuntimeVersionRange
build()
Builds a newRuntimeVersionRange
.RuntimeVersionRange.Builder
from(RuntimeVersionRangeType instance)
Fill a builder with attribute values from the providedRuntimeVersionRangeType
instance.RuntimeVersionRange.Builder
setLower(RuntimeVersion lower)
Initializes the value for thelower
attribute.RuntimeVersionRange.Builder
setLowerExclusive(boolean lowerExclusive)
Initializes the value for thelowerExclusive
attribute.RuntimeVersionRange.Builder
setUpper(RuntimeVersion upper)
Initializes the value for theupper
attribute.RuntimeVersionRange.Builder
setUpperExclusive(boolean upperExclusive)
Initializes the value for theupperExclusive
attribute.
-
Method Details
-
from
Fill a builder with attribute values from the providedRuntimeVersionRangeType
instance. 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:
this
builder for use in a chained invocation
-
setLower
Initializes the value for thelower
attribute.- Parameters:
lower
- The value for lower- Returns:
this
builder for use in a chained invocation
-
setLowerExclusive
Initializes the value for thelowerExclusive
attribute.- Parameters:
lowerExclusive
- The value for lowerExclusive- Returns:
this
builder for use in a chained invocation
-
setUpper
Initializes the value for theupper
attribute.- Parameters:
upper
- The value for upper- Returns:
this
builder for use in a chained invocation
-
setUpperExclusive
Initializes the value for theupperExclusive
attribute.- Parameters:
upperExclusive
- The value for upperExclusive- Returns:
this
builder for use in a chained invocation
-
build
Builds a newRuntimeVersionRange
.- Returns:
- An immutable instance of RuntimeVersionRange
- Throws:
java.lang.IllegalStateException
- if any required attributes are missing
-