Package org.drools.runtime.rule

Examples of org.drools.runtime.rule.QueryResults


        persons.add(new Person("sarah", "john", 35));
       
        session.execute(CommandFactory.newInsertElements(persons));
        assertEquals(2, session.getFactCount());
       
        QueryResults results = query("people over the age of x", new Object[] {30});
        assertNotNull(results);
    }
View Full Code Here


        }

        public void marshal(Object object,
                            HierarchicalStreamWriter writer,
                            MarshallingContext context) {
            QueryResults results = (QueryResults) object;

            // write out identifiers
            String[] identifiers = results.getIdentifiers();

            writer.startNode( "identifiers" );
            for ( int i = 0; i < identifiers.length; i++ ) {
                writeItem( identifiers[i],
                           context,
View Full Code Here

            if (arguments.get(j) instanceof Variable) {
                arguments.set(j, Variable.v);
            }
        }

        QueryResults results = ksession.getQueryResults( name, this.arguments.toArray() );
       
        if ( this.outIdentifier != null ) {
            if(((StatefulKnowledgeSessionImpl)ksession).session.getExecutionResult() != null){
                ((StatefulKnowledgeSessionImpl)ksession).session.getExecutionResult().getResults().put( this.outIdentifier, results );
            }   
View Full Code Here

        }

        public void marshal(Object object,
                            HierarchicalStreamWriter writer,
                            MarshallingContext context) {
            QueryResults results = (QueryResults) object;
           
            // write out identifiers            
            List<String> originalIds = Arrays.asList( results.getIdentifiers() );
            List<String> actualIds = new ArrayList();
            if ( results instanceof NativeQueryResults ) {
                for ( String identifier : originalIds ) {
                    // we don't want to marshall the query parameters
                    Declaration declr = ((NativeQueryResults)results).getDeclarations().get( identifier );
View Full Code Here

        List<String> list = new ArrayList<String>();
        ksession.setGlobal( "list", list );
       
        ksession.fireAllRules();

        QueryResults results = null;
        results = ksession.getQueryResults( "p", new Integer[] { 1 }  );
        for ( QueryResultsRow result : results ) {
            System.out.println( "  " + "result( " + result.get( "x" ) + " )" );
        }
       
View Full Code Here

        ksession.insert( new Woman("jill") );
        ksession.insert( new Parent( "adam", "jill" ) );       
        ksession.insert( new Parent( "eve", "jill" ) );
       
        QueryResults results = null;
       
        System.out.println("woman");        
        results = ksession.getQueryResults( "woman", new Object[] { variable } );
        for ( QueryResultsRow result : results ) {
            System.out.println( "  " + result.get( "name" ) );
View Full Code Here

   
        StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
        List<String> list = new ArrayList<String>();
        ksession.setGlobal( "list", list );          
       
        QueryResults results = null;
        ksession.fireAllRules();
       
        ksession.insert( "go1" );
        ksession.fireAllRules();   
       
View Full Code Here

            List<String> list = new ArrayList<String>();
            ksession.setGlobal("list", list);
            ksession.insert("Some String");
            ksession.insert("Some Other String");
   
            QueryResults queryResults = ksession.getQueryResults("all the Strings");
   
            assertEquals(2, queryResults.size());
   
            Iterator<QueryResultsRow> iterator = queryResults.iterator();
            while (iterator.hasNext()){
                System.out.println("Row= "+iterator.next().get("$strings"));
            }
   
            //we are going to modify the query definition
            String query1V2 = "";
            query1V2 += "query \"all the Strings\"\n";
            query1V2 += "     $strings : String(this == \"Some String\")\n";
            query1V2 += "end\n";
           
            fileManager.write("rule1.drl", this.createDefaultRule("rule1") + " \n " + query1V2 );
           
            this.scan(kagent);
   
            queryResults = ksession.getQueryResults("all the Strings");
   
   
            assertEquals(1, queryResults.size());
            assertEquals("Some String",queryResults.iterator().next().get("$strings"));
   
            ksession.dispose();
            kagent.dispose();
        }
View Full Code Here

        assertTrue(kbase.getKnowledgePackages().iterator().next().getRules().iterator().next().getName().equals("all the Strings"));

        StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
        ksession.insert("Some String");

        QueryResults queryResults = ksession.getQueryResults("all the Strings");

        assertTrue(queryResults.size() == 1);
        assertTrue(queryResults.iterator().next().get("$strings").equals("Some String"));


        this.fileManager.write("rules.drl", this.createCommonQuery("all the Strings 2", new String[]{"$strings : String()"}));

        this.scan(kagent);

        assertEquals(1, kbase.getKnowledgePackages().iterator().next().getRules().size());
        assertTrue(kbase.getKnowledgePackages().iterator().next().getRules().iterator().next().getName().equals("all the Strings 2"));

        queryResults = ksession.getQueryResults("all the Strings 2");

        assertTrue(queryResults.size() == 1);
        assertTrue(queryResults.iterator().next().get("$strings").equals("Some String"));


        ksession.dispose();
    }
View Full Code Here

    public void setArguments(Object[] arguments) {
        this.arguments = arguments;
    }

    public QueryResults execute(ReteooWorkingMemory session) {
        QueryResults results = null;
       
        if ( arguments == null || arguments.length == 0 ) {
            results = new NativeQueryResults( session.getQueryResults( name ) );
        } else {
            results = new NativeQueryResults( session.getQueryResults( name, this.arguments ) );
View Full Code Here

TOP

Related Classes of org.drools.runtime.rule.QueryResults

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.