[jboss-svn-commits] JBL Code SVN: r24528 - in labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src: test/java and 3 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Jan 3 13:41:53 EST 2009


Author: mark.proctor at jboss.com
Date: 2009-01-03 13:41:53 -0500 (Sat, 03 Jan 2009)
New Revision: 24528

Added:
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Company.java
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Department.java
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Employee.java
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/JxlsTest.java
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/departmentData.xls
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/departments.xml
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_JXLS.drl
Removed:
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/main/java/org/drools/runtime/pipeline/impl/Root.java
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/dataloaders/
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/DroolsJxlsStatefulSessionTest.java
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/DroolsJxlsStatelessSessionTest.java
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/sample/
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/XStreamDirectRoot.xml
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/XStreamNestedIterable.xml
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_XStreamDirectRoot.drl
   labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_XStreamNestedIterable.drl
Log:
JBRULES-1903 Pipeline support for DataLoaders and Feeders
-made unit tests work for jxls transformer

Deleted: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/main/java/org/drools/runtime/pipeline/impl/Root.java
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/main/java/org/drools/runtime/pipeline/impl/Root.java	2009-01-03 17:06:50 UTC (rev 24527)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/main/java/org/drools/runtime/pipeline/impl/Root.java	2009-01-03 18:41:53 UTC (rev 24528)
@@ -1,21 +0,0 @@
-package org.drools.runtime.pipeline.impl;
-
-import java.util.List;
-
-public class Root {
-	private List children;
-	
-	public Root() {
-		
-	}
-
-	public List getChildren() {
-		return children;
-	}
-
-	public void setChildren(List children) {
-		this.children = children;
-	}
-	
-	
-}

Copied: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Company.java (from rev 24524, labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/sample/Company.java)
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Company.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Company.java	2009-01-03 18:41:53 UTC (rev 24528)
@@ -0,0 +1,59 @@
+package org.drools.runtime.pipeline.impl;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Sample Department bean to demostrate main excel export features
+ * author: Leonid Vysochyn
+ */
+public class Company {
+    private String name;
+    private Employee chief = new Employee();
+    private List employee = new ArrayList();
+
+    public Company() {
+    }
+
+    public Company(String name) {
+        this.name = name;
+    }
+
+    public Company(String name, Employee chief, List staff) {
+        this.name = name;
+        this.chief = chief;
+        this.employee = staff;
+    }
+
+    public void addEmployee(Employee employee) {
+        this.employee.add(employee);
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public Employee getChief() {
+        return chief;
+    }
+
+    public void setChief(Employee chief) {
+        this.chief = chief;
+    }    
+
+    public List getEmployee() {
+        return employee;
+    }
+
+    public void setEmployee(List staff) {
+        this.employee = employee;
+    }
+    
+    public String toString() {
+        return "[Company name : " + this.name + " chief : " + this.chief + " staff : " + this.employee + "]";
+    }    
+}


Property changes on: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Company.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Copied: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Department.java (from rev 24524, labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/sample/Department.java)
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Department.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Department.java	2009-01-03 18:41:53 UTC (rev 24528)
@@ -0,0 +1,59 @@
+package org.drools.runtime.pipeline.impl;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Sample Department bean to demostrate main excel export features
+ * author: Leonid Vysochyn
+ */
+public class Department {
+    private String name;
+    private Employee chief = new Employee();
+    private List staff = new ArrayList();
+    
+    public Department() {
+    }
+
+    public Department(String name) {
+        this.name = name;
+    }
+
+    public Department(String name, Employee chief, List staff) {
+        this.name = name;
+        this.chief = chief;
+        this.staff = staff;
+    }
+
+    public void addEmployee(Employee employee) {
+        this.staff.add(employee);
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public Employee getChief() {
+        return chief;
+    }
+
+    public void setChief(Employee chief) {
+        this.chief = chief;
+    }
+
+    public List getStaff() {
+        return staff;
+    }
+
+    public void setStaff(List staff) {
+        this.staff = staff;
+    }
+    
+    public String toString() {
+        return "[Department name : " + this.name + " chief : " + this.chief + " staff : " + this.staff + "]";
+    }
+}


Property changes on: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Department.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Deleted: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/DroolsJxlsStatefulSessionTest.java
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/DroolsJxlsStatefulSessionTest.java	2009-01-03 17:06:50 UTC (rev 24527)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/DroolsJxlsStatefulSessionTest.java	2009-01-03 18:41:53 UTC (rev 24528)
@@ -1,140 +0,0 @@
-package org.drools.runtime.pipeline.impl;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import javax.xml.transform.stream.StreamSource;
-
-import junit.framework.TestCase;
-
-import org.drools.KnowledgeBase;
-import org.drools.KnowledgeBaseFactory;
-import org.drools.builder.KnowledgeBuilder;
-import org.drools.builder.KnowledgeBuilderFactory;
-import org.drools.builder.ResourceType;
-import org.drools.common.InternalRuleBase;
-import org.drools.impl.KnowledgeBaseImpl;
-import org.drools.impl.StatefulKnowledgeSessionImpl;
-import org.drools.io.ResourceFactory;
-import org.drools.runtime.StatefulKnowledgeSession;
-import org.drools.runtime.dataloader.DataLoaderFactory;
-import org.drools.runtime.dataloader.StatefulKnowledgeSessionDataLoader;
-import org.drools.runtime.dataloader.impl.StatefulKnowledgeSessionDataLoaderImpl;
-import org.drools.runtime.dataloader.impl.EntryPointReceiverAdapter;
-import org.drools.runtime.pipeline.Expression;
-import org.drools.runtime.pipeline.PipelineFactory;
-import org.drools.runtime.pipeline.Splitter;
-import org.drools.runtime.pipeline.Transformer;
-import org.drools.runtime.pipeline.impl.IterateSplitter;
-import org.drools.runtime.pipeline.impl.MvelExpression;
-import org.drools.runtime.rule.FactHandle;
-
-public class DroolsJxlsStatefulSessionTest extends TestCase {
-    
-    public void test1() {
-        
-    }
-    
-//    public void test1() {
-//        KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
-//
-//        kbuilder.add( ResourceFactory.newClassPathResource( "test_XStreamDirectRoot.drl",
-//                                                            DroolsJxlsStatefulSessionTest.class ),
-//                      ResourceType.DRL );
-//
-//        assertFalse( kbuilder.hasErrors() );
-//
-//        KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();
-//        kbase.addKnowledgePackages( kbuilder.getKnowledgePackages() );
-//
-//        StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
-//        List list = new ArrayList();
-//        ksession.setGlobal( "list",
-//                            list );
-//    }
-
-    //
-    //    public void testDirectRoot() throws Exception {
-    //        KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
-    //
-    //        kbuilder.add( ResourceFactory.newClassPathResource( "test_XStreamDirectRoot.drl",
-    //                                                            DroolsJxlsStatefulSessionTest.class ),
-    //                      ResourceType.DRL );
-    //
-    //        assertFalse( kbuilder.hasErrors() );
-    //
-    //        KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();
-    //        kbase.addKnowledgePackages( kbuilder.getKnowledgePackages() );
-    //
-    //        StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
-    //        List list = new ArrayList();
-    //        ksession.setGlobal( "list",
-    //                            list );
-    //
-    //        XStream xstream = new XStream();
-    //        Transformer transformer = PipelineFactory.newXStreamTransformer( xstream );
-    //        transformer.addReceiver( PipelineFactory.newStatefulKnowledgeSessionReceiverAdapter() );
-    //
-    //        StatefulKnowledgeSessionDataLoader dataLoader = DataLoaderFactory.newStatefulKnowledgeSessionDataLoader( ksession,
-    //                                                                                                                 transformer );
-    //        Map<FactHandle, Object> handles = dataLoader.insert( getClass().getResourceAsStream( "XStreamDirectRoot.xml" ) );
-    //        ksession.fireAllRules();
-    //
-    //        assertEquals( 1,
-    //                      handles.size() );
-    //        assertEquals( 1,
-    //                      list.size() );
-    //
-    //        assertEquals( "example.OrderItem",
-    //                      list.get( 0 ).getClass().getName() );
-    //    }
-    //
-    //    public void testNestedIterable() throws Exception {
-    //        KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
-    //
-    //        kbuilder.add( ResourceFactory.newClassPathResource( "test_XStreamNestedIterable.drl",
-    //                                                            DroolsJxlsStatefulSessionTest.class ),
-    //                      ResourceType.DRL );
-    //
-    //        assertFalse( kbuilder.hasErrors() );
-    //
-    //        KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();
-    //        kbase.addKnowledgePackages( kbuilder.getKnowledgePackages() );
-    //
-    //        StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
-    //        List list = new ArrayList();
-    //        ksession.setGlobal( "list",
-    //                            list );
-    //
-    //        XStream xstream = new XStream();
-    //        Transformer transformer = PipelineFactory.newXStreamTransformer( xstream );
-    //        Expression expression = PipelineFactory.newMvelExpression( "this" );
-    //        transformer.addReceiver( expression );
-    //        Splitter splitter = PipelineFactory.newIterateSplitter();
-    //        expression.addReceiver( splitter );
-    //        splitter.addReceiver( PipelineFactory.newStatefulKnowledgeSessionReceiverAdapter() );
-    //
-    //        StatefulKnowledgeSessionDataLoader dataLoader = DataLoaderFactory.newStatefulKnowledgeSessionDataLoader( ksession,
-    //                                                                                                                 transformer );
-    //
-    //        Map<FactHandle, Object> handles = dataLoader.insert( getClass().getResourceAsStream( "XStreamNestedIterable.xml" ) );
-    //        ksession.fireAllRules();
-    //
-    //        assertEquals( 2,
-    //                      handles.size() );
-    //        assertEquals( 2,
-    //                      list.size() );
-    //
-    //        assertEquals( "example.OrderItem",
-    //                      list.get( 0 ).getClass().getName() );
-    //        assertEquals( "example.OrderItem",
-    //                      list.get( 1 ).getClass().getName() );
-    //
-    //        assertNotSame( list.get( 0 ),
-    //                       list.get( 1 ) );
-    //    }
-
-}

Deleted: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/DroolsJxlsStatelessSessionTest.java
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/DroolsJxlsStatelessSessionTest.java	2009-01-03 17:06:50 UTC (rev 24527)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/DroolsJxlsStatelessSessionTest.java	2009-01-03 18:41:53 UTC (rev 24528)
@@ -1,103 +0,0 @@
-package org.drools.runtime.pipeline.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.transform.stream.StreamSource;
-
-import junit.framework.TestCase;
-
-import org.drools.KnowledgeBase;
-import org.drools.KnowledgeBaseFactory;
-import org.drools.builder.KnowledgeBuilder;
-import org.drools.builder.KnowledgeBuilderFactory;
-import org.drools.builder.ResourceType;
-import org.drools.io.ResourceFactory;
-import org.drools.runtime.StatelessKnowledgeSession;
-import org.drools.runtime.dataloader.StatelessKnowledgeSessionDataLoader;
-import org.drools.runtime.dataloader.impl.StatelessKnowledgeSessionDataLoaderImpl;
-import org.drools.runtime.pipeline.Expression;
-import org.drools.runtime.pipeline.PipelineFactory;
-import org.drools.runtime.pipeline.Splitter;
-import org.drools.runtime.pipeline.Transformer;
-
-public class DroolsJxlsStatelessSessionTest extends TestCase {
-    
-    public void test1() {
-        
-    }
-
-//    public void testSmooksDirectRoot() throws Exception {
-//        KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
-//
-//        kbuilder.add( ResourceFactory.newClassPathResource( "test_XStreamDirectRoot.drl",
-//                                                            DroolsJxlsStatefulSessionTest.class ),
-//                      ResourceType.DRL );
-//
-//        assertFalse( kbuilder.hasErrors() );
-//
-//        KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();
-//        kbase.addKnowledgePackages( kbuilder.getKnowledgePackages() );
-//
-//        StatelessKnowledgeSession ksession = kbase.newStatelessKnowledgeSession();
-//        List list = new ArrayList();
-//        ksession.setGlobal( "list",
-//                            list );
-//
-//        XStream xstream = new XStream();
-//        Transformer transformer = PipelineFactory.newXStreamTransformer( xstream );
-//        transformer.addReceiver( PipelineFactory.newStatelessKnowledgeSessionReceiverAdapter() );
-//
-//        StatelessKnowledgeSessionDataLoader dataLoader = new StatelessKnowledgeSessionDataLoaderImpl( ksession,
-//                                                                                                      transformer );
-//        dataLoader.executeObject( getClass().getResourceAsStream( "XStreamDirectRoot.xml" ) );
-//
-//        assertEquals( 1,
-//                      list.size() );
-//
-//        assertEquals( "example.OrderItem",
-//                      list.get( 0 ).getClass().getName() );
-//    }
-//
-//    public void testSmooksNestedIterable() throws Exception {
-//        KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
-//
-//        kbuilder.add( ResourceFactory.newClassPathResource( "test_XStreamNestedIterable.drl",
-//                                                            DroolsJxlsStatefulSessionTest.class ),
-//                      ResourceType.DRL );
-//
-//        assertFalse( kbuilder.hasErrors() );
-//
-//        KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();
-//        kbase.addKnowledgePackages( kbuilder.getKnowledgePackages() );
-//
-//        StatelessKnowledgeSession ksession = kbase.newStatelessKnowledgeSession();
-//        List list = new ArrayList();
-//        ksession.setGlobal( "list",
-//                            list );
-//
-//        XStream xstream = new XStream();
-//        Transformer transformer = PipelineFactory.newXStreamTransformer( xstream );
-//        Expression expression = PipelineFactory.newMvelExpression( "this" );
-//        transformer.addReceiver( expression );
-//        Splitter splitter = PipelineFactory.newIterateSplitter();
-//        expression.addReceiver( splitter );
-//        splitter.addReceiver( PipelineFactory.newStatelessKnowledgeSessionReceiverAdapter() );
-//
-//        StatelessKnowledgeSessionDataLoader dataLoader = new StatelessKnowledgeSessionDataLoaderImpl( ksession,
-//                                                                                                      transformer );
-//        dataLoader.executeIterable( getClass().getResourceAsStream( "XStreamNestedIterable.xml" ) );
-//
-//        assertEquals( 2,
-//                      list.size() );
-//
-//        assertEquals( "example.OrderItem",
-//                      list.get( 0 ).getClass().getName() );
-//        assertEquals( "example.OrderItem",
-//                      list.get( 1 ).getClass().getName() );
-//
-//        assertNotSame( list.get( 0 ),
-//                       list.get( 1 ) );
-//    }
-
-}

Copied: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Employee.java (from rev 24524, labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/sample/Employee.java)
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Employee.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Employee.java	2009-01-03 18:41:53 UTC (rev 24528)
@@ -0,0 +1,120 @@
+package org.drools.runtime.pipeline.impl;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * Sample Employee bean to demostrate simple export features
+ * @author Leonid Vysochyn
+ */
+public class Employee {
+    private String name;
+    private Integer age;
+    private Double payment;
+    private Double bonus;
+    private Date birthDate;
+    private Employee superior;
+    private List notes;
+    private String id;
+
+
+    public Employee() {
+    }
+
+    public List getNotes() {
+        return notes;
+    }
+
+    public void setNotes(List notes) {
+        this.notes = notes;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public Employee(String name, Integer age, Double payment, Double bonus) {
+        this.name = name;
+        this.age = age;
+        this.payment = payment;
+        this.bonus = bonus;
+    }
+
+    public Employee(String name, int age, double payment, double bonus, Date birthDate) {
+        this.name = name;
+        this.age = new Integer(age);
+        this.payment = new Double(payment);
+        this.bonus = new Double(bonus);
+        this.birthDate = birthDate;
+    }
+
+    public Employee(String name, Double payment, Double bonus) {
+        this.name = name;
+        this.payment = payment;
+        this.bonus = bonus;
+    }
+
+    public Employee(String name, int age, double payment, double bonus) {
+        this.name = name;
+        this.age = new Integer(age);
+        this.payment = new Double(payment);
+        this.bonus = new Double(bonus);
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public Integer getAge() {
+        return age;
+    }
+
+    public void setAge(Integer age) {
+        this.age = age;
+    }
+
+    public Double getPayment() {
+        return payment;
+    }
+
+    public void setPayment(Double payment) {
+        this.payment = payment;
+    }
+
+    public Double getBonus() {
+        return bonus;
+    }
+
+    public void setBonus(Double bonus) {
+        this.bonus = bonus;
+    }
+
+    public Date getBirthDate() {
+        return birthDate;
+    }
+
+    public void setBirthDate(Date birthDate) {
+        this.birthDate = birthDate;
+    }
+
+    public Employee getSuperior() {
+        return superior;
+    }
+
+    public void setSuperior(Employee superior) {
+        this.superior = superior;
+    }
+    
+    public String toString() {
+        return "[Employee name : " + this.name + "]"; 
+    }
+
+}


Property changes on: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/Employee.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Copied: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/JxlsTest.java (from rev 24524, labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/sample/JxlsTest.java)
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/JxlsTest.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/JxlsTest.java	2009-01-03 18:41:53 UTC (rev 24528)
@@ -0,0 +1,75 @@
+package org.drools.runtime.pipeline.impl;
+
+import java.io.BufferedInputStream;
+import java.io.InputStream;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.drools.builder.KnowledgeBuilder;
+import org.drools.builder.KnowledgeBuilderFactory;
+import org.drools.builder.ResourceType;
+import org.drools.builder.impl.KnowledgeBuilderImpl;
+import org.drools.io.ResourceFactory;
+import org.drools.runtime.pipeline.Callable;
+import org.drools.runtime.pipeline.ListAdapter;
+import org.drools.runtime.pipeline.PipelineFactory;
+import org.drools.runtime.pipeline.Transformer;
+import org.drools.runtime.pipeline.impl.BasePipelineContext;
+import org.drools.runtime.pipeline.impl.JxlsTransformer;
+import org.drools.runtime.pipeline.impl.ListAdapterImpl;
+import org.mvel2.MVEL;
+import org.mvel2.ParserConfiguration;
+import org.mvel2.ParserContext;
+
+import junit.framework.TestCase;
+import net.sf.jxls.reader.ReaderBuilder;
+import net.sf.jxls.reader.XLSDataReadException;
+import net.sf.jxls.reader.XLSReadStatus;
+import net.sf.jxls.reader.XLSReader;
+
+public class JxlsTest extends TestCase {
+    public void test1() throws Exception {
+        InputStream stream = getClass().getResourceAsStream( "departments.xml");
+        assertNotNull( stream );
+        
+        KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
+        // kbuilder.add( ResourceFactory.newClassPathResource( "test_JXLS.drl", getClass() ), ResourceType.DRL );
+        
+        ClassLoader cl = ((KnowledgeBuilderImpl)kbuilder).pkgBuilder.getRootClassLoader(); 
+        Thread.currentThread().setContextClassLoader( cl );
+        
+        InputStream inputXML = new BufferedInputStream( stream );
+        XLSReader mainReader = ReaderBuilder.buildFromXML( inputXML );
+        InputStream inputXLS = new BufferedInputStream(getClass().getResourceAsStream( "departmentData.xls"));
+        
+        Callable callable = PipelineFactory.newCallable();
+        Transformer transformer = PipelineFactory.newJxlsTransformer(mainReader, "[ 'departments' : new java.util.ArrayList(), 'company' : new org.drools.runtime.pipeline.impl.Company() ]");
+        callable.addReceiver( transformer );
+        transformer.addReceiver( callable );        
+        BasePipelineContext context = new BasePipelineContext( Thread.currentThread().getContextClassLoader() );
+        
+        Map<String, Object> beans = ( Map<String, Object> ) callable.call( inputXLS, context );
+
+        assertEquals( Company.class.getName(), beans.get( "company" ).getClass().getName());
+        assertEquals( ArrayList.class.getName(), beans.get( "departments" ).getClass().getName());
+        
+        Company company = ( Company )  beans.get( "company" );
+        assertEquals( "A-Team", company.getName() );
+        assertEquals( 4, company.getEmployee().size() );
+        
+        List<Department> departments = ( List<Department> ) beans.get( "departments" );
+        assertEquals( 3, departments.size() );
+        
+        Department department = departments.get( 0 );
+        assertEquals( "IT", department.getName() );        
+        assertEquals( 5, department.getStaff().size() );
+        
+        department = departments.get( 2 );
+        assertEquals( "BA", department.getName() );        
+        assertEquals( 4, department.getStaff().size() );        
+    }
+    
+}
\ No newline at end of file


Property changes on: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/org/drools/runtime/pipeline/impl/JxlsTest.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Deleted: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/XStreamDirectRoot.xml
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/XStreamDirectRoot.xml	2009-01-03 17:06:50 UTC (rev 24527)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/XStreamDirectRoot.xml	2009-01-03 18:41:53 UTC (rev 24528)
@@ -1,5 +0,0 @@
-<example.OrderItem>
-    <productId>222</productId>
-    <quantity>7</quantity>
-    <price>5.20</price>
-</example.OrderItem>
\ No newline at end of file

Deleted: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/XStreamNestedIterable.xml
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/XStreamNestedIterable.xml	2009-01-03 17:06:50 UTC (rev 24527)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/XStreamNestedIterable.xml	2009-01-03 18:41:53 UTC (rev 24528)
@@ -1,12 +0,0 @@
-<java.util.ArrayList>
-    <example.OrderItem>
-        <productId>111</productId>
-        <quantity>2</quantity>
-        <price>8.90</price>
-    </example.OrderItem>
-    <example.OrderItem>
-        <productId>222</productId>
-        <quantity>7</quantity>
-        <price>5.20</price>
-    </example.OrderItem>
-</java.util.ArrayList>
\ No newline at end of file

Copied: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/departmentData.xls (from rev 24524, labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/sample/departmentData.xls)
===================================================================
(Binary files differ)


Property changes on: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/departmentData.xls
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream
Name: svn:mergeinfo
   + 

Copied: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/departments.xml (from rev 24524, labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/sample/departments.xml)
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/departments.xml	                        (rev 0)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/departments.xml	2009-01-03 18:41:53 UTC (rev 24528)
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<workbook>
+    <worksheet name="Sheet1">
+    
+        <section startRow="0" endRow="6">
+            <mapping cell="B1">company.name</mapping>
+        </section>
+        <loop startRow="7" endRow="7" items="company.employee" var="employee" varType="org.drools.runtime.pipeline.impl.Employee">
+            <section startRow="7" endRow="7">
+                <mapping row="7" col="0">employee.name</mapping>
+                <mapping row="7" col="1">employee.age</mapping>
+                <mapping row="7" col="3">employee.payment</mapping>
+                <mapping row="7" col="4">employee.bonus</mapping>
+            </section>
+            <loopbreakcondition>
+                <rowcheck offset="0">
+                    <cellcheck offset="0">Employee Payment Totals:</cellcheck>
+                </rowcheck>
+            </loopbreakcondition>
+        </loop>
+        
+    </worksheet>
+    <worksheet name="Sheet3">
+        <loop startRow="0" endRow="8" items="departments" var="department" varType="org.drools.runtime.pipeline.impl.Department">
+            <section startRow="0" endRow="6">
+                <mapping row="0" col="1">department.name</mapping>
+            </section>
+            <loop startRow="7" endRow="7" items="department.staff" var="employee" varType="org.drools.runtime.pipeline.impl.Employee">
+                <section startRow="7" endRow="7">
+                    <mapping row="7" col="0">employee.name</mapping>
+                    <mapping row="7" col="1">employee.age</mapping>
+                    <mapping row="7" col="2">employee.payment</mapping>
+                    <mapping row="7" col="3">employee.bonus</mapping>
+                </section>
+                <loopbreakcondition>
+                    <rowcheck offset="0">
+                        <cellcheck offset="0">Employee Payment Totals:</cellcheck>
+                    </rowcheck>
+                </loopbreakcondition>
+            </loop>
+            <section startRow="8" endRow="8"/>
+            <loopbreakcondition>
+                <rowcheck offset="0"/>
+                <rowcheck offset="1"/>
+            </loopbreakcondition>
+        </loop>
+    </worksheet> 
+</workbook>
\ No newline at end of file


Property changes on: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/departments.xml
___________________________________________________________________
Name: svn:mergeinfo
   + 

Copied: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_JXLS.drl (from rev 24524, labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/java/sample/test_JXLS.drl)
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_JXLS.drl	                        (rev 0)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_JXLS.drl	2009-01-03 18:41:53 UTC (rev 24528)
@@ -0,0 +1,17 @@
+package sample
+
+import java.util.List
+// this doesn't work, as we don't support default values
+ 
+
+declare Department
+    name : String
+    chief : Employee
+    staff : List
+end
+
+declare Company
+    name : String
+    chief : Employee
+    employee : List
+end


Property changes on: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_JXLS.drl
___________________________________________________________________
Name: svn:mergeinfo
   + 

Deleted: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_XStreamDirectRoot.drl
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_XStreamDirectRoot.drl	2009-01-03 17:06:50 UTC (rev 24527)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_XStreamDirectRoot.drl	2009-01-03 18:41:53 UTC (rev 24528)
@@ -1,16 +0,0 @@
-package example
-
-global java.util.List list;
-
-declare OrderItem
-    productId : long
-    quantity : Integer
-    price : double
-end
-
-rule someRule
-when
-    $i : OrderItem()
-then
-    list.add( $i );
-end
\ No newline at end of file

Deleted: labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_XStreamNestedIterable.drl
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_XStreamNestedIterable.drl	2009-01-03 17:06:50 UTC (rev 24527)
+++ labs/jbossrules/trunk/drools-pipeline/drools-transformer-jxls/src/test/resources/org/drools/runtime/pipeline/impl/test_XStreamNestedIterable.drl	2009-01-03 18:41:53 UTC (rev 24528)
@@ -1,16 +0,0 @@
-package example
-
-global java.util.List list;
-
-declare OrderItem
-    productId : long
-    quantity : Integer
-    price : double
-end
-
-rule someRule
-when
-    $i : OrderItem()
-then
-    list.add( $i ); 
-end
\ No newline at end of file




More information about the jboss-svn-commits mailing list