5
5
import com .amazonaws .services .lambda .runtime .RequestHandler ;
6
6
import com .amazonaws .services .lambda .runtime .events .KinesisEvent ;
7
7
8
- import java .nio .ByteBuffer ;
9
- import java .nio .CharBuffer ;
10
- import java .nio .charset .CharacterCodingException ;
11
- import java .nio .charset .CharsetDecoder ;
12
- import java .nio .charset .StandardCharsets ;
13
-
14
-
15
8
public class Handler implements RequestHandler <KinesisEvent , Void > {
16
9
@ Override
17
- public Void handleRequest (KinesisEvent event , Context context ) {
10
+ public Void handleRequest (final KinesisEvent event , final Context context ) {
18
11
LambdaLogger logger = context .getLogger ();
19
12
if (event .getRecords ().isEmpty ()) {
20
13
logger .log ("Empty Kinesis Event received" );
@@ -23,7 +16,7 @@ public Void handleRequest(KinesisEvent event, Context context) {
23
16
for (KinesisEvent .KinesisEventRecord record : event .getRecords ()) {
24
17
try {
25
18
logger .log ("Processed Event with EventId: " +record .getEventID ());
26
- String data = decodeRecordData (record .getKinesis ().getData (), context );
19
+ String data = new String (record .getKinesis ().getData (). array () );
27
20
logger .log ("Data:" + data );
28
21
// TODO: Do interesting work based on the new data
29
22
}
@@ -36,20 +29,4 @@ public Void handleRequest(KinesisEvent event, Context context) {
36
29
return null ;
37
30
}
38
31
39
- private String decodeRecordData (ByteBuffer encodedData ,Context context ) {
40
- // Create a CharsetDecoder object for the desired character set
41
- CharsetDecoder decoder = StandardCharsets .UTF_8 .newDecoder ();
42
- // Decode the ByteBuffer using the CharsetDecoder object
43
- String decodedData = null ;
44
- try {
45
- CharBuffer charBuffer = decoder .decode (encodedData );
46
- // Convert the decoded characters to a String
47
- decodedData = charBuffer .toString ();
48
- } catch (CharacterCodingException characterCodingException ) {
49
- context .getLogger ().log ("Error decoding data: " + characterCodingException .getMessage ());
50
- throw new RuntimeException (characterCodingException );
51
- }
52
-
53
- return decodedData ;
54
- }
55
32
}
0 commit comments