В функции Java Lambda, как завершить обработку набора правил входящей почты AWS SES - PullRequest
0 голосов
/ 26 мая 2020

В моей функции Java Lambda моя цель - отбросить входящую электронную почту при соблюдении определенных условий. Если нет, электронное письмо продолжает обрабатываться и переходить к следующему действию правила.

У меня есть только 1 набор правил с двумя действиями: первое действие - это лямбда с типом вызова RequestResponse, следующее - WorkMail.

Это хорошо документированный для Node. Итак, очень кратко, моя цель - воспроизвести это в Java:

callback(null, {'disposition':'STOP_RULE_SET'});

Однако мой лямбда-код ниже этого не позволяет. Я не могу понять, какой тип обработчика использовать и как вернуть 'disposition' JSON

public class PLSesLambda implements RequestHandler<Object, String>
{
    static LambdaLogger logger;

    Gson gson = new GsonBuilder().setPrettyPrinting().create();

    @Override
    public String handleRequest(Object event, Context context)
    {
        logger = context.getLogger();

        LinkedHashMap<String, String> lhm = (LinkedHashMap<String, String>) event;
        logger.log("Incoming email: " + gson.toJson(lhm));

        JsonParser parser = new JsonParser();
        JsonObject jsonObj = (JsonObject) parser.parse("{'disposition':'STOP_RULE_SET'}");

        return jsonObj.toString(); // does not have effect of stopping rule set
    }   
}

Этот вопрос задавался один раз до здесь . Но мой тип возврата handleRequest () не совпадает с типом возврата Collections.singletonMap () (и простое его изменение нарушает другие вещи)

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...