diff --git a/aws-lambda-java-events/src/main/java/com/amazonaws/services/lambda/runtime/events/KafkaEvent.java b/aws-lambda-java-events/src/main/java/com/amazonaws/services/lambda/runtime/events/KafkaEvent.java index dfd97056..dd051d48 100644 --- a/aws-lambda-java-events/src/main/java/com/amazonaws/services/lambda/runtime/events/KafkaEvent.java +++ b/aws-lambda-java-events/src/main/java/com/amazonaws/services/lambda/runtime/events/KafkaEvent.java @@ -42,6 +42,7 @@ public static class KafkaEventRecord { private String timestampType; private String key; private String value; + private List> headers; } @Data diff --git a/aws-lambda-java-tests/src/test/java/com/amazonaws/services/lambda/runtime/tests/EventLoaderTest.java b/aws-lambda-java-tests/src/test/java/com/amazonaws/services/lambda/runtime/tests/EventLoaderTest.java index aecd0c6a..3bdd8eae 100644 --- a/aws-lambda-java-tests/src/test/java/com/amazonaws/services/lambda/runtime/tests/EventLoaderTest.java +++ b/aws-lambda-java-tests/src/test/java/com/amazonaws/services/lambda/runtime/tests/EventLoaderTest.java @@ -82,6 +82,9 @@ public void testLoadKafkaEvent() { KafkaEvent.KafkaEventRecord record = event.getRecords().get("mytopic-01").get(0); assertThat(record.getValue()).decodedAsBase64().asString().isEqualTo("Hello from Kafka !!"); + + String headerValue = new String(record.getHeaders().get(0).get("headerKey")); + assertThat(headerValue).isEqualTo("headerValue"); } @Test diff --git a/aws-lambda-java-tests/src/test/resources/kafka_event.json b/aws-lambda-java-tests/src/test/resources/kafka_event.json index 8a553e26..a7be5e8f 100644 --- a/aws-lambda-java-tests/src/test/resources/kafka_event.json +++ b/aws-lambda-java-tests/src/test/resources/kafka_event.json @@ -10,7 +10,24 @@ "offset": 15, "timestamp": 1596480920837, "timestampType": "CREATE_TIME", - "value": "SGVsbG8gZnJvbSBLYWZrYSAhIQ==" + "value": "SGVsbG8gZnJvbSBLYWZrYSAhIQ==", + "headers": [ + { + "headerKey": [ + 104, + 101, + 97, + 100, + 101, + 114, + 86, + 97, + 108, + 117, + 101 + ] + } + ] } ] }