Package pl.poznan.put.circular
Class ImmutableHistogram.Builder
- java.lang.Object
-
- pl.poznan.put.circular.ImmutableHistogram.Builder
-
- Enclosing class:
- ImmutableHistogram
@NotThreadSafe public static final class ImmutableHistogram.Builder extends Object
Builds instances of typeImmutableHistogram. Initialize attributes and then invoke thebuild()method to create an immutable instance.Builderis not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ImmutableHistogram.BuilderbinWidth(double binWidth)Initializes the value for thebinWidthattribute.ImmutableHistogrambuild()Builds a newImmutableHistogram.ImmutableHistogram.Builderdata(Collection<Angle> data)Initializes the value for thedataattribute.ImmutableHistogram.Builderfrom(Histogram instance)Fill a builder with attribute values from the providedHistograminstance.
-
-
-
Method Detail
-
from
public final ImmutableHistogram.Builder from(Histogram instance)
Fill a builder with attribute values from the providedHistograminstance. 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
-
data
public final ImmutableHistogram.Builder data(Collection<Angle> data)
Initializes the value for thedataattribute.- Parameters:
data- The value for data- Returns:
thisbuilder for use in a chained invocation
-
binWidth
public final ImmutableHistogram.Builder binWidth(double binWidth)
Initializes the value for thebinWidthattribute.- Parameters:
binWidth- The value for binWidth- Returns:
thisbuilder for use in a chained invocation
-
build
public ImmutableHistogram build()
Builds a newImmutableHistogram.- Returns:
- An immutable instance of Histogram
- Throws:
IllegalStateException- if any required attributes are missing
-
-