/* * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * Copyright (c) 2013, MPL CodeInside http://codeinside.ru */ package ru.codeinside.gws.api; import java.util.Set; /** * Контекст потребителя для обработки внутри процесса исполнения. */ public interface ExchangeContext { /** * Получить локальный объект. */ Object getLocal(); /** * Установить локальный объект. Существует лишь между запросом и отвветом. */ void setLocal(Object value); /** * Получить имена переменных из процесса исполнения. */ Set<String> getVariableNames(); /** * Получить значение переменной. */ Object getVariable(String name); /** * Ассоциирована ли переменная с вложением. */ boolean isEnclosure(String name); /** * Сохранить значение переменной в процесс исполнения. */ void setVariable(String name, Object value); /** * Получить вложение по имени ассоциированой переменной. */ Enclosure getEnclosure(String name); /** * Добавить вложение и содать ассоциацию с именем переменной. */ void addEnclosure(String name, Enclosure enclosure); }