Class MixinTrait
- java.lang.Object
-
- software.amazon.smithy.model.traits.AbstractTrait
-
- software.amazon.smithy.model.traits.MixinTrait
-
- All Implemented Interfaces:
FromSourceLocation
,ToNode
,ToShapeId
,Trait
,ToSmithyBuilder<MixinTrait>
public final class MixinTrait extends AbstractTrait implements ToSmithyBuilder<MixinTrait>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
MixinTrait.Builder
Builder used to create a MixinTrait.static class
MixinTrait.Provider
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static MixinTrait.Builder
builder()
protected Node
createNode()
The result of toNode is used for hashCodes and equality.java.util.Set<ShapeId>
getLocalTraits()
Gets the mixin local traits.static java.util.Map<ShapeId,Trait>
getNonLocalTraitsFromMap(java.util.Map<ShapeId,Trait> traits)
Helper method used to filter out non-local traits from a map of traits.MixinTrait.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, setNodeCache, toNode, toShapeId, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.smithy.model.traits.Trait
isSynthetic
-
-
-
-
Field Detail
-
ID
public static final ShapeId ID
-
-
Method Detail
-
getLocalTraits
public java.util.Set<ShapeId> getLocalTraits()
Gets the mixin local traits.- Returns:
- returns the mixin local traits.
-
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 MixinTrait.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<MixinTrait>
- Returns:
- a builder for type T
-
getNonLocalTraitsFromMap
public static java.util.Map<ShapeId,Trait> getNonLocalTraitsFromMap(java.util.Map<ShapeId,Trait> traits)
Helper method used to filter out non-local traits from a map of traits.If the map is empty or does not contain a mixin trait, then it is returned as-is. If the map does contain the mixin trait, then a new map is created that does not contain any of the localTraits specified on the trait.
- Parameters:
traits
- Traits to filter based on the localTraits property of the mixin.- Returns:
- Returns the filtered traits.
-
builder
public static MixinTrait.Builder builder()
- Returns:
- Returns a new MixinTrait builder.
-
-