Skip to content

Commit 05190ef

Browse files
Luke Jonesdavidbarsky
authored andcommitted
README: Update example in readme to match basic.rs example (#80)
Also removes reference to `new_error()` in client.rs `event_error` doc comment as this function is removed from `Context`
1 parent 4f05f8c commit 05190ef

File tree

2 files changed

+20
-24
lines changed

2 files changed

+20
-24
lines changed

README.md

Lines changed: 19 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -13,42 +13,40 @@ This package makes it easy to run AWS Lambda Functions written in Rust. This wor
1313
The code below creates a simple function that receives an event with a `greeting` and `name` field and returns a `GreetingResponse` message for the given name and greeting. Notice: to run these examples, we require a minimum Rust version of 1.31.
1414

1515
```rust,no_run
16-
extern crate lambda_runtime as lambda;
17-
extern crate serde_derive;
18-
extern crate log;
19-
extern crate simple_logger;
20-
21-
use serde_derive::{Serialize, Deserialize};
22-
use lambda::{lambda, Context, error::HandlerError};
23-
use log::error;
2416
use std::error::Error;
2517
26-
#[derive(Serialize, Deserialize)]
27-
struct GreetingEvent {
28-
greeting: String,
29-
name: String,
18+
use lambda_runtime::{error::HandlerError, lambda, Context};
19+
use log::{self, error};
20+
use serde_derive::{Deserialize, Serialize};
21+
use simple_error::bail;
22+
use simple_logger;
23+
24+
#[derive(Deserialize)]
25+
struct CustomEvent {
26+
#[serde(rename = "firstName")]
27+
first_name: String,
3028
}
3129
32-
#[derive(Serialize, Deserialize)]
33-
struct GreetingResponse {
30+
#[derive(Serialize)]
31+
struct CustomOutput {
3432
message: String,
3533
}
3634
3735
fn main() -> Result<(), Box<dyn Error>> {
38-
simple_logger::init_with_level(log::Level::Debug).unwrap();
36+
simple_logger::init_with_level(log::Level::Debug)?;
3937
lambda!(my_handler);
4038
4139
Ok(())
4240
}
4341
44-
fn my_handler(event: GreetingEvent, ctx: Context) -> Result<GreetingResponse, HandlerError> {
45-
if event.name == "" {
46-
error!("Empty name in request {}", ctx.aws_request_id);
47-
return Err(ctx.new_error("Empty name"));
42+
fn my_handler(e: CustomEvent, c: Context) -> Result<CustomOutput, HandlerError> {
43+
if e.first_name == "" {
44+
error!("Empty first name in request {}", c.aws_request_id);
45+
bail!("Empty first name");
4846
}
4947
50-
Ok(GreetingResponse {
51-
message: format!("{}, {}!", event.greeting, event.name),
48+
Ok(CustomOutput {
49+
message: format!("Hello, {}!", e.first_name),
5250
})
5351
}
5452
```

lambda-runtime-client/src/client.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -269,9 +269,7 @@ impl<'ev> RuntimeClient {
269269
/// # Arguments
270270
///
271271
/// * `request_id` The request id associated with the event we are serving the error for.
272-
/// * `e` An instance of `errors::HandlerError` generated by the handler function. Handler
273-
/// functions can generate a new error using the `new_error(&str)` method of the `Context`
274-
/// object.
272+
/// * `e` An instance of `errors::HandlerError` generated by the handler function.
275273
///
276274
/// # Returns
277275
/// A `Result` object containing a bool return value for the call or an `error::ApiError` instance.

0 commit comments

Comments
 (0)