Examples of WorkingMemory


Examples of org.drools.WorkingMemory

    public void testAddFromRuleSet() throws IntegrationException,
                                    SAXException,
                                    IOException,
                                    FactException
    {
        WorkingMemory workingMemory;
        List list;
        RuleBase ruleBase;
        RuleBaseLoader ruleBaseLoader;
        RuleSetLoader ruleSetLoader = new RuleSetLoader( );

        // single URL parameter
        ruleSetLoader.addFromUrl( RuleBaseLoaderTest.class.getResource( "simple.java.drl" ) );

        // Get tehe ruleSet to test with
        RuleSetCompiler[] compilers = (RuleSetCompiler[]) ruleSetLoader.getRuleSets( ).values( ).toArray( new RuleSetCompiler[]{} );
        RuleSet ruleSet = compilers[0].getRuleSet( );

        // Try with addFromRuleSet
        ruleBaseLoader = new RuleBaseLoader( );
        ruleBaseLoader.addFromRuleSet( ruleSet );
        ruleBase = ruleBaseLoader.buildRuleBase( );
        workingMemory = ruleBase.newWorkingMemory( );
        list = new ArrayList( );
        workingMemory.setApplicationData( "list",
                                          list );
        workingMemory.assertObject( "help" );
        workingMemory.fireAllRules( );
        assertEquals( "help",
                      list.get( 0 ) );

        // Try with addFromRuleSet

        ruleBaseLoader = new RuleBaseLoader( );
        ruleBaseLoader.addFromRuleSet( new RuleSet[]{ruleSet} );
        ruleBase = ruleBaseLoader.buildRuleBase( );
        workingMemory = ruleBase.newWorkingMemory( );
        list = new ArrayList( );
        workingMemory.setApplicationData( "list",
                                          list );
        workingMemory.assertObject( "help" );
        workingMemory.fireAllRules( );
        assertEquals( "help",
                      list.get( 0 ) );

    }
View Full Code Here

Examples of org.drools.WorkingMemory

    public void testAddFromDdjUrl() throws IntegrationException,
                                   SAXException,
                                   IOException,
                                   FactException
    {
        WorkingMemory workingMemory;
        List list;
        RuleBase ruleBase;
        RuleBaseLoader ruleBaseLoader;
        RuleSetLoader ruleSetLoader = new RuleSetLoader( );

        // single URL parameter
        ruleSetLoader.addFromUrl( RuleBaseLoaderTest.class.getResource( "simple.java.drl" ) );

        // Try with addFromRuleSetLoader
        ruleBaseLoader = new RuleBaseLoader( );
        ruleBaseLoader.addFromRuleSetLoader( ruleSetLoader );
        RuleSetCompiler[] compilers = (RuleSetCompiler[]) ruleSetLoader.getRuleSets( ).values( ).toArray( new RuleSetCompiler[]{} );

        File root = null;
        try
        {
            root = createTempDirectory( );
            File file = new File( root,
                                  "drools.ddj" );
            FileOutputStream fos = new FileOutputStream( file );
            fos.write( compilers[0].getBinaryDeploymentJar( ) );
            fos.close( );

            // Try with URL to Drools Distribution Jar, ddj
            ruleBaseLoader = new RuleBaseLoader( );
            ruleBaseLoader.addFromUrl( file.toURL( ) );
            ruleBase = ruleBaseLoader.buildRuleBase( );
            workingMemory = ruleBase.newWorkingMemory( );
            list = new ArrayList( );
            workingMemory.setApplicationData( "list",
                                              list );
            workingMemory.assertObject( "help" );
            workingMemory.fireAllRules( );
            assertEquals( "help",
                          list.get( 0 ) );

            // Try with URL to Drools Distribution Jar, ddj []
            ruleBaseLoader = new RuleBaseLoader( );
            ruleBaseLoader.addFromUrl( new URL[]{file.toURL( )} );
            ruleBase = ruleBaseLoader.buildRuleBase( );
            workingMemory = ruleBase.newWorkingMemory( );
            list = new ArrayList( );
            workingMemory.setApplicationData( "list",
                                              list );
            workingMemory.assertObject( "help" );
            workingMemory.fireAllRules( );
            assertEquals( "help",
                          list.get( 0 ) );
        }
        catch ( Exception e )
        {
View Full Code Here

Examples of org.drools.core.WorkingMemory

                      pkg );
        } catch ( final Exception e ) {
            fail( "Should not throw any exception: " + e.getMessage() );
        }

        final WorkingMemory workingMemory = ruleBase.newStatefulSession();
        QueryResults results = workingMemory.getQueryResults( "query-1" );

        assertEquals( 0,
                      results.size() );

        final Cheese stilton1 = new Cheese( "stilton",
                                            100 );
        final FactHandle handle1 = workingMemory.insert( stilton1 );

        results = workingMemory.getQueryResults( "query-1" );

        assertEquals( 1,
                      results.size() );

        final Cheese cheddar = new Cheese( "cheddar",
                                           55 );
        workingMemory.insert( cheddar );

        results = workingMemory.getQueryResults( "query-1" );

        assertEquals( 1,
                      results.size() );

        final Cheese stilton2 = new Cheese( "stilton",
                                            5 );

        final FactHandle handle2 = workingMemory.insert( stilton2 );

        results = workingMemory.getQueryResults( "query-1" );

        assertEquals( 2,
                      results.size() );

        QueryResult result = results.get( 0 );
        assertEquals( 1,
                      result.size() );
        assertEquals( stilton1,
                      result.get( 0 ) );

        result = results.get( 1 );
        assertEquals( 1,
                      result.size() );
        assertEquals( stilton2,
                      result.get( 0 ) );

        int i = 0;
        for ( final Iterator it = results.iterator(); it.hasNext(); ) {
            result = (QueryResult) it.next();
            assertEquals( 1,
                          result.size() );
            if ( i == 1 ) {
                assertSame( stilton2,
                            result.get( 0 ) );
            } else {
                assertSame( stilton1,
                            result.get( 0 ) );
            }
            i++;
        }

        workingMemory.retract( handle1 );
        results = workingMemory.getQueryResults( "query-1" );

        assertEquals( 1,
                      results.size() );

        workingMemory.retract( handle2 );
        results = workingMemory.getQueryResults( "query-1" );

        assertEquals( 0,
                      results.size() );

    }
View Full Code Here

Examples of org.drools.verifier.components.WorkingMemory

        // visit source.
        if ( descr.getSource() != null ) {
            visit( descr.getSource() );
        } else {
            if ( workingMemory == null ) {
                workingMemory = new WorkingMemory();
                data.add( workingMemory );
            }
            pattern.setSourcePath( workingMemory.getPath() );
            pattern.setSourceType( workingMemory.getVerifierComponentType() );
        }
View Full Code Here

Examples of org.mvel2.tests.core.res.WorkingMemory

    context.setStrictTypeEnforcement(true);
    context.addInput("drools",
        KnowledgeHelper.class);

    RuleBase ruleBase = new RuleBaseImpl();
    WorkingMemory wm = new WorkingMemoryImpl(ruleBase);
    KnowledgeHelper drools = new DefaultKnowledgeHelper(wm);

    Map vars = new HashMap();
    vars.put("drools",
        drools);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.