Class TransformContext

java.lang.Object
software.amazon.smithy.build.TransformContext
All Implemented Interfaces:
ToSmithyBuilder<TransformContext>

public final class TransformContext extends Object implements ToSmithyBuilder<TransformContext>
Context object used when applying a ProjectionTransformer.

Implementer's note: A context object is used to allow contextual information provided to projection transforms to evolve over time.

  • Method Details

    • builder

      public static TransformContext.Builder builder()
      Returns:
      Returns a TransformContext builder.
    • toBuilder

      public TransformContext.Builder toBuilder()
      Description copied from interface: ToSmithyBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToSmithyBuilder<TransformContext>
      Returns:
      a builder for type T
    • getSettings

      public ObjectNode getSettings()
      Gets the arguments object of the transform.
      Returns:
      Returns the transformer arguments.
    • getModel

      public Model getModel()
      Gets the model to transform.
      Returns:
      Returns the model to transform.
    • getOriginalModel

      public Optional<Model> getOriginalModel()
      Get the original model before applying the projection.
      Returns:
      The optionally provided original model.
    • getSources

      public Set<Path> getSources()
      Gets the source models, or models that are considered the subject of the build.

      This does not return an exhaustive set of model paths! There are typically two kinds of models that are added to a build: source models and discovered models. Discovered models are someone else's models. Source models are the models owned by the package being built.

      Returns:
      Returns the source models.
    • getProjectionName

      public String getProjectionName()
      Gets the name of the projection being applied.

      If no projection could be found, "source" is assumed.

      Returns:
      Returns the explicit or assumed projection name.
    • getTransformer

      public ModelTransformer getTransformer()
      Gets the ModelTransformer that has been configured to aid in the transformation.
      Returns:
      Returns the model transformer.
    • getOriginalModelValidationEvents

      public List<ValidationEvent> getOriginalModelValidationEvents()
      Gets an immutable list of ValidationEvents that were encountered when loading the source model.
      Returns:
      Returns the encountered validation events.