Package com.io7m.minisite.core
Class MinConfiguration.Builder
java.lang.Object
com.io7m.minisite.core.MinConfiguration.Builder
- Enclosing class:
- MinConfiguration
public static final class MinConfiguration.Builder
extends java.lang.Object
Builds instances of type
MinConfiguration.
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 MinConfiguration.BuilderaddAllCssIncludes(java.lang.Iterable<java.lang.String> elements)Adds elements tocssIncludeslist.MinConfiguration.BuilderaddAllProjectModules(java.lang.Iterable<java.lang.String> elements)Adds elements toprojectModuleslist.MinConfiguration.BuilderaddCssIncludes(java.lang.String element)Adds one element tocssIncludeslist.MinConfiguration.BuilderaddCssIncludes(java.lang.String... elements)Adds elements tocssIncludeslist.MinConfiguration.BuilderaddProjectModules(java.lang.String element)Adds one element toprojectModuleslist.MinConfiguration.BuilderaddProjectModules(java.lang.String... elements)Adds elements toprojectModuleslist.MinConfigurationbuild()Builds a newMinConfiguration.MinConfiguration.Builderfrom(MinConfigurationType instance)Fill a builder with attribute values from the providedMinConfigurationTypeinstance.MinConfiguration.BuildersetBugTracker(MinBugTrackerConfiguration bugTracker)Initializes the optional valuebugTrackerto bugTracker.MinConfiguration.BuildersetBugTracker(java.util.Optional<? extends MinBugTrackerConfiguration> bugTracker)Initializes the optional valuebugTrackerto bugTracker.MinConfiguration.BuildersetCentralReposPath(java.lang.String centralReposPath)Initializes the value for thecentralReposPathattribute.MinConfiguration.BuildersetChangelog(MinChangesConfiguration changelog)Initializes the optional valuechangelogto changelog.MinConfiguration.BuildersetChangelog(java.util.Optional<? extends MinChangesConfiguration> changelog)Initializes the optional valuechangelogto changelog.MinConfiguration.BuildersetCssGenerateStyle(boolean cssGenerateStyle)Initializes the value for thecssGenerateStyleattribute.MinConfiguration.BuildersetCssIncludes(java.lang.Iterable<java.lang.String> elements)Sets or replaces all elements forcssIncludeslist.MinConfiguration.BuildersetDocumentation(java.nio.file.Path documentation)Initializes the optional valuedocumentationto documentation.MinConfiguration.BuildersetDocumentation(java.util.Optional<? extends java.nio.file.Path> documentation)Initializes the optional valuedocumentationto documentation.MinConfiguration.BuildersetFeatures(java.nio.file.Path features)Initializes the optional valuefeaturesto features.MinConfiguration.BuildersetFeatures(java.util.Optional<? extends java.nio.file.Path> features)Initializes the optional valuefeaturesto features.MinConfiguration.BuildersetHeader(java.nio.file.Path header)Initializes the optional valueheaderto header.MinConfiguration.BuildersetHeader(java.util.Optional<? extends java.nio.file.Path> header)Initializes the optional valueheaderto header.MinConfiguration.BuildersetLicense(java.nio.file.Path license)Initializes the optional valuelicenseto license.MinConfiguration.BuildersetLicense(java.util.Optional<? extends java.nio.file.Path> license)Initializes the optional valuelicenseto license.MinConfiguration.BuildersetOverview(java.nio.file.Path overview)Initializes the optional valueoverviewto overview.MinConfiguration.BuildersetOverview(java.util.Optional<? extends java.nio.file.Path> overview)Initializes the optional valueoverviewto overview.MinConfiguration.BuildersetProjectGroupName(java.lang.String projectGroupName)Initializes the value for theprojectGroupNameattribute.MinConfiguration.BuildersetProjectModules(java.lang.Iterable<java.lang.String> elements)Sets or replaces all elements forprojectModuleslist.MinConfiguration.BuildersetProjectName(java.lang.String projectName)Initializes the value for theprojectNameattribute.MinConfiguration.BuildersetRelease(java.lang.String release)Initializes the value for thereleaseattribute.MinConfiguration.BuildersetSources(MinSourcesConfiguration sources)Initializes the optional valuesourcesto sources.MinConfiguration.BuildersetSources(java.util.Optional<? extends MinSourcesConfiguration> sources)Initializes the optional valuesourcesto sources.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Method Details
-
from
Fill a builder with attribute values from the providedMinConfigurationTypeinstance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values. Collection elements and entries will be added, not replaced.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
setProjectName
Initializes the value for theprojectNameattribute.- Parameters:
projectName- The value for projectName- Returns:
thisbuilder for use in a chained invocation
-
setProjectGroupName
Initializes the value for theprojectGroupNameattribute.- Parameters:
projectGroupName- The value for projectGroupName- Returns:
thisbuilder for use in a chained invocation
-
addProjectModules
Adds one element toprojectModuleslist.- Parameters:
element- A projectModules element- Returns:
thisbuilder for use in a chained invocation
-
addProjectModules
Adds elements toprojectModuleslist.- Parameters:
elements- An array of projectModules elements- Returns:
thisbuilder for use in a chained invocation
-
setProjectModules
public final MinConfiguration.Builder setProjectModules(java.lang.Iterable<java.lang.String> elements)Sets or replaces all elements forprojectModuleslist.- Parameters:
elements- An iterable of projectModules elements- Returns:
thisbuilder for use in a chained invocation
-
addAllProjectModules
public final MinConfiguration.Builder addAllProjectModules(java.lang.Iterable<java.lang.String> elements)Adds elements toprojectModuleslist.- Parameters:
elements- An iterable of projectModules elements- Returns:
thisbuilder for use in a chained invocation
-
setRelease
Initializes the value for thereleaseattribute.- Parameters:
release- The value for release- Returns:
thisbuilder for use in a chained invocation
-
setCentralReposPath
Initializes the value for thecentralReposPathattribute.- Parameters:
centralReposPath- The value for centralReposPath- Returns:
thisbuilder for use in a chained invocation
-
setHeader
Initializes the optional valueheaderto header.- Parameters:
header- The value for header- Returns:
thisbuilder for chained invocation
-
setHeader
public final MinConfiguration.Builder setHeader(java.util.Optional<? extends java.nio.file.Path> header)Initializes the optional valueheaderto header.- Parameters:
header- The value for header- Returns:
thisbuilder for use in a chained invocation
-
setOverview
Initializes the optional valueoverviewto overview.- Parameters:
overview- The value for overview- Returns:
thisbuilder for chained invocation
-
setOverview
public final MinConfiguration.Builder setOverview(java.util.Optional<? extends java.nio.file.Path> overview)Initializes the optional valueoverviewto overview.- Parameters:
overview- The value for overview- Returns:
thisbuilder for use in a chained invocation
-
setFeatures
Initializes the optional valuefeaturesto features.- Parameters:
features- The value for features- Returns:
thisbuilder for chained invocation
-
setFeatures
public final MinConfiguration.Builder setFeatures(java.util.Optional<? extends java.nio.file.Path> features)Initializes the optional valuefeaturesto features.- Parameters:
features- The value for features- Returns:
thisbuilder for use in a chained invocation
-
setDocumentation
Initializes the optional valuedocumentationto documentation.- Parameters:
documentation- The value for documentation- Returns:
thisbuilder for chained invocation
-
setDocumentation
public final MinConfiguration.Builder setDocumentation(java.util.Optional<? extends java.nio.file.Path> documentation)Initializes the optional valuedocumentationto documentation.- Parameters:
documentation- The value for documentation- Returns:
thisbuilder for use in a chained invocation
-
setChangelog
Initializes the optional valuechangelogto changelog.- Parameters:
changelog- The value for changelog- Returns:
thisbuilder for chained invocation
-
setChangelog
public final MinConfiguration.Builder setChangelog(java.util.Optional<? extends MinChangesConfiguration> changelog)Initializes the optional valuechangelogto changelog.- Parameters:
changelog- The value for changelog- Returns:
thisbuilder for use in a chained invocation
-
setLicense
Initializes the optional valuelicenseto license.- Parameters:
license- The value for license- Returns:
thisbuilder for chained invocation
-
setLicense
public final MinConfiguration.Builder setLicense(java.util.Optional<? extends java.nio.file.Path> license)Initializes the optional valuelicenseto license.- Parameters:
license- The value for license- Returns:
thisbuilder for use in a chained invocation
-
setBugTracker
Initializes the optional valuebugTrackerto bugTracker.- Parameters:
bugTracker- The value for bugTracker- Returns:
thisbuilder for chained invocation
-
setBugTracker
public final MinConfiguration.Builder setBugTracker(java.util.Optional<? extends MinBugTrackerConfiguration> bugTracker)Initializes the optional valuebugTrackerto bugTracker.- Parameters:
bugTracker- The value for bugTracker- Returns:
thisbuilder for use in a chained invocation
-
setSources
Initializes the optional valuesourcesto sources.- Parameters:
sources- The value for sources- Returns:
thisbuilder for chained invocation
-
setSources
public final MinConfiguration.Builder setSources(java.util.Optional<? extends MinSourcesConfiguration> sources)Initializes the optional valuesourcesto sources.- Parameters:
sources- The value for sources- Returns:
thisbuilder for use in a chained invocation
-
addCssIncludes
Adds one element tocssIncludeslist.- Parameters:
element- A cssIncludes element- Returns:
thisbuilder for use in a chained invocation
-
addCssIncludes
Adds elements tocssIncludeslist.- Parameters:
elements- An array of cssIncludes elements- Returns:
thisbuilder for use in a chained invocation
-
setCssIncludes
public final MinConfiguration.Builder setCssIncludes(java.lang.Iterable<java.lang.String> elements)Sets or replaces all elements forcssIncludeslist.- Parameters:
elements- An iterable of cssIncludes elements- Returns:
thisbuilder for use in a chained invocation
-
addAllCssIncludes
public final MinConfiguration.Builder addAllCssIncludes(java.lang.Iterable<java.lang.String> elements)Adds elements tocssIncludeslist.- Parameters:
elements- An iterable of cssIncludes elements- Returns:
thisbuilder for use in a chained invocation
-
setCssGenerateStyle
Initializes the value for thecssGenerateStyleattribute.If not set, this attribute will have a default value as returned by the initializer of
cssGenerateStyle.- Parameters:
cssGenerateStyle- The value for cssGenerateStyle- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newMinConfiguration.- Returns:
- An immutable instance of MinConfiguration
- Throws:
java.lang.IllegalStateException- if any required attributes are missing
-