Consider a simple Lambda written in Java:
import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;
public class Hello implements RequestHandler<Integer, String>{
public String handleRequest(int myCount, Context context) {
return String.valueOf(myCount);
}
}
The handler interface is defined as RequestHandler<InputType, OutputType>
, but when my Lambda reacts to events and just does some side effects, is the output type unnecessary and I have to write something like this:
public class Hello implements RequestHandler<SNSEvent, Void>{
public Void handleRequest(SNSEvent snsEvent, Context context) {
...
return null;
}
}
Which is annoying.
Is there an alternative to RequestHandler
for a void
handler?:
public class Hello implements EventHandler<SNSEvent>{
public void handleEvent(SNSEvent snsEvent, Context context) {
...
}
}