Package org.drools.compiler.compiler

Examples of org.drools.compiler.compiler.PackageBuilder$TypeDefinition


         jarInputStreams.add( jis );

         Properties properties = new Properties();
         properties.setProperty( DefaultPackageNameOption.PROPERTY_NAME,
                                 "foo.bar" );
         PackageBuilder builder = new PackageBuilder( new PackageBuilderConfiguration( properties,
                                                                                       loader ) );

         PackageDescr pc = new PackageDescr( "foo.bar" );
         builder.addPackage( pc );

         String header = "import fr.gouv.agriculture.dag.agorha.business.primes.SousPeriodePrimeAgent\n";

         builder.addPackageFromDrl( new StringReader( header ) );
         assertFalse( builder.hasErrors() );

         String passingRule = "rule \"rule1\"\n"
                              + "dialect \"mvel\"\n"
                              + "when\n"
                              + "SousPeriodePrimeAgent( echelle == \"abc\" )"
                              + "then\n"
                              + "end\n";

         String failingRule = "rule \"rule2\"\n"
                              + "dialect \"mvel\"\n"
                              + "when\n"
                              + "SousPeriodePrimeAgent( quotiteRemuneration == 123 , echelle == \"abc\" )"
                              + "then\n"
                              + "end\n";

         builder.addPackageFromDrl( new StringReader( passingRule ) );
         if ( builder.hasErrors() ) {
             logger.warn( builder.getErrors().getErrors()[0].getMessage() );
         }
         assertFalse( builder.hasErrors() );

         builder.addPackageFromDrl( new StringReader( failingRule ) );
         if ( builder.hasErrors() ) {
             logger.warn( builder.getErrors().getErrors()[0].getMessage() );
         }
         assertFalse( builder.hasErrors() );

     }
View Full Code Here


                       " $bean : Bean( ) \n" +
                       "then \n" +
                       " System.out.println( getFieldValue($bean) ); \n" +
                       "end\n";

         PackageBuilder packageBuilder = new PackageBuilder();
         packageBuilder.addPackageFromDrl( new StringReader( declaredFactType ) );
         packageBuilder.addPackageFromDrl( new StringReader( function ) );
         packageBuilder.addPackageFromDrl( new StringReader( rule ) );

         for ( KnowledgeBuilderError error : packageBuilder.getErrors() ) {
             System.out.println( "ERROR:" );
             System.out.println( error.getMessage() );
         }
         assertFalse( packageBuilder.hasErrors() );
     }
View Full Code Here

        for ( int i = 0; i < NUM_FACTS; i++ ) {
            wm.insert( new Foo( i ) );
            wm.insert( new Bar( i ) );
        }
        PackageBuilder bld = new PackageBuilder();
        bld.addPackageFromDrl( new StringReader( str ) );
        if ( bld.hasErrors() ) {
            fail( bld.getErrors().toString() );
        }

        kbase.addKnowledgePackages(Arrays.asList(new KnowledgePackage[]{new KnowledgePackageImp(bld.getPackage())}) );

        wm.fireAllRules();
        System.out.println( counter + ":" + (counter == NUM_FACTS ? "passed" : "failed" ));
    }
View Full Code Here

    private void readDRL(String fn) {
        try {
            Reader source = new InputStreamReader( JavaAndMVELCombinedTest.class.getResourceAsStream( fn ) );

            PackageBuilder builder = new PackageBuilder();
            builder.addPackageFromDrl( source );
            assertEquals( 0,
                                 builder.getErrors().getErrors().length );

            Package pkg = builder.getPackage();
            RuleBase ruleBase = RuleBaseFactory.newRuleBase();
            ruleBase.addPackage( pkg );

            assertEquals( 2,
                                 pkg.getRules().length );
View Full Code Here

        xstream.toXML( ruleBase,
                       out );
    }

    private void checkRuleBase(final String name) throws Exception {
        final PackageBuilder builder = new PackageBuilder();
        builder.addPackageFromDrl( new InputStreamReader( getClass().getResourceAsStream( "test_" + name + ".drl" ) ) );
        final Package pkg = builder.getPackage();

        final ReteooRuleBase ruleBase = (ReteooRuleBase) getRuleBase();
        ruleBase.addPackage( pkg );

        if ( this.writeTree ) {
View Full Code Here

    private static Package generatePackage(int ruleCount) throws DroolsParserException {
        StringReader    reader  = new StringReader(generateRules(ruleCount));
       
        System.out.println("Generating packages");
        PackageBuilder pkgBuilder = new PackageBuilder();
        try {
            pkgBuilder.addPackageFromDrl( reader );
        } catch ( IOException e ) {
            fail( "Unable to parse rules\n" + e.getMessage());
        }

        if ( pkgBuilder.hasErrors() ) {
            fail( pkgBuilder.getErrors().toString() );
        }

        return pkgBuilder.getPackage();
    }
View Full Code Here

  }

  protected org.drools.core.rule.Package loadPackage(
      final String classPathResource) throws DroolsParserException,
      IOException {
    final PackageBuilder builder = new PackageBuilder();
    builder.addPackageFromDrl(new InputStreamReader(getClass()
        .getResourceAsStream(classPathResource)));

    if (builder.hasErrors()) {
      fail(builder.getErrors().toString());
    }

    final org.drools.core.rule.Package pkg = builder.getPackage();
    return pkg;
  }
View Full Code Here

    if (parser.hasErrors()) {
      fail("Error messages in parser, need to sort this our (or else collect error messages):\n"
          + parser.getErrors());
    }
    // pre build the package
    final PackageBuilder builder = new PackageBuilder();
    builder.addPackage(packageDescr);

    if (builder.hasErrors()) {
      fail(builder.getErrors().toString());
    }

    org.drools.core.rule.Package pkg = builder.getPackage();
    pkg = SerializationHelper.serializeObject(pkg);

    // add the package to a rulebase
    RuleBase ruleBase = getSinglethreadRuleBase();
    ruleBase.addPackage(pkg);
View Full Code Here

     * Maximun number of hobbies each guest should have (default: 3).
     */
    private int maxHobbies = 3;

    public static void main(final String[] args) throws Exception {
        PackageBuilder builder = new PackageBuilder();
        builder.addPackageFromDrl(new InputStreamReader(MannersBenchmark.class.getResourceAsStream("manners.drl")));
        if ( builder.hasErrors() ) {
            throw new RuntimeException( builder.getErrors().toString() );
        }
        Package pkg = builder.getPackage();

        // add the package to a rulebase
        RuleBaseConfiguration conf = new RuleBaseConfiguration();
        conf.setPhreakEnabled(true);
       
View Full Code Here

        jarInputStreams.add( jis );

        Properties properties = new Properties();
        properties.setProperty( DefaultPackageNameOption.PROPERTY_NAME,
                                "foo.bar" );
        PackageBuilder builder = new PackageBuilder( new PackageBuilderConfiguration( properties,
                                                                                      loader ) );

        PackageDescr pc = new PackageDescr( "foo.bar" );
        builder.addPackage( pc );

        String header = "import fr.gouv.agriculture.dag.agorha.business.primes.SousPeriodePrimeAgent\n";

        builder.addPackageFromDrl( new StringReader( header ) );
        assertFalse( builder.hasErrors() );

        String passingRule = "rule \"rule1\"\n"
                             + "dialect \"mvel\"\n"
                             + "when\n"
                             + "SousPeriodePrimeAgent( echelle == \"abc\" )"
                             + "then\n"
                             + "end\n";

        String failingRule = "rule \"rule2\"\n"
                             + "dialect \"mvel\"\n"
                             + "when\n"
                             + "SousPeriodePrimeAgent( quotiteRemuneration == 123 , echelle == \"abc\" )"
                             + "then\n"
                             + "end\n";

        builder.addPackageFromDrl( new StringReader( passingRule ) );
        if ( builder.hasErrors() ) {
            logger.warn( builder.getErrors().getErrors()[0].getMessage() );
        }
        assertFalse( builder.hasErrors() );

        builder.addPackageFromDrl( new StringReader( failingRule ) );
        if ( builder.hasErrors() ) {
            logger.warn( builder.getErrors().getErrors()[0].getMessage() );
        }
        assertFalse( builder.hasErrors() );

    }
View Full Code Here

TOP

Related Classes of org.drools.compiler.compiler.PackageBuilder$TypeDefinition

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.