Class IamActionTrait

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

public final class IamActionTrait extends AbstractTrait implements ToSmithyBuilder<IamActionTrait>
Indicates properties of a Smithy operation as an IAM action.
  • Field Details

    • ID

      public static final ShapeId ID
  • Method Details

    • getName

      public Optional<String> getName()
      Get the AWS IAM resource name.
      Returns:
      Returns the name.
    • getDocumentation

      public Optional<String> getDocumentation()
      Gets the description of what granting the user permission to invoke an operation would entail.
      Returns:
      Returns the documentation.
    • getRelativeDocumentation

      public Optional<String> getRelativeDocumentation()
      Gets the relative URL path for the action within a set of IAM-related documentation.
      Returns:
      Returns the relative URL path to documentation.
    • getRequiredActions

      public List<String> getRequiredActions()
      Gets other actions that the invoker must be authorized to perform when executing the targeted operation.
      Returns:
      Returns the list of required actions.
    • getResources

      public Optional<ActionResources> getResources()
      Gets the resources an IAM action can be authorized against.
      Returns:
      Returns the action's resources.
    • getCreatesResources

      public List<String> getCreatesResources()
      Gets the resources that performing this IAM action will create.
      Returns:
      Returns the resources created by the action.
    • builder

      public static IamActionTrait.Builder builder()
    • 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 SmithyBuilder<IamActionTrait> 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<IamActionTrait>
      Returns:
      a builder for type T