Skip to content

Commit d4bed89

Browse files
author
Jason Harris
committed
Refactoring stream function to process input logging example to return
1 parent ab31b09 commit d4bed89

File tree

1 file changed

+8
-16
lines changed
  • examples/powertools-examples-core/sam/src/main/java/helloworld

1 file changed

+8
-16
lines changed

examples/powertools-examples-core/sam/src/main/java/helloworld/AppStream.java

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import java.io.IOException;
2222
import java.io.InputStream;
2323
import java.io.OutputStream;
24-
import java.util.Map;
24+
import java.nio.charset.StandardCharsets;
2525

2626
import org.apache.logging.log4j.LogManager;
2727
import org.apache.logging.log4j.Logger;
@@ -33,10 +33,6 @@
3333
import java.io.BufferedWriter;
3434
import java.io.OutputStreamWriter;
3535
import java.io.PrintWriter;
36-
import java.nio.charset.Charset;
37-
38-
import com.amazonaws.services.lambda.runtime.events.APIGatewayProxyResponseEvent;
39-
import software.amazon.lambda.powertools.tracing.TracingUtils;
4036

4137
public class AppStream implements RequestStreamHandler {
4238
private static final ObjectMapper mapper = new ObjectMapper();
@@ -45,19 +41,15 @@ public class AppStream implements RequestStreamHandler {
4541
@Override
4642
@Logging(logEvent = true)
4743
@Metrics(namespace = "ServerlessAirline", service = "payment", captureColdStart = true)
48-
public void handleRequest(InputStream input, OutputStream output, Context context) throws IOException {
49-
BufferedReader reader = new BufferedReader(new InputStreamReader(input, Charset.forName("US-ASCII")));
50-
PrintWriter writer = new PrintWriter(new BufferedWriter(new OutputStreamWriter(output, Charset.forName("US-ASCII"))));
51-
try {
52-
APIGatewayProxyResponseEvent response = new APIGatewayProxyResponseEvent()
53-
.withStatusCode(200)
54-
.withBody("output_body");
55-
output.write(response.toString().getBytes());
44+
public void handleRequest(InputStream input, OutputStream output, Context context) {
45+
try (BufferedReader reader = new BufferedReader(new InputStreamReader(input, StandardCharsets.UTF_8));
46+
PrintWriter writer = new PrintWriter(new BufferedWriter(new OutputStreamWriter(output, StandardCharsets.UTF_8)))) {
47+
48+
log.info("Received: " + mapper.writerWithDefaultPrettyPrinter().writeValueAsString(mapper.readTree(reader)));
49+
50+
writer.write("{\"body\": \"" + System.currentTimeMillis() + "\"} ");
5651
} catch (IOException e) {
5752
log.error("Something has gone wrong: ", e);
58-
} finally {
59-
reader.close();
60-
writer.close();
6153
}
6254
}
6355
}

0 commit comments

Comments
 (0)