Package org.drools.lang.descr

Examples of org.drools.lang.descr.ReturnValueRestrictionDescr


        parser.startElementBuilder( localName,
                                    attrs );
        final String evaluator = attrs.getValue( "evaluator" );
        emptyAttributeCheck( localName, "evaluator", evaluator, parser );

        final ReturnValueRestrictionDescr returnValueDescr = new ReturnValueRestrictionDescr( evaluator );

        return returnValueDescr;
    }
View Full Code Here


    public Object end(final String uri,
                      final String localName,
                      final ExtensibleXmlParser parser) throws SAXException {
        final Element element = parser.endElementBuilder();

        final ReturnValueRestrictionDescr returnValueDescr = (ReturnValueRestrictionDescr) parser.getCurrent();

        final String expression =((org.w3c.dom.Text)element.getChildNodes().item( 0 )).getWholeText();
        emptyContentCheck( localName, expression, parser );

        returnValueDescr.setContent( expression );

        final Object parent = parser.getParent();

        if ( parent instanceof FieldConstraintDescr ) {
            final FieldConstraintDescr fieldConstraintDescr = (FieldConstraintDescr) parent;
View Full Code Here

                // execute it as a return value
                restriction = buildRestriction( context,
                                                (Pattern) context.getBuildStack().peek(),
                                                extractor,
                                                new ReturnValueRestrictionDescr( operator,
                                                                                 relDescr.isNegated(),
                                                                                 relDescr.getParametersText(),
                                                                                 rightValue ),
                                                aliases );
                // fall back to original dialect
View Full Code Here

        return true;
    }

    private Declaration[] getDeclarationsForReturnValue(RuleBuildContext context, RelationalExprDescr relDescr, String operator, String value2) {
        Pattern pattern = (Pattern) context.getBuildStack().peek();
        ReturnValueRestrictionDescr returnValueRestrictionDescr = new ReturnValueRestrictionDescr( operator,
                                                                                                   relDescr.isNegated(),
                                                                                                   relDescr.getParametersText(),
                                                                                                   value2 );

        Map<String, Class< ? >> declarationsMap = getDeclarationsMap( returnValueRestrictionDescr,
                context,
                true );
        Class< ? > thisClass = null;
        if ( pattern.getObjectType() instanceof ClassObjectType ) {
            thisClass = ((ClassObjectType) pattern.getObjectType()).getClassType();
        }

        Map<String, Class< ? >> globals = context.getPackageBuilder().getGlobals();
        AnalysisResult analysis = context.getDialect().analyzeExpression( context,
                returnValueRestrictionDescr,
                returnValueRestrictionDescr.getContent(),
                new BoundIdentifiers( declarationsMap,
                        globals,
                        null,
                        thisClass ) );
        if ( analysis == null ) {
View Full Code Here

        packageDescr.addGlobal( new GlobalDescr( "map",
                                                 "java.util.Map" ) );

        final FieldConstraintDescr returnValue = new FieldConstraintDescr( "price" );
        returnValue.addRestriction( new ReturnValueRestrictionDescr( "==",
                                                                     "(( (Integer) map.get( new Integer( x )) ).intValue() * y)" ) );

        pattern.addConstraint( returnValue );

        ruleDescr.setConsequence( "update(stilton);" );
View Full Code Here

        packageDescr.addGlobal( new GlobalDescr( "map",
                                                 "java.util.Map" ) );

        final FieldConstraintDescr returnValue = new FieldConstraintDescr( "price" );
        returnValue.addRestriction( new ReturnValueRestrictionDescr( "==",
                                                                     expression ) );

        pattern.addConstraint( returnValue );

        ruleDescr.setConsequence( "update(stilton);" );
View Full Code Here

        assertEquals( "==",
                      literalDescr.getEvaluator() );
        assertEquals( "value1",
                      literalDescr.getText() );

        final ReturnValueRestrictionDescr returnValueDescr = (ReturnValueRestrictionDescr) fieldConstraintDescr.getRestrictions().get( 1 );
        assertEquals( "==",
                      returnValueDescr.getEvaluator() );
        assertEquals( "1==1",
                      returnValueDescr.getContent() );

        final VariableRestrictionDescr variableDescr = (VariableRestrictionDescr) fieldConstraintDescr.getRestrictions().get( 2 );
        assertEquals( "==",
                      variableDescr.getEvaluator() );
        assertEquals( "var1",
View Full Code Here

        packageDescr.addGlobal( new GlobalDescr( "map",
                                                 "java.util.Map" ) );

        final FieldConstraintDescr returnValue = new FieldConstraintDescr( "price" );
        returnValue.addRestriction( new ReturnValueRestrictionDescr( "==",
                                                                     "x" ) );

        pattern.addConstraint( returnValue );

        // There is no m this should produce errors.
View Full Code Here

                      fld.getFieldName() );
    }

    public void testChunkWithoutParens() throws Exception {
        String input = "( foo )";
        ReturnValueRestrictionDescr returnData = (ReturnValueRestrictionDescr) parse( "paren_chunk",
                                                                                      "fact_expression",
                                                                                      input );

        assertEquals( "( foo )",
                      input.substring( returnData.getStartCharacter(),
                                       returnData.getEndCharacter() ) );
    }
View Full Code Here

                                       returnData.getEndCharacter() ) );
    }

    public void testChunkWithParens() throws Exception {
        String input = "(fnord())";
        ReturnValueRestrictionDescr returnData = (ReturnValueRestrictionDescr) parse( "paren_chunk",
                                                                                      "fact_expression",
                                                                                      input );

        assertEquals( "(fnord())",
                      input.substring( returnData.getStartCharacter(),
                                       returnData.getEndCharacter() ) );
    }
View Full Code Here

TOP

Related Classes of org.drools.lang.descr.ReturnValueRestrictionDescr

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.