Class LengthTrait

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

public final class LengthTrait extends AbstractTrait implements ToSmithyBuilder<LengthTrait>
Constrains a shape to minimum and maximum number of elements or size.
  • Field Details

    • ID

      public static final ShapeId ID
  • Method Details

    • getMin

      public Optional<Long> getMin()
      Gets the min value.
      Returns:
      returns the optional min value.
    • getMax

      public Optional<Long> getMax()
      Gets the max value.
      Returns:
      returns the optional max value.
    • 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.
    • toBuilder

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

      public static LengthTrait.Builder builder()
      Returns:
      Returns a builder used to create a length trait.