Class ServiceTrait

  • All Implemented Interfaces:
    software.amazon.smithy.model.FromSourceLocation, software.amazon.smithy.model.node.ToNode, software.amazon.smithy.model.shapes.ToShapeId, software.amazon.smithy.model.traits.Trait, software.amazon.smithy.utils.ToSmithyBuilder<ServiceTrait>

    public final class ServiceTrait
    extends software.amazon.smithy.model.traits.AbstractTrait
    implements software.amazon.smithy.utils.ToSmithyBuilder<ServiceTrait>
    Registers a service as an AWS service. This trait is required for all AWS services modeled in Smithy.
    • Field Detail

      • ID

        public static final software.amazon.smithy.model.shapes.ShapeId ID
    • Method Detail

      • getArnNamespace

        public java.lang.String getArnNamespace()
        Get the AWS ARN service namespace of the service.

        If not set, this value defaults to the name of the service shape converted to lowercase. This value is combined with resources contained within the service to form ARNs for resources. Only resources that explicitly define the 'aws.api#arnTemplate' trait are assigned ARNs, and their relative ARNs are combined with the service's arnNamespace to form an ARN.

        Returns:
        Returns the ARN service name (e.g., "route53").
      • getCloudFormationName

        public java.lang.String getCloudFormationName()
        Get the AWS CloudFormation service name.

        When not set, this value defaults to the name of the service shape.

        Returns:
        Returns the optionally present AWS CloudFormation type prefix.
      • getSdkId

        public java.lang.String getSdkId()
        Get the SDK service ID.

        This value is used to generate SDK class names.

        Returns:
        Returns the AWS SDK service ID value.
      • getCloudTrailEventSource

        public java.lang.String getCloudTrailEventSource()
        Returns the CloudTrail event source name of the service.
        Returns:
        Returns the event source name.
      • getAbbreviation

        public java.util.Optional<java.lang.String> getAbbreviation()
        Gets the abbreviated name of the service (if available).
        Returns:
        Returns the service abbreviation.
      • createNode

        protected software.amazon.smithy.model.node.Node createNode()
        Specified by:
        createNode in class software.amazon.smithy.model.traits.AbstractTrait