Class TaggableTrait

java.lang.Object
software.amazon.smithy.model.traits.AbstractTrait
software.amazon.smithy.aws.traits.tagging.TaggableTrait
All Implemented Interfaces:
FromSourceLocation, ToNode, ToShapeId, Trait, ToSmithyBuilder<TaggableTrait>

public final class TaggableTrait extends AbstractTrait implements ToSmithyBuilder<TaggableTrait>
Marks a resource shape as taggable for further model validation.
  • Field Details

    • ID

      public static final ShapeId ID
  • Method Details

    • getDisableSystemTags

      public boolean getDisableSystemTags()
      Gets a boolean indicating whether or not the service supports the resource carrying system tags.
      Returns:
      Returns true if the service does not support the resource carrying system tags.
    • getApiConfig

      public Optional<TaggableApiConfig> getApiConfig()
      Gets the TaggableApiConfig if the resource has its own APIs for tagging.
      Returns:
      the TaggableApiConfig for the resource.
    • getProperty

      public Optional<String> getProperty()
      Gets the name of the property that represents the tags on the resource, if any.
      Returns:
      the name of the property that represents the tags of the resource.
    • createNode

      protected Node createNode()
      Description copied from class: AbstractTrait
      The result of toNode is used for hashCodes and equality. Subclasses must implement createNode to turn the trait into a Node. This is then cached for subsequent retrievals.
      Specified by:
      createNode in class AbstractTrait
      Returns:
      Returns the trait as a node.
    • builder

      public static TaggableTrait.Builder builder()
    • toBuilder

      public TaggableTrait.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<TaggableTrait>
      Returns:
      a builder for type T