Class IamResourceTrait
- java.lang.Object
-
- software.amazon.smithy.model.traits.AbstractTrait
-
- software.amazon.smithy.aws.iam.traits.IamResourceTrait
-
- All Implemented Interfaces:
FromSourceLocation,ToNode,ToShapeId,Trait,ToSmithyBuilder<IamResourceTrait>
public final class IamResourceTrait extends AbstractTrait implements ToSmithyBuilder<IamResourceTrait>
Indicates properties of a Smithy resource in AWS IAM.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classIamResourceTrait.Builderstatic classIamResourceTrait.Provider
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static IamResourceTrait.Builderbuilder()protected NodecreateNode()The result of toNode is used for hashCodes and equality.java.util.Optional<java.lang.String>getName()Get the AWS IAM resource name.java.util.Optional<java.lang.String>getRelativeDocumentation()Get the relative URL path that defines more information about the resource within a set of IAM-related documentation.booleanisDisableConditionKeyInheritance()Gets if this IAM resource's condition keys are decoupled from those of its parent resource(s).static java.lang.StringresolveResourceName(ResourceShape resource)Resolves the IAM resource name for the given resource.SmithyBuilder<IamResourceTrait>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
-
getName
public java.util.Optional<java.lang.String> getName()
Get the AWS IAM resource name.- Returns:
- Returns the name.
-
resolveResourceName
public static java.lang.String resolveResourceName(ResourceShape resource)
Resolves the IAM resource name for the given resource. Uses the following resolution order:- Value of the
@iamResourcetrait'snameproperty - The resource's name
- Parameters:
resource- the resource to resolve a name for.- Returns:
- The resolved resource name.
- Value of the
-
getRelativeDocumentation
public java.util.Optional<java.lang.String> getRelativeDocumentation()
Get the relative URL path that defines more information about the resource within a set of IAM-related documentation.- Returns:
- A relative URL to the documentation page.
-
isDisableConditionKeyInheritance
public boolean isDisableConditionKeyInheritance()
Gets if this IAM resource's condition keys are decoupled from those of its parent resource(s).- Returns:
- Returns true if condition key inheritance is disabled.
-
builder
public static IamResourceTrait.Builder builder()
-
createNode
protected Node createNode()
Description copied from class:AbstractTraitThe 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:
createNodein classAbstractTrait- Returns:
- Returns the trait as a node.
-
toBuilder
public SmithyBuilder<IamResourceTrait> toBuilder()
Description copied from interface:ToSmithyBuilderTake this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilderin interfaceToSmithyBuilder<IamResourceTrait>- Returns:
- a builder for type T
-
-