Refine search
@Override public Object transform(Object expression, Map<String, Object> parameters) { logger.debug("About to execute mvel expression {} with parameters {}", expression, parameters); return MVELSafeHelper.getEvaluator().executeExpression(expression, parameters); }
protected Map<String, Object> resolveTaskDetails(Map<String, Object> parameters, Task task) { for (Map.Entry<String, Object> entry: parameters.entrySet()) { if (entry.getValue() != null && entry.getValue() instanceof String) { String s = (String) entry.getValue(); Map<String, String> replacements = new HashMap<String, String>(); Matcher matcher = PARAMETER_MATCHER.matcher(s); while (matcher.find()) { String paramName = matcher.group(1); if (replacements.get(paramName) == null) { try { Object variableValue = MVELSafeHelper.getEvaluator().eval(paramName, new TaskResolverFactory(task)); String variableValueString = variableValue == null ? "" : variableValue.toString(); replacements.put(paramName, variableValueString); } catch (Throwable t) { logger.error("Continuing without setting parameter."); } } } for (Map.Entry<String, String> replacement: replacements.entrySet()) { s = s.replace("${" + replacement.getKey() + "}", replacement.getValue()); } parameters.put(entry.getKey(), s); } } return parameters; }
private boolean evaluateCompletionCondition(String expression, Map<String, Object> tempVariables) { if (expression == null || expression.isEmpty()) { return false; } try { Object result = MVELSafeHelper.getEvaluator().eval(expression, new ForEachNodeInstanceResolverFactory(this, tempVariables)); if ( !(result instanceof Boolean) ) { throw new RuntimeException( "Completion condition expression must return boolean values: " + result + " for expression " + expression); } return ((Boolean) result).booleanValue(); } catch (Throwable t) { t.printStackTrace(); throw new IllegalArgumentException("Could not evaluate completion condition " + expression); } }
private Object getExpectedResult() throws InvocationTargetException, NoSuchMethodException, InstantiationException, IllegalAccessException { Object expectedResult = currentField.getExpected().trim(); if (currentField.getExpected().startsWith("=")) { expectedResult = MVELSafeHelper.getEvaluator().eval(currentField.getExpected().substring(1), this.populatedData); } else if (currentField.getNature() == VerifyField.TYPE_ENUM) { try { // The string representation of enum value is using a // format like CheeseType.CHEDDAR String classNameOfEnum = currentField.getExpected().substring(0, currentField.getExpected().indexOf(".")); String valueOfEnum = currentField.getExpected().substring(currentField.getExpected().indexOf(".") + 1); String fullName = resolver.getFullTypeName(classNameOfEnum); if (fullName != null && !"".equals(fullName)) { valueOfEnum = fullName + "." + valueOfEnum; } Serializable compiled = MVEL.compileExpression(valueOfEnum, pctx); expectedResult = MVELSafeHelper.getEvaluator().executeExpression(compiled); } catch (ClassNotFoundException e) { //Do nothing. } } else if (isFieldDate()) { return DateObjectFactory.createTimeObject(FieldTypeResolver.getFieldType(currentField.getFieldName(), factObject), currentField.getExpected()); } return expectedResult; }
Object result = mvelEvaluator.executeExpression(compiled, new HashMap<String, Object>());
} else { try { collection = MVELSafeHelper.getEvaluator().eval(collectionExpression, new NodeInstanceResolverFactory(this)); } catch (Throwable t) { throw new IllegalArgumentException(
pctx); mvelData = mvelEvaluator.executeExpression(compiled, new HashMap<String, Object>()); } catch (RuntimeException e) {
private String resolveVariable(String s, VariableResolverFactory factory) { Map<String, String> replacements = new HashMap<String, String>(); Matcher matcher = PatternConstants.PARAMETER_MATCHER.matcher(s); while (matcher.find()) { String paramName = matcher.group(1); if (replacements.get(paramName) == null) { Object variableValue = getVariable(paramName); if (variableValue != null) { String variableValueString = variableValue == null ? "" : variableValue.toString(); replacements.put(paramName, variableValueString); } else { try { variableValue = MVELSafeHelper.getEvaluator().eval(paramName, factory); String variableValueString = variableValue == null ? "" : variableValue.toString(); replacements.put(paramName, variableValueString); } catch (Throwable t) { logger.error("Could not find variable scope for variable {}", paramName); } } } } for (Map.Entry<String, String> replacement: replacements.entrySet()) { s = s.replace("#{" + replacement.getKey() + "}", replacement.getValue()); } return s; }
protected Map<String, Object> getSourceParameters(DataAssociation association) { Map<String, Object> parameters = new HashMap<String, Object>(); for (String sourceParam : association.getSources()) { Object parameterValue = null; VariableScopeInstance variableScopeInstance = (VariableScopeInstance) resolveContextInstance(VariableScope.VARIABLE_SCOPE, sourceParam); if (variableScopeInstance != null) { parameterValue = variableScopeInstance.getVariable(sourceParam); } else { try { parameterValue = MVELSafeHelper.getEvaluator().eval(sourceParam, new NodeInstanceResolverFactory(this)); } catch (Throwable t) { logger.warn("Could not find variable scope for variable {}", sourceParam); } } if (parameterValue != null) { parameters.put(association.getTarget(), parameterValue); } } return parameters; }
public static Object eval(String str, Map<String, Object> vars) { ParserConfiguration pconf = new ParserConfiguration(); pconf.addPackageImport("org.jbpm.services.task"); // pconf.addPackageImport("org.jbpm.services.task.service"); pconf.addPackageImport("org.jbpm.services.task.query"); pconf.addPackageImport("java.util"); for(String entry : getInputs().keySet()){ pconf.addImport(entry, getInputs().get(entry)); } ParserContext context = new ParserContext(pconf); Serializable s = MVEL.compileExpression(str.trim(), context); if( vars != null ) { return MVELSafeHelper.getEvaluator().executeExpression(s, vars); } else { return MVELSafeHelper.getEvaluator().executeExpression(s); } } public static String toString(Reader reader) throws IOException {
String customDescription = (String) metaData; Map<String, String> replacements = new HashMap<String, String>(); Matcher matcher = PatternConstants.PARAMETER_MATCHER.matcher(customDescription); while (matcher.find()) { String paramName = matcher.group(1); if (replacements.get(paramName) == null) { try { String value = (String) MVELSafeHelper.getEvaluator() .eval(paramName,new ProcessInstanceResolverFactory(((WorkflowProcessInstance) this))); replacements.put(paramName, value); } catch (Throwable t) {
protected Map<String, Object> getSourceParameters(DataAssociation association) { Map<String, Object> parameters = new HashMap<String, Object>(); for (String sourceParam : association.getSources()) { Object parameterValue = null; VariableScopeInstance variableScopeInstance = (VariableScopeInstance) resolveContextInstance(VariableScope.VARIABLE_SCOPE, sourceParam); if (variableScopeInstance != null) { parameterValue = variableScopeInstance.getVariable(sourceParam); } else { try { parameterValue = MVELSafeHelper.getEvaluator().eval(sourceParam, new NodeInstanceResolverFactory(this)); } catch (Throwable t) { logger.warn("Could not find variable scope for variable {}", sourceParam); } } if (parameterValue != null) { parameters.put(association.getTarget(), parameterValue); } } return parameters; }
public static Object eval(String str, Map<String, Object> vars) { ParserConfiguration pconf = new ParserConfiguration(); pconf.addPackageImport("org.kie.internal.task.api.model"); pconf.addPackageImport("org.jbpm.services.task"); pconf.addPackageImport("org.jbpm.services.task.impl.model"); pconf.addPackageImport("org.jbpm.services.task.query"); pconf.addPackageImport("org.jbpm.services.task.internals.lifecycle"); pconf.addImport(Status.class); pconf.addImport(Allowed.class); pconf.addPackageImport("java.util"); ParserContext context = new ParserContext(pconf); Serializable s = MVEL.compileExpression(str.trim(), context); if (vars != null) { return MVELSafeHelper.getEvaluator().executeExpression(s, vars); } else { return MVELSafeHelper.getEvaluator().executeExpression(s); } }
Matcher matcher = PatternConstants.PARAMETER_MATCHER.matcher(s); while (matcher.find()) { String paramName = matcher.group(1); if (replacements.get(paramName) == null) { VariableScopeInstance variableScopeInstance = (VariableScopeInstance) } else { try { Object variableValue = MVELSafeHelper.getEvaluator().eval(paramName, new NodeInstanceResolverFactory((org.jbpm.workflow.instance.NodeInstance) nodeInstance)); String variableValueString = variableValue == null ? "" : variableValue.toString(); replacements.put(paramName, variableValueString);
protected Map<String, Object> getSourceParameters(DataAssociation association) { Map<String, Object> parameters = new HashMap<String, Object>(); for (String sourceParam : association.getSources()) { Object parameterValue = null; VariableScopeInstance variableScopeInstance = (VariableScopeInstance) resolveContextInstance(VariableScope.VARIABLE_SCOPE, sourceParam); if (variableScopeInstance != null) { parameterValue = variableScopeInstance.getVariable(sourceParam); } else { try { parameterValue = MVELSafeHelper.getEvaluator().eval(sourceParam, new NodeInstanceResolverFactory(this)); } catch (Throwable t) { logger.warn("Could not find variable scope for variable {}", sourceParam); } } if (parameterValue != null) { parameters.put(association.getTarget(), parameterValue); } } return parameters; }
@Override public Object getInstance(ObjectModel model, ClassLoader cl, Map<String, Object> contextParams) { Object instance = null; InternalRuntimeManager manager = null; if (contextParams.containsKey("runtimeManager")) { manager = (InternalRuntimeManager) contextParams.get("runtimeManager"); instance = manager.getCacheManager().get(model.getIdentifier()); if (instance != null) { return instance; } } ParserConfiguration config = new ParserConfiguration(); config.setClassLoader(cl); ParserContext ctx = new ParserContext(config); if (contextParams != null) { for (Map.Entry<String, Object> entry : contextParams.entrySet()) { ctx.addVariable(entry.getKey(), entry.getValue().getClass()); } } Object compiledExpression = MVEL.compileExpression(model.getIdentifier(), ctx); instance = MVELSafeHelper.getEvaluator().executeExpression( compiledExpression, contextParams ); if (manager != null && instance instanceof Cacheable) { manager.getCacheManager().add(model.getIdentifier(), instance); } return instance; }
Matcher matcher = PatternConstants.PARAMETER_MATCHER.matcher(s); while (matcher.find()) { String paramName = matcher.group(1); if (replacements.get(paramName) == null) { VariableScopeInstance variableScopeInstance = (VariableScopeInstance) } else { try { Object variableValue = MVELSafeHelper.getEvaluator().eval(paramName, new NodeInstanceResolverFactory(this)); String variableValueString = variableValue == null ? "" : variableValue.toString(); replacements.put(paramName, variableValueString);
} else { try { parameterValue = MVELSafeHelper.getEvaluator().eval(association.getSources().get(0), new NodeInstanceResolverFactory(this)); } catch (Throwable t) { logger.error("Could not find variable scope for variable {}", association.getSources().get(0));
public Object eval(String str, Map vars) { ParserContext context = new ParserContext(); context.addPackageImport("org.jbpm.task"); context.addPackageImport("org.jbpm.task.service"); context.addPackageImport("org.jbpm.task.query"); context.addPackageImport("java.util"); vars.put("now", new Date()); return MVELSafeHelper.getEvaluator().executeExpression(MVEL.compileExpression(str, context), vars); }
private Object resolveVariable(Object s) { Matcher matcher = PatternConstants.PARAMETER_MATCHER.matcher((String) s); while (matcher.find()) { String paramName = matcher.group(1); Object variableValue = MVELSafeHelper.getEvaluator().eval(paramName, new NodeInstanceResolverFactory(this)); if (variableValue != null) { return variableValue;