use of org.camunda.bpm.engine.variable.value.TypedValue in project camunda-bpm-platform by camunda.
the class CompositeQueryVariableValueCondition method initializeValue.
public void initializeValue(VariableSerializers serializers) {
TypedValue typedValue = wrappedQueryValue.getTypedValue();
ValueTypeResolver resolver = Context.getProcessEngineConfiguration().getValueTypeResolver();
Collection<ValueType> concreteTypes = resolver.getSubTypes(typedValue.getType());
for (ValueType type : concreteTypes) {
if (type.canConvertFromTypedValue(typedValue)) {
TypedValue convertedValue = type.convertFromTypedValue(typedValue);
SingleQueryVariableValueCondition aggregatedValue = new SingleQueryVariableValueCondition(wrappedQueryValue);
aggregatedValue.initializeValue(serializers, convertedValue);
aggregatedValues.add(aggregatedValue);
}
}
}
use of org.camunda.bpm.engine.variable.value.TypedValue in project camunda-bpm-platform by camunda.
the class DefaultFormHandler method fireFormPropertyHistoryEvents.
protected void fireFormPropertyHistoryEvents(VariableMap properties, VariableScope variableScope) {
final ProcessEngineConfigurationImpl processEngineConfiguration = Context.getProcessEngineConfiguration();
HistoryLevel historyLevel = processEngineConfiguration.getHistoryLevel();
if (historyLevel.isHistoryEventProduced(HistoryEventTypes.FORM_PROPERTY_UPDATE, variableScope)) {
// fire history events
final ExecutionEntity executionEntity;
final String taskId;
if (variableScope instanceof ExecutionEntity) {
executionEntity = (ExecutionEntity) variableScope;
taskId = null;
} else if (variableScope instanceof TaskEntity) {
TaskEntity task = (TaskEntity) variableScope;
executionEntity = task.getExecution();
taskId = task.getId();
} else {
executionEntity = null;
taskId = null;
}
if (executionEntity != null) {
for (final String variableName : properties.keySet()) {
final TypedValue value = properties.getValueTyped(variableName);
// NOTE: SerializableValues are never stored as form properties
if (!(value instanceof SerializableValue) && value.getValue() != null && value.getValue() instanceof String) {
final String stringValue = (String) value.getValue();
HistoryEventProcessor.processHistoryEvents(new HistoryEventProcessor.HistoryEventCreator() {
@Override
public HistoryEvent createHistoryEvent(HistoryEventProducer producer) {
return producer.createFormPropertyUpdateEvt(executionEntity, variableName, stringValue, taskId);
}
});
}
}
}
}
}
use of org.camunda.bpm.engine.variable.value.TypedValue in project camunda-bpm-platform by camunda.
the class TaskAuthorizationTest method testCaseTaskGetVariableTyped.
// TaskService#getVariableTyped() (case task) ////////////////////////////////////////////
public void testCaseTaskGetVariableTyped() {
// given
createCaseInstanceByKey(CASE_KEY, getVariables());
String taskId = selectSingleTask().getId();
// when
TypedValue typedValue = taskService.getVariableTyped(taskId, VARIABLE_NAME);
// then
assertNotNull(typedValue);
assertEquals(VARIABLE_VALUE, typedValue.getValue());
}
use of org.camunda.bpm.engine.variable.value.TypedValue in project camunda-bpm-platform by camunda.
the class TaskAuthorizationTest method testProcessTaskGetVariableLocalTypedWithReadInstancePermissionOnAnyProcessDefinition.
public void testProcessTaskGetVariableLocalTypedWithReadInstancePermissionOnAnyProcessDefinition() {
// given
startProcessInstanceByKey(PROCESS_KEY);
String taskId = selectSingleTask().getId();
createGrantAuthorization(PROCESS_DEFINITION, ANY, userId, READ_TASK);
disableAuthorization();
taskService.setVariablesLocal(taskId, getVariables());
enableAuthorization();
// when
TypedValue typedValue = taskService.getVariableLocalTyped(taskId, VARIABLE_NAME);
// then
assertNotNull(typedValue);
assertEquals(VARIABLE_VALUE, typedValue.getValue());
}
use of org.camunda.bpm.engine.variable.value.TypedValue in project camunda-bpm-platform by camunda.
the class TaskAuthorizationTest method testProcessTaskGetVariableTypedWithReadTaskPermissionOnProcessDefinition.
public void testProcessTaskGetVariableTypedWithReadTaskPermissionOnProcessDefinition() {
// given
startProcessInstanceByKey(PROCESS_KEY, getVariables());
String taskId = selectSingleTask().getId();
createGrantAuthorization(PROCESS_DEFINITION, PROCESS_KEY, userId, READ_TASK);
// when
TypedValue typedValue = taskService.getVariableTyped(taskId, VARIABLE_NAME);
// then
assertNotNull(typedValue);
assertEquals(VARIABLE_VALUE, typedValue.getValue());
}
Aggregations