Работа с цепочками#

Цепочки событий (chains) в SOWA предназначены для применения некоторой определенной последовательности действий к приходящим от клиента данным и возвращаемым клиентом данных.

Данный механизм предполагает монопольное право на работу с контекстом запроса или ответа. В связи с этим, одновременная работа валидаторов (validators) и цепочек (chains) запрещена на уровне конфигурации, хотя и технически возможна в случае имплементации на разных фазах.

Действия условно подразделяются на три категории:

  • Проверяющие действия (checkers) - действия, которые по набору входных параметров осуществляют проверку на соответствие некоторым условиям, и, если условия выполняются, то запрос/ответ пробрасывается дальше по цепочке обработки, а если нет - то запрос/ответ блокируются и клиенту возвращается ошибка. Подробное описание перечисленных ниже действий приведено в разделе "Проверяющие действия".

  • Преобразователи сообщений (transformers) - действия, которые принимают на вход некоторое сообщение (от клиента или бэка) и на выходе дают некоторое новое сообщение, которое далее передается по цепочке, для выполнения над ним других действий. Важно - исходные запросы/ответы при этом не модифицируются, все преобразования производятся для целей выполнения над этими данными каких-либо проверочных или иных действий. Подробное описание перечисленных ниже действий приведено в разделе "Преобразователи сообщений".

  • Манипуляторы с переменными - предназначены для извлечения или помещения значений в переменные. Подробное описание перечисленных ниже действий приведено в разделе "Манипуляторы с переменными".