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.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
LengthTrait.Builder
Builder used to create a LongTrait.static class
LengthTrait.Provider
-
Method Summary
Modifier and Type Method Description static LengthTrait.Builder
builder()
protected Node
createNode()
The result of toNode is used for hashCodes and equality.java.util.Optional<java.lang.Long>
getMax()
Gets the max value.java.util.Optional<java.lang.Long>
getMin()
Gets the min value.LengthTrait.Builder
toBuilder()
Take this object and create a builder that contains all of the current property values of this object.-
Methods inherited from class software.amazon.smithy.model.traits.AbstractTrait
equals, getSourceLocation, hashCode, toNode, toShapeId, toString
-
-
-
-
Field Detail
-
ID
public static final ShapeId ID
-
-
Method Detail
-
getMin
public java.util.Optional<java.lang.Long> getMin()
Gets the min value.- Returns:
- returns the optional min value.
-
getMax
public java.util.Optional<java.lang.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 classAbstractTrait
- 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 interfaceToSmithyBuilder<LengthTrait>
- Returns:
- a builder for type T
-
builder
public static LengthTrait.Builder builder()
- Returns:
- Returns a builder used to create a length trait.
-
-