Class ImmutableMavenProtocPlugin.Builder
java.lang.Object
io.github.ascopes.protobufmavenplugin.plugins.ImmutableMavenProtocPlugin.Builder
- Enclosing class:
ImmutableMavenProtocPlugin
Builds instances of type
ImmutableMavenProtocPlugin
.
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 TypeMethodDescriptionartifactId
(String artifactId) Initializes the value for theartifactId
attribute.build()
Builds a newImmutableMavenProtocPlugin
.classifier
(@Nullable String classifier) Initializes the value for theclassifier
attribute.from
(MavenArtifact instance) Fill a builder with attribute values from the providedio.github.ascopes.protobufmavenplugin.dependencies.MavenArtifact
instance.from
(MavenProtocPlugin instance) Fill a builder with attribute values from the providedio.github.ascopes.protobufmavenplugin.plugins.MavenProtocPlugin
instance.from
(MavenProtocPluginBean instance) Fill a builder with attribute values from the providedMavenProtocPluginBean
instance.from
(ProtocPlugin instance) Fill a builder with attribute values from the providedio.github.ascopes.protobufmavenplugin.plugins.ProtocPlugin
instance.Initializes the value for thegroupId
attribute.isSkip
(boolean isSkip) Initializes the value for theisSkip
attribute.Initializes the value for theoptions
attribute.order
(int order) Initializes the value for theorder
attribute.Initializes the value for thetype
attribute.Initializes the value for theversion
attribute.
-
Method Details
-
from
Fill a builder with attribute values from the providedMavenProtocPluginBean
instance.- Parameters:
instance
- The instance from which to copy values- Returns:
this
builder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedio.github.ascopes.protobufmavenplugin.plugins.MavenProtocPlugin
instance.- Parameters:
instance
- The instance from which to copy values- Returns:
this
builder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedio.github.ascopes.protobufmavenplugin.plugins.ProtocPlugin
instance.- Parameters:
instance
- The instance from which to copy values- Returns:
this
builder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedio.github.ascopes.protobufmavenplugin.dependencies.MavenArtifact
instance.- Parameters:
instance
- The instance from which to copy values- Returns:
this
builder for use in a chained invocation
-
groupId
Initializes the value for thegroupId
attribute.- Parameters:
groupId
- The value for groupId (can benull
)- Returns:
this
builder for use in a chained invocation
-
artifactId
Initializes the value for theartifactId
attribute.- Parameters:
artifactId
- The value for artifactId (can benull
)- Returns:
this
builder for use in a chained invocation
-
version
Initializes the value for theversion
attribute.- Parameters:
version
- The value for version (can benull
)- Returns:
this
builder for use in a chained invocation
-
type
Initializes the value for thetype
attribute.- Parameters:
type
- The value for type (can benull
)- Returns:
this
builder for use in a chained invocation
-
classifier
Initializes the value for theclassifier
attribute.- Parameters:
classifier
- The value for classifier (can benull
)- Returns:
this
builder for use in a chained invocation
-
options
Initializes the value for theoptions
attribute.- Parameters:
options
- The value for options (can benull
)- Returns:
this
builder for use in a chained invocation
-
order
-
isSkip
-
build
Builds a newImmutableMavenProtocPlugin
.- Returns:
- An immutable instance of MavenProtocPlugin
- Throws:
IllegalStateException
- if any required attributes are missing
-