[jboss-svn-commits] JBL Code SVN: r31290 - in labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz: drools-core/src/main/java/org/drools/command/runtime and 4 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Jan 28 15:30:02 EST 2010
Author: lucazamador
Date: 2010-01-28 15:30:00 -0500 (Thu, 28 Jan 2010)
New Revision: 31290
Removed:
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/ResultTranslator.java
Modified:
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbTransformerProvider.java
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-api/src/main/java/org/drools/runtime/pipeline/PipelineFactory.java
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-core/src/main/java/org/drools/command/runtime/SetGlobalCommand.java
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-core/src/main/java/org/drools/command/runtime/rule/QueryCommand.java
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-camel/src/main/java/org/drools/camel/component/DroolsJaxbDataFormat.java
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/CommandTranslator.java
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbFromXmlTransformer.java
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbToXmlTransformer.java
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbTransformerProviderImpl.java
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbFactTest.java
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbGlobalTest.java
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbTest.java
Log:
jaxb context transport modifications & luane impl rollback
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbTransformerProvider.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbTransformerProvider.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbTransformerProvider.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -1,6 +1,7 @@
package org.drools.runtime.pipeline;
-import javax.xml.bind.JAXBContext;
+import javax.xml.bind.Marshaller;
+import javax.xml.bind.Unmarshaller;
/**
*
@@ -8,13 +9,7 @@
*
*/
public interface JaxbTransformerProvider {
-
- Transformer newJaxbFromXmlTransformer( JAXBContext jaxbCtx );
-
- Transformer newJaxbFromXmlCommandTransformer( JAXBContext jaxbCtx );
-
- Transformer newJaxbToXmlTransformer( JAXBContext jaxbCtx );
-
- Transformer newJaxbToXmlResultTransformer( JAXBContext jaxbCtx );
-
+ Transformer newJaxbFromXmlTransformer(Unmarshaller unmarshaller);
+
+ Transformer newJaxbToXmlTransformer(Marshaller marshaller);
}
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-api/src/main/java/org/drools/runtime/pipeline/PipelineFactory.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-api/src/main/java/org/drools/runtime/pipeline/PipelineFactory.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-api/src/main/java/org/drools/runtime/pipeline/PipelineFactory.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -2,15 +2,11 @@
import java.util.Properties;
-import javax.xml.bind.JAXBContext;
import javax.xml.bind.Marshaller;
import javax.xml.bind.Unmarshaller;
-import net.sf.jxls.reader.ReaderBuilder;
import net.sf.jxls.reader.XLSReader;
-import org.drools.builder.help.KnowledgeBuilderHelper;
-import org.drools.io.ResourceFactory;
import org.drools.runtime.StatefulKnowledgeSession;
import org.drools.runtime.StatelessKnowledgeSession;
import org.milyn.Smooks;
@@ -481,8 +477,8 @@
* @param unmarshaller
* @return
*/
- public static Transformer newJaxbFromXmlTransformer(JAXBContext context) {
- return getJaxbPipelineProvider().newJaxbFromXmlTransformer( context );
+ public static Transformer newJaxbFromXmlTransformer(Unmarshaller unmarshaller) {
+ return getJaxbPipelineProvider().newJaxbFromXmlTransformer( unmarshaller );
}
/**
@@ -498,8 +494,8 @@
* @param marshaller
* @return
*/
- public static Transformer newJaxbToXmlTransformer(JAXBContext context) {
- return getJaxbPipelineProvider().newJaxbToXmlTransformer( context );
+ public static Transformer newJaxbToXmlTransformer(Marshaller marshaller) {
+ return getJaxbPipelineProvider().newJaxbToXmlTransformer( marshaller );
}
/**
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-core/src/main/java/org/drools/command/runtime/SetGlobalCommand.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-core/src/main/java/org/drools/command/runtime/SetGlobalCommand.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-core/src/main/java/org/drools/command/runtime/SetGlobalCommand.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -1,98 +1,75 @@
package org.drools.command.runtime;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-
import org.drools.command.Context;
import org.drools.command.impl.GenericCommand;
import org.drools.command.impl.KnowledgeCommandContext;
import org.drools.impl.StatefulKnowledgeSessionImpl;
-import org.drools.result.ExecutionResults;
-import org.drools.result.SetGlobalResult;
import org.drools.runtime.StatefulKnowledgeSession;
- at XmlRootElement
- at XmlAccessorType( XmlAccessType.NONE )
public class SetGlobalCommand
implements
GenericCommand<Void> {
- @XmlAttribute(required = true)
- private String identifier;
+ private String identifier;
+ private Object object;
- @XmlElement(name="")
- private Object object;
+ private String outIdentifier;
+
+ private boolean out;
- @XmlAttribute(name = "out-identifier")
- private String outIdentifier;
-
- @XmlAttribute
- private Boolean out;
+ public SetGlobalCommand() {
+ }
- public SetGlobalCommand(){
- }
-
public SetGlobalCommand(String identifier,
Object object) {
- this.identifier = identifier;
- this.object = object;
+ this.identifier = identifier;
+ this.object = object;
}
public Void execute(Context context) {
- StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession();
+ StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession();
- ksession.setGlobal( this.identifier, this.object );
+ if ( this.out ) {
+ ((StatefulKnowledgeSessionImpl) ksession).session.getExecutionResult().getResults().put( (this.outIdentifier != null) ? this.outIdentifier : this.identifier,
+ object );
+ }
- if ( this.isOut() ) {
- ExecutionResults execRes = (ExecutionResults)((StatefulKnowledgeSessionImpl) ksession).session.getExecutionResult();
- String id = (this.outIdentifier != null) ? this.outIdentifier : this.identifier;
- execRes.getResults().add( new SetGlobalResult( id, object ) );
- }
- return null;
+ ksession.setGlobal( this.identifier,
+ this.object );
+ return null;
}
- public Object getObject() {
- return this.object;
+ public String getIdentifier() {
+ return this.identifier;
}
+ public Object getObject() {
+ return this.object;
+ }
+
public void setObject( Object object ) {
this.object = object;
}
public String getOutIdentifier() {
- return this.outIdentifier;
+ return this.outIdentifier;
}
public void setOutIdentifier(String outIdentifier) {
- this.outIdentifier = outIdentifier;
- this.out = true;
+ this.outIdentifier = outIdentifier;
+ this.out = true;
}
- public String getIdentifier() {
- return this.identifier;
- }
-
- public void setIdentifier(String identifier) {
- this.identifier = identifier;
- }
-
public boolean isOut() {
- if (out == null) {
- return false;
- } else {
- return out;
- }
+ return this.out;
}
- public void setOut(Boolean out) {
- this.out = out;
+ public void setOut(boolean out) {
+ this.out = out;
}
public String toString() {
- return "session.setGlobal(" + this.identifier + ", " + this.object + ");";
+ return "session.setGlobal(" + this.identifier + ", " + this.object + ");";
}
}
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-core/src/main/java/org/drools/command/runtime/rule/QueryCommand.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-core/src/main/java/org/drools/command/runtime/rule/QueryCommand.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-core/src/main/java/org/drools/command/runtime/rule/QueryCommand.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -13,8 +13,6 @@
import org.drools.command.impl.GenericCommand;
import org.drools.command.impl.KnowledgeCommandContext;
import org.drools.impl.StatefulKnowledgeSessionImpl;
-import org.drools.result.ExecutionResults;
-import org.drools.result.QueryResult;
import org.drools.runtime.StatefulKnowledgeSession;
import org.drools.runtime.rule.QueryResults;
@@ -68,17 +66,14 @@
QueryResults results = null;
- if ( this.arguments == null || this.arguments.size() == 0 ) {
+ if ( arguments == null || arguments.size() == 0 ) {
results = ksession.getQueryResults( name );
} else {
results = ksession.getQueryResults( name, this.arguments.toArray() );
}
if ( this.outIdentifier != null ) {
- ExecutionResults execRes =
- (ExecutionResults)((StatefulKnowledgeSessionImpl) ksession).session.getExecutionResult();
- QueryResult queryRes = new QueryResult( outIdentifier, results );
- execRes.getResults().add( queryRes );
+ ((StatefulKnowledgeSessionImpl)ksession).session.getExecutionResult().getResults().put( this.outIdentifier, results );
}
return results;
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-camel/src/main/java/org/drools/camel/component/DroolsJaxbDataFormat.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-camel/src/main/java/org/drools/camel/component/DroolsJaxbDataFormat.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-camel/src/main/java/org/drools/camel/component/DroolsJaxbDataFormat.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -1,7 +1,6 @@
package org.drools.camel.component;
import java.io.File;
-import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.Reader;
@@ -16,28 +15,19 @@
import org.apache.camel.Exchange;
import org.apache.camel.spi.DataFormat;
-import org.drools.KnowledgeBase;
-import org.drools.builder.KnowledgeBuilder;
-import org.drools.builder.help.KnowledgeBuilderHelper;
import org.drools.command.runtime.BatchExecutionCommand;
import org.drools.impl.StatefulKnowledgeSessionImpl;
import org.drools.impl.StatelessKnowledgeSessionImpl;
import org.drools.io.Resource;
-import org.drools.io.ResourceFactory;
import org.drools.reteoo.ReteooRuleBase;
import org.drools.runtime.CommandExecutor;
-import org.drools.runtime.impl.ExecutionResultAdapter;
import org.drools.runtime.pipeline.PipelineContext;
import org.drools.runtime.pipeline.impl.CommandTranslator;
import org.drools.runtime.pipeline.impl.ServiceManagerPipelineContextImpl;
import org.drools.vsm.ServiceManager;
-import org.drools.vsm.local.ServiceManagerLocalClient;
import org.w3c.dom.Document;
import org.xml.sax.InputSource;
-import com.sun.tools.xjc.Language;
-import com.sun.tools.xjc.Options;
-
/**
*
* @author Lucas Amador
@@ -46,43 +36,38 @@
public class DroolsJaxbDataFormat implements DataFormat {
private CommandTranslator cmdTranslator;
- private Unmarshaller unmarshaller;
- private Marshaller marshaller;
public DroolsJaxbDataFormat() throws JAXBException {
- JAXBContext jaxbContext = createJaxbContext();
- this.unmarshaller = jaxbContext.createUnmarshaller();
- this.marshaller = jaxbContext.createMarshaller();
- this.marshaller.setProperty(Marshaller.JAXB_FRAGMENT, true);
- this.marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
- this.marshaller.setAdapter(new ExecutionResultAdapter());
-
- this.cmdTranslator = new CommandTranslator(unmarshaller);
+ this.cmdTranslator = new CommandTranslator();
}
public void marshal(Exchange exchange, Object graph, OutputStream stream)
throws Exception {
Object body = exchange.getIn().getBody();
+
+ JAXBContext jaxbContext = (JAXBContext) exchange.getProperty("jaxb-context");
+ Marshaller marshaller = jaxbContext.createMarshaller();
try {
- this.marshaller.marshal(body, stream);
+ marshaller.marshal(body, stream);
} catch (Exception e) {
e.printStackTrace();
}
-
+
stream.flush();
}
public Object unmarshal(Exchange exchange, InputStream stream) throws Exception {
+
+ JAXBContext jaxbContext = (JAXBContext) exchange.getIn().getHeader("jaxb-context");
PipelineContext context = (PipelineContext) exchange.getProperty("drools-context");
+ Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
Document d = exchange.getIn().getBody(Document.class);
Object body = exchange.getIn().getBody();
String name = d.getDocumentElement().getAttribute("lookup");
- // JAXBContext jaxbContext = (JAXBContext) context.getProperties().get("jaxb-context");
- // this.unmarshaller = getUnmarshaller(jaxbContext);
ServiceManagerPipelineContextImpl vsmContext = (ServiceManagerPipelineContextImpl) exchange.getProperty("drools-context");
ServiceManager sm = vsmContext.getServiceManager();
CommandExecutor executor = sm.lookup(name);
@@ -101,20 +86,20 @@
vsmContext.setClassLoader(cl);
Object payload = null;
if ( body instanceof File ) {
- payload = (String) this.unmarshaller.unmarshal( (File) body );
+ payload = (String) unmarshaller.unmarshal( (File) body );
} else if ( body instanceof InputStream ) {
- payload = (String) this.unmarshaller.unmarshal( (InputStream) body );
+ payload = (String) unmarshaller.unmarshal( (InputStream) body );
} else if ( body instanceof Reader ) {
- payload = (String) this.unmarshaller.unmarshal( (Reader) body );
+ payload = (String) unmarshaller.unmarshal( (Reader) body );
} else if ( body instanceof Source ) {
- payload = (String) this.unmarshaller.unmarshal( (Source) body );
+ payload = (String) unmarshaller.unmarshal( (Source) body );
} else if ( body instanceof InputSource ) {
- payload = (String) this.unmarshaller.unmarshal( (InputSource) body );
+ payload = (String) unmarshaller.unmarshal( (InputSource) body );
} else if ( body instanceof Resource ) {
- payload = (String) this.unmarshaller.unmarshal( (( Resource ) body).getReader() );
+ payload = (String) unmarshaller.unmarshal( (( Resource ) body).getReader() );
} else if ( body instanceof String ) {
try {
- payload = this.unmarshaller.unmarshal( new StringReader( ( String ) body ) );
+ payload = unmarshaller.unmarshal( new StringReader( ( String ) body ) );
} catch (Exception e) {
e.printStackTrace();
}
@@ -128,45 +113,13 @@
}
if (payload instanceof BatchExecutionCommand) {
- payload = cmdTranslator.transform((BatchExecutionCommand) payload);
+ payload = cmdTranslator.transform((BatchExecutionCommand) payload, unmarshaller);
}
- // context.getProperties().put("jaxb-context", jaxbCtx);
exchange.setProperty("drools-context", context);
+ exchange.setProperty("jaxb-context", jaxbContext);
return payload;
}
-
- /**
- * Only to share temporarily the model definition, this must be replaced with the JaxbContext inside the Exchange as a property
- * @return jaxb context
- */
- private JAXBContext createJaxbContext() {
- Options xjcOpts = new Options();
- xjcOpts.setSchemaLanguage( Language.XMLSCHEMA );
- ServiceManagerLocalClient serviceManager = new ServiceManagerLocalClient();
- KnowledgeBuilder kbuilder = serviceManager.getKnowledgeBuilderFactoryService().newKnowledgeBuilder();
- String[] classNames = null;
- try {
- classNames = KnowledgeBuilderHelper.addXsdModel( ResourceFactory.newClassPathResource("person.xsd", getClass()),
- kbuilder,
- xjcOpts,
- "xsd" );
- } catch (IOException e) {
- System.out.println("Errors while adding xsd model. " + kbuilder.getErrors());
- }
-
- KnowledgeBase kbase = serviceManager.getKnowledgeBaseFactoryService().newKnowledgeBase();
- kbase.addKnowledgePackages(kbuilder.getKnowledgePackages());
-
- JAXBContext jaxbContext = null;
- try {
- jaxbContext = KnowledgeBuilderHelper.newJAXBContext( classNames, kbase );
- } catch (JAXBException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return jaxbContext;
- }
-
+
}
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/CommandTranslator.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/CommandTranslator.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/CommandTranslator.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -23,14 +23,13 @@
* @author Wolfgang Laun
*/
public class CommandTranslator {
- private Unmarshaller unmarshaller;
private Map<Class<?>,CommandTransformer> class2trans;
/**
* Constructor
*
*/
- public CommandTranslator( Unmarshaller unmarshaller ){
+ public CommandTranslator(){
class2trans = new HashMap<Class<?>,CommandTransformer>();
class2trans.put( BatchExecutionCommand.class, new BatchExecutionTransformer() );
class2trans.put( InsertElementsCommand.class, new InsertElementsTransformer() );
@@ -39,7 +38,6 @@
class2trans.put( SetGlobalCommand.class, new SetGlobalTransformer() );
class2trans.put( SignalEventCommand.class, new SignalEventTransformer() );
class2trans.put( StartProcessCommand.class, new StartProcessTransformer() );
- this.unmarshaller = unmarshaller;
}
/**
@@ -52,16 +50,16 @@
* @return
* @return a list of <tt>Command<?></tt> objects
*/
- public GenericCommand<?> transform( BatchExecutionCommand batchExecution ){
+ public GenericCommand<?> transform( BatchExecutionCommand batchExecution, Unmarshaller unmarshaller ){
CommandTransformer ct = class2trans.get( batchExecution.getClass() );
- return ct.transform( this, batchExecution );
+ return ct.transform( this, batchExecution, unmarshaller);
}
CommandTransformer getCommandTransformer( Class<?> clazz ){
return class2trans.get( clazz );
}
- protected Object makeObject( Element element ){
+ protected Object makeObject( Element element, Unmarshaller unmarshaller ){
Object obj = null;
try {
obj = unmarshaller.unmarshal( element.getFirstChild() );
@@ -78,21 +76,21 @@
* Abstract base class for all command transformers.
*/
abstract class CommandTransformer {
- abstract GenericCommand<?> transform( CommandTranslator ct, Object o );
+ abstract GenericCommand<?> transform( CommandTranslator ct, Object o , Unmarshaller unmarshaller);
}
/**
* Class for transforming a BatchExecution command.
*/
class BatchExecutionTransformer extends CommandTransformer {
- public GenericCommand<?> transform( CommandTranslator cmdTrans, Object o ){
+ public GenericCommand<?> transform( CommandTranslator cmdTrans, Object o , Unmarshaller unmarshaller){
BatchExecutionCommand be = (BatchExecutionCommand)o;
List<GenericCommand<?>> xmlCmds = be.getCommands();
for( int i = 0; i < xmlCmds.size(); i++ ){
GenericCommand<?> cmd = xmlCmds.get( i );
CommandTransformer ct = cmdTrans.getCommandTransformer( cmd.getClass() );
if( ct != null ){
- xmlCmds.set( i, ct.transform( cmdTrans, cmd ) );
+ xmlCmds.set( i, ct.transform( cmdTrans, cmd, unmarshaller ) );
}
}
return be;
@@ -103,13 +101,13 @@
* Class for transforming an InsertElements command.
*/
class InsertElementsTransformer extends CommandTransformer {
- public GenericCommand<?> transform( CommandTranslator ct, Object o ){
+ public GenericCommand<?> transform( CommandTranslator ct, Object o, Unmarshaller unmarshaller ){
InsertElementsCommand ie = (InsertElementsCommand)o;
Iterable<?> ioList = ie.getObjects();
List<Object> coList = new ArrayList<Object>();
for( Object io: ioList ){
Element el = (Element)io;
- Object co = ct.makeObject( el );
+ Object co = ct.makeObject( el , unmarshaller);
coList.add( co );
}
ie.setObjects( coList );
@@ -121,10 +119,10 @@
* Class for transforming a InsertObject command.
*/
class InsertObjectTransformer extends CommandTransformer {
- public GenericCommand<?> transform( CommandTranslator ct, Object o ){
+ public GenericCommand<?> transform( CommandTranslator ct, Object o, Unmarshaller unmarshaller ){
InsertObjectCommand io = (InsertObjectCommand)o;
Element el = (Element)io.getObject();
- Object obj = ct.makeObject( el );
+ Object obj = ct.makeObject( el , unmarshaller);
io.setObject( obj );
return io;
}
@@ -134,12 +132,12 @@
* Class for transforming a Query command.
*/
class QueryTransformer extends CommandTransformer {
- public GenericCommand<?> transform( CommandTranslator ct, Object o ){
+ public GenericCommand<?> transform( CommandTranslator ct, Object o, Unmarshaller unmarshaller ){
QueryCommand q = (QueryCommand)o;
List<Object> argList = q.getArguments();
for( int i = 0; i < argList.size(); i++ ){
Element el = (Element)argList.get( i );
- Object ao = ct.makeObject( el );
+ Object ao = ct.makeObject( el , unmarshaller);
argList.add( i, ao );
}
return q;
@@ -150,10 +148,10 @@
* Class for transforming a SetGlobal command.
*/
class SetGlobalTransformer extends CommandTransformer {
- public GenericCommand<?> transform( CommandTranslator ct, Object o ){
+ public GenericCommand<?> transform( CommandTranslator ct, Object o, Unmarshaller unmarshaller ){
SetGlobalCommand sg = (SetGlobalCommand)o;
Element el = (Element)sg.getObject();
- Object obj = ct.makeObject( el );
+ Object obj = ct.makeObject( el , unmarshaller);
sg.setObject( obj );
return sg;
}
@@ -163,11 +161,11 @@
* Class for transforming a SignalEvent command.
*/
class SignalEventTransformer extends CommandTransformer {
- public GenericCommand<?> transform( CommandTranslator ct, Object o ){
+ public GenericCommand<?> transform( CommandTranslator ct, Object o, Unmarshaller unmarshaller ){
SignalEventCommand se = (SignalEventCommand)o;
Object ev = se.getEvent();
if( ev != null ){
- Object obj = ct.makeObject( (Element)ev );
+ Object obj = ct.makeObject( (Element)ev , unmarshaller);
se.setEvent( obj );
}
return se;
@@ -178,20 +176,20 @@
* Class for transforming a StartProcess command.
*/
class StartProcessTransformer extends CommandTransformer {
- public GenericCommand<?> transform( CommandTranslator ct, Object o ){
+ public GenericCommand<?> transform( CommandTranslator ct, Object o, Unmarshaller unmarshaller ){
StartProcessCommand sp = (StartProcessCommand)o;
// data items
List<Object> diList = sp.getData();
for( int i = 0; i < diList.size(); i++ ){
Element el = (Element)diList.get( i );
- Object obj = ct.makeObject( el );
+ Object obj = ct.makeObject( el , unmarshaller);
diList.add( i, obj );
}
// parameters
Map<String,Object> parMap = sp.getParameters();;
for( Map.Entry<String, Object> entry: parMap.entrySet() ){
Element el = (Element)entry.getValue();
- Object obj = ct.makeObject( el );
+ Object obj = ct.makeObject( el, unmarshaller );
entry.setValue( obj );
}
return sp;
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbFromXmlTransformer.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbFromXmlTransformer.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbFromXmlTransformer.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -5,71 +5,57 @@
import java.io.Reader;
import java.io.StringReader;
-import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.Unmarshaller;
import javax.xml.transform.Source;
import org.drools.io.Resource;
-import org.drools.command.runtime.BatchExecutionCommand;
import org.drools.runtime.pipeline.PipelineContext;
import org.drools.runtime.pipeline.Transformer;
-
import org.xml.sax.InputSource;
-public class JaxbFromXmlTransformer extends JaxbTransformer
+public class JaxbFromXmlTransformer extends BaseEmitter
implements
Transformer {
+ private Unmarshaller unmarshaller;
- private CommandTranslator cmdTrans;
-
- public JaxbFromXmlTransformer(JAXBContext jaxbCtx) {
- super( jaxbCtx );
+ public JaxbFromXmlTransformer(Unmarshaller unmarshaller) {
+ this.unmarshaller = unmarshaller;
}
- public void receive(Object object, PipelineContext context) {
- Unmarshaller unmarshaller;
- t!
ry {
- JAXBContext jaxbContext = getPrimaryContext();
- unmarshaller = jaxbContext.createUnmarshaller();
- } catch ( Exception e ) {
- handleException( this,
- object,
- e );
- return;
- }
-
- Object result = null;
- try {
- if ( object instanceof File ) {
- result = unmarshaller.unmarshal( (File) object );
- } else if ( object instanceof InputStream ) {
- result = unmarshaller.unmarshal( (InputStream) object );
- } else if ( object instanceof Reader ) {
- result = unmarshaller.unmarshal( (Reader) object );
- } else if ( object instanceof Source ) {
- result = unmarshaller.unmarshal( (Source) object );
- } else if ( object instanceof InputSource ) {
- result = unmarshaller.unmarshal( (InputSource) object );
- } else if ( object instanceof Resource ) {
- result = unmarshaller.unmarshal( (( Resource ) object).getReader() );
- } else if ( object instanceof!
String ) {
- result = unmarshaller.unmarshal( new Strin!
gReader(
( String ) object ) );
- } else {
- throw new IllegalArgumentException( "signal object must be instance of File, InputStream, Reader, Source, InputSource, Resource, String" );
- }
- } catch ( Exception e ) {
- handleException( this,
- object,
- e );
- }
-
- if ( result instanceof JAXBElement ) {
- result = ((JAXBElement<?>) result).getValue();
- }
-
- emit( result,
- context );
+ public void receive(Object object,
+ PipelineContext context) {
+ Object result = null;
+ try {
+ if ( object instanceof File ) {
+ result = this.unmarshaller.unmarshal( (File) object );
+ } else if ( object instanceof InputStream ) {
+ result = this.unmarshaller.unmarshal( (InputStream) object );
+ } else if ( object instanceof Reader ) {
+ result = this.unmarshaller.unmarshal( (Reader) object );
+ } else i!
f ( object instanceof Source ) {
+ result = this.unmarshaller.unmarshal( (Source) object );
+ } else if ( object instanceof InputSource ) {
+ result = this.unmarshaller.unmarshal( (InputSource) object );
+ } else if ( object instanceof Resource ) {
+ result = this.unmarshaller.unmarshal( (( Resource ) object).getReader() );
+ } else if ( object instanceof String ) {
+ result = this.unmarshaller.unmarshal( new StringReader( ( String ) object ) );
+ } else {
+ throw new IllegalArgumentException( "signal object must be instance of File, InputStream, Reader, Source, InputSource, Resource, String" );
+ }
+ } catch ( Exception e ) {
+ handleException( this,
+ object,
+ e );
+ }
+
+ if ( result instanceof JAXBElement ) {
+ result = ((JAXBElement)!
object).getValue();
+ }
+
+ emit( resul!
t,
+
context );
}
}
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbToXmlTransformer.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbToXmlTransformer.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbToXmlTransformer.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -2,51 +2,37 @@
import java.io.StringWriter;
-import javax.xml.bind.JAXBContext;
import javax.xml.bind.Marshaller;
-import org.drools.result.ExecutionResults;
-import org.drools.process.result.ExecutionResultsType;
import org.drools.runtime.pipeline.PipelineContext;
import org.drools.runtime.pipeline.Transformer;
-import org.drools.runtime.pipeline.impl.ResultTranslator;
+public class JaxbToXmlTransformer extends BaseEmitter
+ implements
+ Transformer {
+ private Marshaller marshaller;
-public class JaxbToXmlTransformer extends JaxbTransformer implements Transformer {
+ public JaxbToXmlTransformer(Marshaller marshaller) {
+ this.marshaller = marshaller;
+ }
- ResultTranslator resTrans;
+ public void receive(Object object,
+ PipelineContext context) {
+ Object result = null;
+ try {
+ StringWriter stringWriter = new StringWriter();
+
+ this.marshaller.marshal( object, stringWriter );
- public JaxbToXmlTransformer( JAXBContext jaxbCtx ) {
- super( jaxbCtx );
- }
+ result = stringWriter.getBuffer().toString();
+ } catch ( Exception e ) {
+ handleException( this,
+ object,
+ e );
+ }
+
+ emit( result,
+ context );
+ }
- public void receive(Object object, PipelineContext context) {
-
- Object result = null;
- JAXBContext jaxbCtxt = getPrimaryContext();
- StringWriter stringWriter = new StringWriter();
- try {
- Marshaller marshaller = jaxbCtxt.createMarshaller();
- marshaller.setProperty( Marshaller.JAXB_FORMATTED_OUTPUT, true );
-
- if( object instanceof ExecutionResults ){
- if( resTrans == null ){
- resTrans = new ResultTranslator( this );
- }
- ExecutionResultsType execRes = resTrans.transform( (ExecutionResults)object );
- marshaller.marshal( execRes, stringWriter );
- } else {
- marshaller.marshal( object, stringWriter );
- }
- } catch ( Exception e ) {
- handleException( this,
- object,
- e );
- }
- result = stringWriter.getBuffer().toString();
-
- emit( result,
- context );
- }
-
}
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbTransformerProviderImpl.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbTransformerProviderImpl.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbTransformerProviderImpl.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -1,6 +1,8 @@
+/**
+ *
+ */
package org.drools.runtime.pipeline.impl;
-import javax.xml.bind.JAXBContext;
import javax.xml.bind.Marshaller;
import javax.xml.bind.Unmarshaller;
@@ -8,24 +10,11 @@
import org.drools.runtime.pipeline.Transformer;
public class JaxbTransformerProviderImpl implements JaxbTransformerProvider {
- public Transformer newJaxbFromXmlTransformer( JAXBContext jaxbCtx ) {
- return new JaxbFromXmlTransformer( jaxbCtx );
+ public Transformer newJaxbFromXmlTransformer(Unmarshaller unmarshaller) {
+ return new JaxbFromXmlTransformer( unmarshaller );
}
- public Transformer newJaxbFromXmlCommandTransformer( JAXBContext jaxbCtx ) {
- JaxbFromXmlTransformer trans = new JaxbFromXmlTransformer( jaxbCtx );
- trans.addContextForCommands();
- return trans;
- }
-
- public Transformer newJaxbToXmlTransformer( JAXBContext jaxbCtx ) {
- return new JaxbToXmlTransformer( jaxbCtx );
+ public Transformer newJaxbToXmlTransformer(Marshaller marshaller) {
+ return new JaxbToXmlTransformer( marshaller );
}
-
- public Transformer newJaxbToXmlResultTransformer( JAXBContext jaxbCtx ) {
- JaxbToXmlTransformer trans = new JaxbToXmlTransformer( jaxbCtx );
- trans.addContextForResults();
- return trans;
- }
-
}
\ No newline at end of file
Deleted: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/ResultTranslator.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/ResultTranslator.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/ResultTranslator.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -1,254 +0,0 @@
-package org.drools.runtime.pipeline.impl;
-
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.xml.bind.JAXBContext;
-import javax.xml.bind.JAXBException;
-import javax.xml.bind.Marshaller;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-
-import org.drools.process.result.ExecutionResultsType;
-import org.drools.process.result.FactHandleListType;
-import org.drools.process.result.FactObjectListType;
-import org.drools.process.result.GlobalType;
-import org.drools.process.result.InsertResultsType;
-import org.drools.process.result.ObjectFactory;
-import org.drools.process.result.QueryFieldType;
-import org.drools.process.result.QueryResultsType;
-import org.drools.process.result.QueryRowType;
-import org.drools.result.ExecutionResults;
-import org.drools.result.GenericResult;
-import org.drools.result.GetGlobalResult;
-import org.drools.result.InsertElementsResult;
-import org.drools.result.InsertObjectResult;
-import org.drools.result.QueryResult;
-import org.drools.runtime.rule.FactHandle;
-import org.drools.runtime.rule.QueryResults;
-import org.drools.runtime.rule.QueryResultsRow;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class ResultTranslator {
- private JaxbTransformer jaxbTransformer;
- private Map<Class<?>,ResultTransformer> class2trans;
- private ObjectFactory objFact;
- private ExecutionResultsType execRes;
-
- /**
- * Constructor.
- *
- * @param jaxbTransformer the <tt>JaxbTransformer</tt>
- */
- public ResultTranslator( JaxbTransformer jaxbTransformer ){
- this.jaxbTransformer = jaxbTransformer;
- class2trans = new HashMap<Class<?>,ResultTransformer>();
- class2trans.put( InsertElementsResult.class, new InsertElementsResultTransformer() );
- class2trans.put( InsertObjectResult.class, new InsertObjectResultTransformer() );
- class2trans.put( GetGlobalResult.class, new GetGlobalResultTransformer() );
- /** @TODO: LATER
- class2trans.put( GetObjectsResult.class, new GetObjectsResultTransformer() );
- class2trans.put( SetGlobalResult.class, new SetGlobalResultTransformer() );
- */
- class2trans.put( QueryResult.class, new QueryResultTransformer() );
-
- objFact = new ObjectFactory();
- }
-
- ObjectFactory getObjFact(){
- return objFact;
- }
-
- void addResult( Object result ){
- execRes.getQueryResultsOrInsertResultsOrGlobalValue().add( result );
- }
-
- ResultTransformer getResultTransformer( Class<?> clazz ){
- return class2trans.get( clazz );
- }
-
-
- Element makeElement( Object obj ) throws JAXBException, ParserConfigurationException {
- DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
- dbf.setNamespaceAware( true );
- DocumentBuilder db = dbf.newDocumentBuilder();
- Document doc = db.newDocument();
- JAXBContext ctxt = jaxbTransformer.getContext();
- Marshaller m = ctxt.createMarshaller();
- m.marshal( obj, doc );
- Element el = doc.getDocumentElement();
-
- Node xsi = doc.createAttributeNS( "http://www.w3.org/2000/xmlns/", "xmlns:xsi" );
- xsi.setTextContent( "http://www.w3.org/2001/XMLSchema-instance" );
- el.getAttributes().setNamedItem( xsi );
-
- Node type = doc.createAttributeNS( "http://www.w3.org/2001/XMLSchema-instance", "xsi:type" );
- type.setTextContent( obj.getClass().getName() );
- el.getAttributes().setNamedItem( type );
-
- return el;
- }
-
- public ExecutionResultsType transform( ExecutionResults results ){
- execRes = new ExecutionResultsType();
- for( GenericResult aResult: results.getResults() ){
- ResultTransformer resultTransformer = this.getResultTransformer( aResult.getClass() );
- if( resultTransformer != null ){
- resultTransformer.transform( this, aResult );
- }
- }
- return execRes;
- }
-
-}
-
-/**
- * Abstract base class for all result transformers.
- */
-abstract class ResultTransformer {
- abstract void transform( ResultTranslator rt,
- GenericResult result );
-}
-
-
-class InsertElementsResultTransformer extends ResultTransformer {
- void transform( ResultTranslator rt, GenericResult result ){
- InsertElementsResult insertResult = (InsertElementsResult)result;
- String ident = insertResult.getIdentifier();
-
- ObjectFactory objFact = rt.getObjFact();
- InsertResultsType insResultXml = objFact.createInsertResultsType();
- FactHandleListType fhList = objFact.createFactHandleListType();
- insResultXml.setFactHandles( fhList );
- FactObjectListType foList = null;
- insResultXml.setIdentifier( ident );
-
- List<FactHandle> fhResList = insertResult.getHandles();
- List<Object> obResList = insertResult.getObjects();
-
- if( obResList != null ){
- foList = objFact.createFactObjectListType();
- insResultXml.setFactObjects( foList );
- }
-
- try {
- for( int i = 0; i < fhResList.size(); i++ ){
- fhList.getFactHandle().add( fhResList.get( i ).toExternalForm() );
- if( obResList != null ){
- Object factObj = obResList.get( i );
- foList.getAny().add( rt.makeElement( factObj ) );
- }
- }
- rt.addResult( insResultXml );
- } catch (JAXBException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (ParserConfigurationException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
-}
-
-class InsertObjectResultTransformer extends ResultTransformer {
- void transform( ResultTranslator rt, GenericResult result ){
- InsertObjectResult insertResult = (InsertObjectResult)result;
- String ident = insertResult.getIdentifier();
-
- ObjectFactory objFact = rt.getObjFact();
- InsertResultsType insResultXml = objFact.createInsertResultsType();
- FactHandleListType fhList = objFact.createFactHandleListType();
- insResultXml.setFactHandles( fhList );
- FactObjectListType foList = null;
- insResultXml.setIdentifier( ident );
-
- FactHandle handle = (FactHandle)insertResult.getFactHandle();
- Object object = insertResult.getValue();
-
- if( object != null ){
- foList = objFact.createFactObjectListType();
- insResultXml.setFactObjects( foList );
- }
-
- try {
- fhList.getFactHandle().add( handle.toExternalForm() );
-
- if( object != null ){
- foList.getAny().add( rt.makeElement( object ) );
- }
-
- rt.addResult( insResultXml );
- } catch (JAXBException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (ParserConfigurationException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
-}
-
-
-class GetGlobalResultTransformer extends ResultTransformer {
- void transform( ResultTranslator rt, GenericResult result ){
-
- GetGlobalResult getGlobalResult = (GetGlobalResult)result;
- String identifier = getGlobalResult.getIdentifier();
- try {
- Object globalObject = getGlobalResult.getValue();
- Element el = rt.makeElement( globalObject );
- ObjectFactory objFact = rt.getObjFact();
- GlobalType getGlobalXml = objFact.createGlobalType();
- getGlobalXml.setIdentifier( identifier );
- getGlobalXml.setAny( el );
- rt.addResult( getGlobalXml );
- } catch (JAXBException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (ParserConfigurationException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
-}
-
-class QueryResultTransformer extends ResultTransformer {
- void transform( ResultTranslator rt, GenericResult result ){
- QueryResult queryResult = (QueryResult)result;
-
- String identifier = queryResult.getIdentifier();
- QueryResults qr = queryResult.getResults();
- int size = qr.size();
-
- ObjectFactory objFact = rt.getObjFact();
- QueryResultsType queryResXml = objFact.createQueryResultsType();
- queryResXml.setIdentifier( identifier );
- queryResXml.setSize( size );
-
- String[] quids = qr.getIdentifiers();
- for( QueryResultsRow row: qr ){
- QueryRowType queryRowXml = objFact.createQueryRowType();
- queryResXml.getRow().add( queryRowXml );
- for( String quid: quids ){
- QueryFieldType queryFieldXml = objFact.createQueryFieldType();
- queryRowXml.getField().add( queryFieldXml );
- queryFieldXml.setName( quid );
-
- try {
- Element el = rt.makeElement( row.get( quid ) );
- queryFieldXml.setAny( el );
- } catch( Throwable t ){
- queryFieldXml.setValue( row.get( quid ).toString() );
- }
- }
- }
- rt.addResult( queryResXml );
- }
-}
-
-
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbFactTest.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbFactTest.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbFactTest.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -64,8 +64,7 @@
JAXBContext jaxbCtx = KnowledgeBuilderHelper.newJAXBContext( classNames,
kbase );
Unmarshaller unmarshaller = jaxbCtx.createUnmarshaller();
-
- Transformer transformer = PipelineFactory.newJaxbFromXmlTransformer( jaxbCtx );
+ Transformer transformer = PipelineFactory.newJaxbFromXmlTransformer( unmarshaller );
transformer.setReceiver( insertStage );
Pipeline pipeline = PipelineFactory.newStatefulKnowledgeSessionPipeline( ksession );
@@ -88,7 +87,7 @@
//transformer = PipelineFactory.newXStreamToXmlTransformer( xstream );
Marshaller marshaller = jaxbCtx.createMarshaller();
- transformer = PipelineFactory.newJaxbToXmlTransformer( jaxbCtx );
+ transformer = PipelineFactory.newJaxbToXmlTransformer( marshaller );
transformer.setReceiver( assignAsResult );
KnowledgeRuntimeCommand getObject = PipelineFactory.newStatefulKnowledgeSessionGetObject();
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbGlobalTest.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbGlobalTest.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbGlobalTest.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -63,7 +63,8 @@
JAXBContext jaxbCtx = KnowledgeBuilderHelper.newJAXBContext( classNames,
kbase );
- Transformer transformer = PipelineFactory.newJaxbFromXmlTransformer( jaxbCtx );
+ Unmarshaller unmarshaller = jaxbCtx.createUnmarshaller();
+ Transformer transformer = PipelineFactory.newJaxbFromXmlTransformer( unmarshaller );
transformer.setReceiver(setGlobalStage );
Pipeline pipeline = PipelineFactory.newStatefulKnowledgeSessionPipeline( ksession );
@@ -82,7 +83,8 @@
assignAsResult.setReceiver( executeResult );
//transformer = PipelineFactory.newXStreamToXmlTransformer( xstream );
- transformer = PipelineFactory.newJaxbToXmlTransformer( jaxbCtx );
+ Marshaller marshaller = jaxbCtx.createMarshaller();
+ transformer = PipelineFactory.newJaxbToXmlTransformer( marshaller );
transformer.setReceiver( assignAsResult );
KnowledgeRuntimeCommand getGlobalStage = PipelineFactory.newStatefulKnowledgeSessionGetGlobal( );
Modified: labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbTest.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbTest.java 2010-01-28 17:58:59 UTC (rev 31289)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/test/java/org/drools/runtime/pipeline/impl/JaxbTest.java 2010-01-28 20:30:00 UTC (rev 31290)
@@ -106,7 +106,8 @@
JAXBContext jaxbCtx = KnowledgeBuilderHelper.newJAXBContext( classNames,
kbase );
- Transformer transformer = PipelineFactory.newJaxbFromXmlTransformer( jaxbCtx );
+ Unmarshaller unmarshaller = jaxbCtx.createUnmarshaller();
+ Transformer transformer = PipelineFactory.newJaxbFromXmlTransformer( unmarshaller );
transformer.setReceiver( insertStage );
Pipeline pipeline = PipelineFactory.newStatefulKnowledgeSessionPipeline( ksession );
@@ -171,7 +172,8 @@
JAXBContext jaxbCtx = KnowledgeBuilderHelper.newJAXBContext( classNames,
kbase );
- Transformer transformer = PipelineFactory.newJaxbFromXmlTransformer( jaxbCtx );
+ Unmarshaller unmarshaller = jaxbCtx.createUnmarshaller();
+ Transformer transformer = PipelineFactory.newJaxbFromXmlTransformer( unmarshaller );
transformer.setReceiver( expression );
Pipeline pipeline = PipelineFactory.newStatefulKnowledgeSessionPipeline( ksession );
More information about the jboss-svn-commits
mailing list