Class Apply
- java.lang.Object
- 
- software.amazon.smithy.build.transforms.ConfigurableProjectionTransformer<T>
- 
- software.amazon.smithy.build.transforms.Apply
 
 
- 
- All Implemented Interfaces:
- ProjectionTransformer
 
 public final class Apply extends ConfigurableProjectionTransformer<T> Applies transforms of other projections.
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static classApply.Configapplyconfiguration.
 - 
Constructor SummaryConstructors Constructor Description Apply()
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<java.lang.String>getAdditionalProjections(TransformContext context)Allows the composition of projections by returning additional projections to run after the current one.protected java.util.Optional<java.util.function.BiFunction<TransformContext,Apply.Config,java.util.List<java.lang.String>>>getAdditionalProjectionsFunction()java.lang.Class<Apply.Config>getConfigType()Gets the configuration class type.java.lang.StringgetName()Gets the name of the transformer.Modeltransform(TransformContext context)Transforms the given model using the providedTransformContext.protected ModeltransformWithConfig(TransformContext context, Apply.Config config)Executes the transform using the deserialized configuration object.
 
- 
- 
- 
Method Detail- 
getConfigTypepublic java.lang.Class<Apply.Config> getConfigType() Description copied from class:ConfigurableProjectionTransformerGets the configuration class type.The referenced configTypeclass must be a public POJO with a public, zero-arg constructor, getters, and setters. If the POJO has a public staticfromNodemethod, it will be invoked and is expected to deserialize the Node. If the POJO has a public staticbuildermethod, it will be invoked, setters will be called on the builder POJO, and finally the result of calling thebuildmethod is used as the configuration type. Finally, the deserializer will attempt to create the type and call setters on the instantiated object that correspond to property names (either named "set" + property name, or just property name).- Specified by:
- getConfigTypein class- ConfigurableProjectionTransformer<Apply.Config>
- Returns:
- Returns the configuration class (a POJO with setters/getters).
 
 - 
getNamepublic java.lang.String getName() Description copied from interface:ProjectionTransformerGets the name of the transformer.- Returns:
- Returns the name (e.g., "traits").
 
 - 
transformpublic Model transform(TransformContext context) Description copied from interface:ProjectionTransformerTransforms the given model using the providedTransformContext.- Specified by:
- transformin interface- ProjectionTransformer
- Parameters:
- context- Transformation context.
- Returns:
- Returns the created transformer.
 
 - 
transformWithConfigprotected Model transformWithConfig(TransformContext context, Apply.Config config) Description copied from class:ConfigurableProjectionTransformerExecutes the transform using the deserialized configuration object.- Specified by:
- transformWithConfigin class- ConfigurableProjectionTransformer<Apply.Config>
- Parameters:
- context- Transform context.
- config- Deserialized configuration object.
- Returns:
- Returns the transformed model.
 
 - 
getAdditionalProjectionsFunctionprotected java.util.Optional<java.util.function.BiFunction<TransformContext,Apply.Config,java.util.List<java.lang.String>>> getAdditionalProjectionsFunction() - Overrides:
- getAdditionalProjectionsFunctionin class- ConfigurableProjectionTransformer<Apply.Config>
- Returns:
- an Optional of either a BiFunction that returns the additional projections to run after this one, or empty to indicate this projection will never compose other ones.
 
 - 
getAdditionalProjectionspublic java.util.List<java.lang.String> getAdditionalProjections(TransformContext context) Description copied from interface:ProjectionTransformerAllows the composition of projections by returning additional projections to run after the current one.- Specified by:
- getAdditionalProjectionsin interface- ProjectionTransformer
- Overrides:
- getAdditionalProjectionsin class- ConfigurableProjectionTransformer<T>
- Parameters:
- context- Transformation context.
- Returns:
- a collection of named projections to run.
 
 
- 
 
-