public final class ExcludeTraits extends ConfigurableProjectionTransformer<T>
excludeTraits removes trait definitions and traits from
shapes when a trait name matches any of the values given in
traits.
Arguments that end with "#" exclude the traits of an entire
namespace. Trait shape IDs that are relative are assumed to be
part of the smithy.api prelude namespace.
| Modifier and Type | Class and Description |
|---|---|
static class |
ExcludeTraits.Config
excludeTraits configuration settings. |
| Constructor and Description |
|---|
ExcludeTraits() |
| Modifier and Type | Method and 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.
|
java.lang.Class<ExcludeTraits.Config> |
getConfigType()
Gets the configuration class type.
|
java.lang.String |
getName()
Gets the name of the transformer.
|
Model |
transform(TransformContext context)
Transforms the given model using the provided
TransformContext. |
Model |
transformWithConfig(TransformContext context,
ExcludeTraits.Config config)
Executes the transform using the deserialized configuration object.
|
getAdditionalProjectionsFunctionclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcreateServiceFactory, createServiceFactory, createServiceFactorypublic java.lang.Class<ExcludeTraits.Config> getConfigType()
ConfigurableProjectionTransformerThe referenced configType class must be a public POJO with a
public, zero-arg constructor, getters, and setters. If the POJO has a
public static fromNode method, it will be invoked and is
expected to deserialize the Node. If the POJO has a public static
builder method, it will be invoked, setters will be called
on the builder POJO, and finally the result of calling the
build method 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).
getConfigType in class ConfigurableProjectionTransformer<ExcludeTraits.Config>public java.lang.String getName()
ProjectionTransformerpublic Model transformWithConfig(TransformContext context, ExcludeTraits.Config config)
ConfigurableProjectionTransformertransformWithConfig in class ConfigurableProjectionTransformer<ExcludeTraits.Config>context - Transform context.config - Deserialized configuration object.public Model transform(TransformContext context)
ProjectionTransformerTransformContext.transform in interface ProjectionTransformertransform in class ConfigurableProjectionTransformer<T>context - Transformation context.public java.util.List<java.lang.String> getAdditionalProjections(TransformContext context)
ProjectionTransformergetAdditionalProjections in interface ProjectionTransformergetAdditionalProjections in class ConfigurableProjectionTransformer<T>context - Transformation context.