/** * This will add a top level constraint. */ public void addConstraint( final FieldConstraint constraint ) { if ( constraintList == null ) { constraintList = new CompositeFieldConstraint(); } this.constraintList.addConstraint( constraint ); }
public FieldConstraint asFieldConstraint( FactPattern factPattern ) { CompositeFieldConstraint comp = new CompositeFieldConstraint(); comp.setCompositeJunctionType( connector.equals( "&&" ) ? CompositeFieldConstraint.COMPOSITE_TYPE_AND : CompositeFieldConstraint.COMPOSITE_TYPE_OR ); for ( Expr expr : subExprs ) { comp.addConstraint( expr.asFieldConstraint( factPattern ) ); } return comp; } }
public void onChange( ChangeEvent event ) { CompositeFieldConstraint comp = new CompositeFieldConstraint(); comp.setCompositeJunctionType( composites.getValue( composites.getSelectedIndex() ) ); fp.addConstraint( comp ); modeller.refreshWidget(); popup.hide(); } } );
public void onChange( ChangeEvent event ) { CompositeFieldConstraint comp = new CompositeFieldConstraint(); comp.setCompositeJunctionType( composites.getValue( composites.getSelectedIndex() ) ); hasConstraints.addConstraint( comp ); modeller.refreshWidget(); popup.hide(); } } );
private CompositeFieldConstraint visitCompositeFieldConstraint( CompositeFieldConstraint cfc ) { CompositeFieldConstraint clone = new CompositeFieldConstraint(); clone.setCompositeJunctionType( cfc.getCompositeJunctionType() ); if ( cfc.getConstraints() != null ) { clone.setConstraints( new FieldConstraint[ cfc.getConstraints().length ] ); for ( int i = 0; i < cfc.getConstraints().length; i++ ) { FieldConstraint fc = cfc.getConstraints()[ i ]; clone.getConstraints()[ i ] = (FieldConstraint) visit( fc ); } } return clone; }
@Test public void testScopedVariablesWithCompositeFact() { RuleModel m = new RuleModel(); FactPattern p = new FactPattern(); CompositeFieldConstraint cf = new CompositeFieldConstraint(); cf.addConstraint( new SingleFieldConstraint( "x" ) ); p.addConstraint( cf ); SingleFieldConstraint sf = new SingleFieldConstraint( "q" ); sf.setFieldBinding( "abc" ); p.addConstraint( sf ); SingleFieldConstraint sf2 = new SingleFieldConstraint( "q" ); sf2.setFieldBinding( "qed" ); cf.addConstraint( sf2 ); m.addLhsItem( p ); List vars = m.getAllVariables(); assertEquals( 1, vars.size() ); assertEquals( "abc", vars.get( 0 ) ); } /*
CompositeFieldConstraint comp = new CompositeFieldConstraint(); comp.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR ); p.addConstraint( comp );
CompositeFieldConstraint comp = new CompositeFieldConstraint(); comp.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR ); p.addConstraint( comp ); comp.addConstraint( Y ); CompositeFieldConstraint comp2 = new CompositeFieldConstraint(); comp2.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_AND ); final SingleFieldConstraint Q1 = new SingleFieldConstraint();
CompositeFieldConstraint comp = new CompositeFieldConstraint(); comp.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_AND ); p.addConstraint( comp );
CompositeFieldConstraint comp = new CompositeFieldConstraint(); comp.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR ); p.addConstraint( comp );
CompositeFieldConstraint comp = new CompositeFieldConstraint(); comp.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_AND ); p.addConstraint( comp );