Package software.amazon.smithy.build
Class PluginContext.Builder
java.lang.Object
software.amazon.smithy.build.PluginContext.Builder
- All Implemented Interfaces:
SmithyBuilder<PluginContext>
- Enclosing class:
- PluginContext
public static final class PluginContext.Builder
extends Object
implements SmithyBuilder<PluginContext>
Builds a
PluginContext
.-
Method Summary
Modifier and TypeMethodDescriptionartifactName
(String artifactName) Set a custom artifact name used to change the output directory of a plugin.build()
Creates an immutable object that is created from the properties that have been set on the builder.events
(List<ValidationEvent> events) Sets the validation events that occurred after projecting the model.fileManifest
(FileManifest fileManifest) Sets the requiredFileManifest
to use in the plugin.Sets the required model that is being built.originalModel
(Model originalModel) Sets the model that is being built before it was transformed in the projection.pluginClassLoader
(ClassLoader pluginClassLoader) Sets a ClassLoader that should be used by build plugins when loading services.projection
(String name, ProjectionConfig projection) Sets the projection that the plugin belongs to.settings
(ObjectNode settings) Sets the settings of the plugin.sources
(Collection<Path> sources) Replaces the path to models that are considered "source" models of the package being built.
-
Method Details
-
build
Description copied from interface:SmithyBuilder
Creates an immutable object that is created from the properties that have been set on the builder.- Specified by:
build
in interfaceSmithyBuilder<PluginContext>
- Returns:
- an instance of T
-
fileManifest
Sets the requiredFileManifest
to use in the plugin.- Parameters:
fileManifest
- FileManifest to use.- Returns:
- Returns the builder.
-
model
Sets the required model that is being built.- Parameters:
model
- Model to set.- Returns:
- Returns the builder.
-
projection
Sets the projection that the plugin belongs to.- Parameters:
name
- Name of the projection.projection
- ProjectionConfig to set.- Returns:
- Returns the builder.
-
originalModel
Sets the model that is being built before it was transformed in the projection.- Parameters:
originalModel
- Original Model to set.- Returns:
- Returns the builder.
-
events
Sets the validation events that occurred after projecting the model.- Parameters:
events
- Validation events to set.- Returns:
- Returns the builder.
-
settings
Sets the settings of the plugin.- Parameters:
settings
- Settings to set.- Returns:
- Returns the builder.
-
pluginClassLoader
Sets a ClassLoader that should be used by build plugins when loading services.- Parameters:
pluginClassLoader
- ClassLoader to use in build plugins.- Returns:
- Retruns the builder.
-
sources
Replaces the path to models that are considered "source" models of the package being built.- Parameters:
sources
- Source models to set.- Returns:
- Returns the builder.
-
artifactName
Set a custom artifact name used to change the output directory of a plugin.An artifact name is useful when running plugins like "run" or when running a plugin multiple times in a single projection.
- Parameters:
artifactName
- Custom artifact name to set.- Returns:
- Returns the builder.
-