Контекстные переменные
Описание
Механизм контекстных переменных позволяет получить контекст данных по определенному объекту, используя id объекта и его тип. Контекст представляет из себя словарь с заранее определенными строковыми ключами, в качестве значения выступает строка.
Типы объектов:
Процессы:
process:id process:title process:type process:status (название статуса) process:description process:priority process:createTime (дата в формате dd.MM.yyyy HH:mm:ss) process:createUserId process:createUserTitle process:closeTime (дата в формате dd.MM.yyyy HH:mm:ss) process:closeUser process:initiateGroups (группы исполнения с ролью инициация через запятую) process:executeGroups (группы исполнения с ролью выполнение через запятую) process:executors (исполнители с ролью выполнение через запятую) process:param (параметры, имеющиеся по типу процесса; пример переменной: param1212)
Пользователи:
user:id user:title user:login user:description user:roles user:email user:queueIds user:groupIds user:param (все параметры, имеющиеся у пользователей)
Единые договора:
bgbilling-commonContract:id bgbilling-commonContract:title (formatted number) bgbilling-commonContract:password bgbilling-commonContract:param (все параметры, имеющиеся у единых договоров)
Дома:
house:id house:houseAndFrac house:street house:area house:quarter house:city house:country house:postIndex house:comment house:param (все параметры, имеющиеся у домов)
Города:
city:id city:title city:param (все параметры, имеющиеся у городов)
Возможно использование комбинированного поиска контекстных переменных (См. пример 2). |
Пример 1: использование контекстных переменных
ContextVariableBuilderFactory variables = ServerContext.lookup(ContextVariableBuilderFactory.class);
Map<String, String> process = variables.buildContext(1000, "process");
String processTitle = process.get("process:title");
String processParam1212 = process.get("process:param1212");
Map<String, String> user = variables.buildContext(100, "user");
String userTitle = user.get("user:title");
String userParam1799 = user.get("user:param1799");
Пример 2: использование комбинированных контекстных переменных
CombinedContextVariableBuilderFactory combinedVariablesFactory = CombinedContextVariableBuilderFactory();
Map<String, String> combinedProcessVariables = combinedVariablesFactory.buildContext(1000, "process");
String processTitle = combinedProcessVariables.get("process:title");
String customerTitle = combinedProcessVariables.get("customer:title");