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); } }
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 {
/** * Adds a package import to a parse session. * * @param packageName A fully qualified package (eg. <tt>java.util.concurrent</tt>). */ public void addPackageImport(String packageName) { parserConfiguration.addPackageImport(packageName); }
/** * Adds a package import to a parse session. * * @param packageName A fully qualified package (eg. <tt>java.util.concurrent</tt>). */ public void addPackageImport(String packageName) { parserConfiguration.addPackageImport(packageName); }
/** * Adds a package import to a parse session. * * @param packageName A fully qualified package (eg. <tt>java.util.concurrent</tt>). */ public void addPackageImport(String packageName) { parserConfiguration.addPackageImport(packageName); }
public void addPackageImport(String str) { this.packageImports.add( str ); if ( this.parserConfiguration != null ) { this.parserConfiguration.addPackageImport( str ); } }
private ParserConfiguration getParserConfiguration() { ParserConfiguration parserConfig = new ParserConfiguration(); parserConfig.addPackageImport("java.util"); parserConfig.addPackageImport("org.apache.commons.lang3"); parserConfig.addPackageImport("org.joda.time"); parserConfig.addImport(Math.class); if (imports != null) { for (String imported : imports) parserConfig.addPackageImport(imported); } return parserConfig; }
public static Object eval(String str, Map<String, Object> vars) { ParserConfiguration pconf = new ParserConfiguration(); pconf.addPackageImport("org.jbpm.task"); pconf.addPackageImport("org.jbpm.task.query"); pconf.addPackageImport("org.jbpm.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 MVEL.executeExpression(s, vars); } else { return MVEL.executeExpression(s); } }
protected Object eval(String str, Map<String, Object> vars) { ParserConfiguration pconf = new ParserConfiguration(); pconf.addPackageImport("org.jbpm.integration.console.session"); pconf.addPackageImport("java.util"); pconf.addImport("SessionTemplate", SessionTemplate.class); ParserContext context = new ParserContext(pconf); Serializable s = MVEL.compileExpression(str.trim(), context); if (vars != null) { return MVEL.executeExpression(s, vars); } else { return MVEL.executeExpression(s); } }
public static Object eval(String str, Map<String, Object> vars) { ParserConfiguration pconf = new ParserConfiguration(); pconf.addPackageImport("org.jbpm.task"); // pconf.addPackageImport("org.jbpm.task.service"); pconf.addPackageImport("org.jbpm.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 MVEL.executeExpression(s, vars); } else { return MVEL.executeExpression(s); } } public static String toString(Reader reader) throws IOException {
public void testUnwantedImport() { ParserConfiguration conf = new ParserConfiguration(); conf.addPackageImport("java.util"); conf.addPackageImport("org.mvel2.tests.core.res"); ParserContext pctx = new ParserContext( conf ); MVEL.analysisCompile( "ScenarioType.Set.ADD", pctx ); assertNull(conf.getImports().get("Set")); }
public void testWithAndEnumInPackageImport() { ParserConfiguration pconf = new ParserConfiguration(); pconf.addPackageImport(MyEnum.class.getPackage().getName()); ParserContext pCtx = new ParserContext(pconf); pCtx.setStrongTyping(true); pCtx.addInput("thing", Thing.class); Thing thing = new Thing("xxx"); Map<String, Object> vars = new HashMap<String, Object>(); vars.put("thing", thing); ExecutableStatement stmt = (ExecutableStatement) MVEL.compileExpression("with( thing ) { myEnum = MyEnum.FULL_DOCUMENTATION }", pCtx); MVEL.executeExpression(stmt, null, vars); assertEquals(MyEnum.FULL_DOCUMENTATION, thing.getMyEnum()); }
public void testPackageImportEnum() { String str = "new Status( START )"; ParserConfiguration pconf = new ParserConfiguration(); pconf.addPackageImport("org.mvel2.tests.core.res"); pconf.addPackageImport("org.mvel2.tests.core.res.Status"); ParserContext context = new ParserContext(pconf); context.setStrongTyping(true); Serializable s = MVEL.compileExpression(str.trim(), context); assertEquals(new Status(Status.START), MVEL.executeExpression(s)); assertFalse(new Status(Status.STOP).equals(MVEL.executeExpression(s))); }
public void testInstanceofWithPackageImport() { ParserConfiguration conf = new ParserConfiguration(); conf.addPackageImport( "org.mvel2.tests.core" ); ParserContext pctx = new ParserContext( conf ); pctx.setStrictTypeEnforcement(true); pctx.setStrongTyping(true); pctx.addInput("value", Object.class); Map vars = new HashMap() {{ put("value", new CoreConfidenceTests()); }}; assertEquals(true, MVEL.executeExpression(MVEL.compileExpression("value instanceof CoreConfidenceTests", pctx), vars)); assertEquals(true, MVEL.executeExpression(MVEL.compileExpression("value instanceof " + CoreConfidenceTests.class.getCanonicalName(), pctx), vars)); }
public void testInstanceofWithPackageImportAndInnerClass() { ParserConfiguration conf = new ParserConfiguration(); conf.addPackageImport( "org.mvel2.tests.core.CoreConfidenceTests" ); ParserContext pctx = new ParserContext( conf ); pctx.setStrictTypeEnforcement(true); pctx.setStrongTyping(true); pctx.addInput("value", Object.class); Map vars = new HashMap() {{ put("value", new ARef()); }}; assertEquals(true, MVEL.executeExpression(MVEL.compileExpression("value instanceof ARef", pctx), vars)); assertEquals(true, MVEL.executeExpression(MVEL.compileExpression("value instanceof " + ARef.class.getCanonicalName(), pctx), vars)); }