How awslabs/aws-sdk-swift works
AWS SDK for Swift lets application code configure a service client, invoke a typed AWS operation, and receive a typed response or service error. Generated service clients construct operation orchestrators; the runtime supplies configuration, endpoint resolution, authentication, request middleware, retries, and AWS-specific error handling. Identity resolution and signing support the request path, while checksums and event-stream signing cover specialized protocols. The README documents these runtime modules and the tree shows many generated service clients. Excerpts are partial, so links among unsampled subsystems are not expanded.
Main entry points: AWSClientRuntime AWS client runtime · CodePipelineClient.swift CodePipeline client · Services Generated service clients · Models.swift Service models
Components 17
Service APIs
- Generated service clients
Sources/Services - CodePipeline client
Sources/Services/AWSCodePipeline/Sources/AWSCodePipeline/CodePipelineClient.swift - Service models
Sources/Services/AWSCodePipeline/Sources/AWSCodePipeline/Models.swift
Client Runtime
- AWS client runtime
Sources/Core/AWSClientRuntime/Sources/AWSClientRuntime - Endpoint resolution
Sources/Core/AWSClientRuntime/Sources/AWSClientRuntime/Endpoints/EndpointResolverMiddleware.swift - Region resolution
Sources/Core/AWSClientRuntime/Sources/AWSClientRuntime/Regions/RegionResolver.swift - Retry strategy
Sources/Core/AWSClientRuntime/Sources/AWSClientRuntime/Retry/AWSRetryConfig.swift - Service errors
Sources/Core/AWSClientRuntime/Sources/AWSClientRuntime/Errors/AWSServiceError.swift
Identity And Auth
- Identity resolvers
Sources/Core/AWSSDKIdentity/Sources/AWSSDKIdentity - HTTP request signing
Sources/Core/AWSSDKHTTPAuth/Sources/AWSSDKHTTPAuth/AWSSigV4Signer.swift - Event stream signing
Sources/Core/AWSSDKEventStreamsAuth/Sources/AWSSDKEventStreamsAuth/AWSMessageSigner.swift
Protocol Support
- Request checksums
Sources/Core/AWSSDKChecksums/Sources/AWSSDKChecksums - Shared runtime types
Sources/Core/AWSSDKCommon/Sources/AWSSDKCommon - Partitions and version
Sources/Core/AWSSDKDynamic/Sources/AWSSDKDynamic
Other components
- SDK application
- HTTP transport
- AWS service
Connections 17
- SDK application → Generated service clients: calls operation
- Generated service clients → CodePipeline client: selects client
- CodePipeline client → Service models: uses types
- CodePipeline client → AWS client runtime: builds request pipeline
- AWS client runtime → Endpoint resolution: resolves endpoint
- AWS client runtime → Region resolution: resolves region
- AWS client runtime → Retry strategy: configures retries
- AWS client runtime → Service errors: handles errors
- AWS client runtime → Identity resolvers: resolves identity
- AWS client runtime → HTTP request signing: selects auth scheme
- AWS client runtime → HTTP transport: executes request
- HTTP transport → AWS service: sends HTTP
- AWS service → HTTP transport: returns response
- AWS client runtime → Request checksums: applies checksum middleware
- AWS client runtime → Event stream signing: uses stream signing
- AWS client runtime → Shared runtime types: uses shared types
- AWS client runtime → Partitions and version: reads partition data