Package com.io7m.montarre.api
Class MPackageDeclaration.Builder
java.lang.Object
com.io7m.montarre.api.MPackageDeclaration.Builder
- Enclosing class:
MPackageDeclaration
Builds instances of type
MPackageDeclaration.
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 TypeMethodDescriptionbuild()Builds a newMPackageDeclaration.from(MPackageDeclarationType instance) Fill a builder with attribute values from the providedMPackageDeclarationTypeinstance.setManifest(MManifestType manifest) Initializes the value for themanifestattribute.setMetadata(MMetadataType metadata) Initializes the value for themetadataattribute.
-
Method Details
-
from
Fill a builder with attribute values from the providedMPackageDeclarationTypeinstance. 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
-
setMetadata
Initializes the value for themetadataattribute.- Parameters:
metadata- The value for metadata- Returns:
thisbuilder for use in a chained invocation
-
setManifest
Initializes the value for themanifestattribute.- Parameters:
manifest- The value for manifest- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newMPackageDeclaration.- Returns:
- An immutable instance of MPackageDeclaration
- Throws:
IllegalStateException- if any required attributes are missing
-