Preparing a WebHook in Fn
The Fn Project works best with functions written in Java. When calling a function, the framework would be able to automatically transform the body of the request as a parameter of the entrypoint method. In the following example, the JSON from the request will be converted into a string for the handleRequest
method, the entrypoint method of this Fn function:
public Object handleRequest(String body) { if (body == null || body.isEmpty()) { body = "{}"; } Input input; try { val mapper = new ObjectMapper(); input = mapper.readValue(body, Input.class); } catch (IOException e) { return new Error(e.getMessage()); } if (input == null) { return new Error(body); } /* process the rest of business logic */ }
Here's the list of data transfer object (DTO) classes to properly encode and decode Parse's WebHook messages inside an Fn function. With help from Project Lombok and Jackson, we can dramatically...