final EvalCondition invoker = new EvalCondition(null); pcData.putInvoker(className, invoker); final InputStream is = getClass().getClassLoader().getResourceAsStream(className.replace('.', '/') + ".class"); final CodeSource codeSource = invoker.getEvalExpression().getClass().getProtectionDomain().getCodeSource(); assertNotNull(codeSource.getLocation());
@Test public void testEvalMethodCompare() { final KnowledgeBuilderImpl builder1 = new KnowledgeBuilderImpl(); final PackageDescr packageDescr1 = new PackageDescr( "package1" ); createEvalRule( packageDescr1, "1==1" ); builder1.addPackage( packageDescr1 ); final EvalCondition eval1 = (EvalCondition) ((RuleImpl)builder1.getPackage("package1").getRules().iterator().next()).getLhs().getChildren().get( 0 ); final KnowledgeBuilderImpl builder2 = new KnowledgeBuilderImpl(); final PackageDescr packageDescr2 = new PackageDescr( "package2" ); createEvalRule( packageDescr2, "1==1" ); builder2.addPackage( packageDescr2 ); final EvalCondition eval2 = (EvalCondition) ((RuleImpl)builder2.getPackage("package2").getRules().iterator().next()).getLhs().getChildren().get( 0 ); final KnowledgeBuilderImpl builder3 = new KnowledgeBuilderImpl(); final PackageDescr packageDescr3 = new PackageDescr( "package3" ); createEvalRule( packageDescr3, "1==3" ); builder3.addPackage( packageDescr3 ); final EvalCondition eval3 = (EvalCondition) ((RuleImpl)builder3.getPackage("package3").getRules().iterator().next()).getLhs().getChildren().get( 0 ); assertEquals( eval1, eval2 ); assertFalse( eval1.equals( eval3 ) ); assertFalse( eval2.equals( eval3 ) ); }
final EvalCondition eval = (EvalCondition) builder.build( context, evalDescr ); ((MVELEvalExpression) eval.getEvalExpression()).compile( (MVELDialectRuntimeData) pkgBuilder.getPackageRegistry( pkg.getName() ).getDialectRuntimeRegistry().getDialectData( "mvel" ) ); f0.removeLeftTuple(tuple); Object evalContext = eval.createContext(); assertTrue( eval.isAllowed( tuple, ksession, evalContext ) ); ksession.update( f0, cheddar ); assertFalse( eval.isAllowed( tuple, ksession, evalContext ) );
EvalExpression ee1 =( EvalExpression) ec1.getEvalExpression(); EvalExpression ee2 =( EvalExpression) ec2.getEvalExpression(); assertNotSame( ee1, ee2 ); assertEquals(ee1, ee2 ); EvalExpression ee3 =( EvalExpression) ec3.getEvalExpression(); assertNotSame( ee1,ee3 ); assertThat(ee1, not( equalTo( ee3 ) ) );
final RuleImpl rule = pkg.getRule( "rule-1" ); final EvalCondition eval = (EvalCondition) rule.getLhs().getChildren().get( 1 ); final CompiledInvoker invoker = (CompiledInvoker) eval.getEvalExpression(); String s = invoker.getMethodBytecode();