class JsonPathUtil {

    public Optional<String> locateResult(String json, String jsonPath) {
        final ArrayNode result = JsonPath.using(conf).parse(json).read(jsonPath);
        if (result.size() == 0) {
            return Optional.empty();
        } else {
            if (result.get(0).isValueNode()) {
                return Optional.of(result.get(0).asText());
            } else {
                return Optional.of(result.get(0).toString());
            }

        }
    }

    private  JsonPathUtil();

}