mirror of
https://github.com/swift-server/swift-aws-lambda-runtime.git
synced 2026-05-03 07:22:27 +00:00
c22f5271a0
* add HelloJSON example + README * multiple corrections of typos and grammatical errors Co-authored-by: Tim Condon <0xTim@users.noreply.github.com>
41 lines
1.1 KiB
Swift
41 lines
1.1 KiB
Swift
//===----------------------------------------------------------------------===//
|
|
//
|
|
// This source file is part of the SwiftAWSLambdaRuntime open source project
|
|
//
|
|
// Copyright (c) 2024 Apple Inc. and the SwiftAWSLambdaRuntime project authors
|
|
// Licensed under Apache License v2.0
|
|
//
|
|
// See LICENSE.txt for license information
|
|
// See CONTRIBUTORS.txt for the list of SwiftAWSLambdaRuntime project authors
|
|
//
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
import AWSLambdaRuntime
|
|
|
|
// in this example we are receiving and responding with JSON structures
|
|
|
|
// the data structure to represent the input parameter
|
|
struct HelloRequest: Decodable {
|
|
let name: String
|
|
let age: Int
|
|
}
|
|
|
|
// the data structure to represent the output response
|
|
struct HelloResponse: Encodable {
|
|
let greetings: String
|
|
}
|
|
|
|
// the Lambda runtime
|
|
let runtime = LambdaRuntime {
|
|
(event: HelloRequest, context: LambdaContext) in
|
|
|
|
HelloResponse(
|
|
greetings: "Hello \(event.name). You look \(event.age > 30 ? "younger" : "older") than your age."
|
|
)
|
|
}
|
|
|
|
// start the loop
|
|
try await runtime.run()
|