Class IncludeTraits

  • All Implemented Interfaces:
    ProjectionTransformer

    public final class IncludeTraits
    extends ConfigurableProjectionTransformer<T>
    includeTraits removes trait definitions when a trait name does not match one of the provided traits shape IDs. Any instance of the trait is also removed from the model.

    End an argument with "#" to include the traits from an entire namespace. Trait shape IDs that are relative are assumed to be part of the smithy.api prelude namespace.

    • Constructor Detail

      • IncludeTraits

        public IncludeTraits()
    • Method Detail

      • getConfigType

        public java.lang.Class<IncludeTraits.Config> getConfigType()
        Description copied from class: ConfigurableProjectionTransformer
        Gets the configuration class type.

        The 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).

        Specified by:
        getConfigType in class ConfigurableProjectionTransformer<IncludeTraits.Config>
        Returns:
        Returns the configuration class (a POJO with setters/getters).
      • getName

        public java.lang.String getName()
        Description copied from interface: ProjectionTransformer
        Gets the name of the transformer.
        Returns:
        Returns the name (e.g., "traits").