Enum Class SmithyIdlComponentOrder
- All Implemented Interfaces:
Serializable,Comparable<SmithyIdlComponentOrder>,Constable,SmithyIdlSerializationOrder
public enum SmithyIdlComponentOrder
extends Enum<SmithyIdlComponentOrder>
implements SmithyIdlSerializationOrder
Defines how shapes, traits, and metadata are sorted when serializing a model with
SmithyIdlModelSerializer.
This enum provides the built-in orderings. For custom ordering logic, implement
SmithyIdlSerializationOrder directly and pass it to
SmithyIdlModelSerializer.Builder.componentOrder(SmithyIdlSerializationOrder).
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>> -
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionSort shapes, traits, and metadata alphabetically.Reorganizes shapes based on a preferred ordering of shapes, and alphanumeric traits and metadata.Sort shapes, traits, and metadata by source location, persisting their original placement when parsed. -
Field Summary
Fields inherited from interface software.amazon.smithy.model.shapes.SmithyIdlSerializationOrder
ALPHABETICAL -
Method Summary
Modifier and TypeMethodDescriptionReturns a comparator used to sort metadata entries.Returns a comparator used to sort shapes within a namespace file.Returns a comparator used to sort traits applied to a shape.static SmithyIdlComponentOrderReturns the enum constant of this class with the specified name.static SmithyIdlComponentOrder[]values()Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
ALPHA_NUMERIC
Sort shapes, traits, and metadata alphabetically. Member order, however, is not sorted. -
SOURCE_LOCATION
Sort shapes, traits, and metadata by source location, persisting their original placement when parsed. -
PREFERRED
Reorganizes shapes based on a preferred ordering of shapes, and alphanumeric traits and metadata.Shapes are ordered as follows:
- Trait definitions
- Services
- Resources
- Operations
- Structures
- Unions
- Lists
- Maps
- Finally, alphabetically by shape type.
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum class has no constant with the specified nameNullPointerException- if the argument is null
-
shapeComparator
Description copied from interface:SmithyIdlSerializationOrderReturns a comparator used to sort shapes within a namespace file.- Specified by:
shapeComparatorin interfaceSmithyIdlSerializationOrder- Returns:
- Comparator for ordering shapes.
-
traitComparator
Description copied from interface:SmithyIdlSerializationOrderReturns a comparator used to sort traits applied to a shape.The default implementation sorts traits alphabetically by their shape ID. Custom implementations that use source-location-based ordering should consider overriding this method to also sort traits by source location for consistency.
- Specified by:
traitComparatorin interfaceSmithyIdlSerializationOrder- Returns:
- Comparator for ordering traits.
-
metadataComparator
Description copied from interface:SmithyIdlSerializationOrderReturns a comparator used to sort metadata entries.The default implementation sorts metadata alphabetically by key.
- Specified by:
metadataComparatorin interfaceSmithyIdlSerializationOrder- Returns:
- Comparator for ordering metadata entries.
-