amzn / smoke-framework-examples

Sample applications showing the usage of the SmokeFramework and related libraries.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build - main Branch Linux Swift 5.7 Compatible Join the Smoke Server Side community on gitter Apache 2

SmokeFrameworkExamples

Sample services showing the usage of the SmokeFramework and related libraries.

EmptyExampleService

An example of a service as it is generated using SmokeFrameworkApplicationGenerate with the command-

swift run -c release SmokeFrameworkApplicationGenerate \
  --base-file-path ${workspaceRoot}/smoke-framework-examples/EmptyExampleService

PersistenceExampleService

An example of a service using SmokeDynamoDb to store and retrieve data. Initially generated using SmokeFrameworkApplicationGenerate with the command-

swift run -c release SmokeFrameworkApplicationGenerate \
  --base-file-path ${workspaceRoot}/smoke-framework-examples/PersistenceExampleService \

NoExistentialTypesExampleService

A variant of PersistenceExampleService that uses a generic context. This will mean that at runtime calls from operation handlers to the DynamoDB table in the context will directly use the concrete AWSDynamoDBCompositePrimaryKeyTable type rather than first using an existential type of the DynamoDBCompositePrimaryKeyTable protocol (an additional layer of redirection).

OtherServiceModel

A Swift package wrapper around an Open API 3.0 model. Allows this model to be used by codegen SwiftPM plugins in conjunction with a consuming package.

OtherServiceSwiftClient

An example of a Swift Client created for an API Gateway-hosted API. Uses the Open API 3.0 model specified in OtherServiceModel.

ClientConsumingSmokeFrameworkService

An example of a smoke-framework-based service that uses the OtherServiceSwiftClient in one of its operations.

License

This library is licensed under the Apache 2.0 License.

About

Sample applications showing the usage of the SmokeFramework and related libraries.

License:Apache License 2.0


Languages

Language:Swift 99.4%Language:Dockerfile 0.6%