[jboss-svn-commits] JBL Code SVN: r31160 - in labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline: drools-camel/src/test/java/org/drools/camel/component and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Jan 20 10:20:23 EST 2010
Author: lucazamador
Date: 2010-01-20 10:20:23 -0500 (Wed, 20 Jan 2010)
New Revision: 31160
Modified:
labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-camel/src/main/java/org/drools/camel/component/DroolsJaxbDataFormat.java
labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-camel/src/test/java/org/drools/camel/component/CamelEndpointWithJaxbTest.java
labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbFromXmlVsmTransformer.java
Log:
jaxb command translator added to vsm transformer
Modified: labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-camel/src/main/java/org/drools/camel/component/DroolsJaxbDataFormat.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-camel/src/main/java/org/drools/camel/component/DroolsJaxbDataFormat.java 2010-01-20 14:37:36 UTC (rev 31159)
+++ labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-camel/src/main/java/org/drools/camel/component/DroolsJaxbDataFormat.java 2010-01-20 15:20:23 UTC (rev 31160)
@@ -103,13 +103,11 @@
ClassLoader cl = null;
if (executor instanceof StatefulKnowledgeSessionImpl) {
cl = ((ReteooRuleBase) ((StatefulKnowledgeSessionImpl) executor).getRuleBase()).getRootClassLoader();
-// xstream.setClassLoader(cl);
} else if (executor instanceof StatelessKnowledgeSessionImpl) {
cl = ((ReteooRuleBase) ((StatelessKnowledgeSessionImpl) executor).getRuleBase()).getRootClassLoader();
} else {
throw new IllegalArgumentException("Unable to set ClassLoader on " + executor);
}
-// xstream.setClassLoader(cl);
vsmContext.setClassLoader(cl);
Object payload = null;
// this.unmarshaller.unmarshal(new DomReader(d));
Modified: labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-camel/src/test/java/org/drools/camel/component/CamelEndpointWithJaxbTest.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-camel/src/test/java/org/drools/camel/component/CamelEndpointWithJaxbTest.java 2010-01-20 14:37:36 UTC (rev 31159)
+++ labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-camel/src/test/java/org/drools/camel/component/CamelEndpointWithJaxbTest.java 2010-01-20 15:20:23 UTC (rev 31160)
@@ -17,8 +17,6 @@
import org.drools.runtime.ExecutionResults;
import org.drools.runtime.StatefulKnowledgeSession;
import org.drools.runtime.help.BatchExecutionHelper;
-import org.drools.runtime.pipeline.PipelineFactory;
-import org.drools.runtime.pipeline.Transformer;
import org.drools.runtime.rule.FactHandle;
import com.sun.tools.xjc.Language;
Modified: labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbFromXmlVsmTransformer.java
===================================================================
--- labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbFromXmlVsmTransformer.java 2010-01-20 14:37:36 UTC (rev 31159)
+++ labs/jbossrules/branches/camel_jaxb_marshaller-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/JaxbFromXmlVsmTransformer.java 2010-01-20 15:20:23 UTC (rev 31160)
@@ -6,10 +6,12 @@
import java.io.StringReader;
import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBElement;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
import javax.xml.transform.Source;
+import org.drools.command.runtime.BatchExecutionCommand;
import org.drools.impl.StatefulKnowledgeSessionImpl;
import org.drools.impl.StatelessKnowledgeSessionImpl;
import org.drools.io.Resource;
@@ -26,13 +28,14 @@
* @author Lucas Amador
*
*/
-public class JaxbFromXmlVsmTransformer extends BaseEmitter implements Transformer {
+public class JaxbFromXmlVsmTransformer extends JaxbTransformer implements Transformer {
+ private CommandTranslator cmdTranslator;
private Unmarshaller unmarshaller;
- private PipelineContext context;
private Object payload;
public JaxbFromXmlVsmTransformer(JAXBContext jaxbCtx) {
+ super(jaxbCtx);
try {
this.unmarshaller = jaxbCtx.createUnmarshaller();
} catch (JAXBException e) {
@@ -84,27 +87,22 @@
} else {
throw new IllegalArgumentException( "signal object must be instance of File, InputStream, Reader, Source, InputSource, Resource, String" );
}
- this.context = context;
} catch (Exception e) {
handleException(this, object, e);
}
- return payload;
- }
+
+ if ( payload instanceof JAXBElement<?> ) {
+ payload = ((JAXBElement<?>) payload).getValue();
+ }
- public Object getPayload() {
+ if( payload instanceof BatchExecutionCommand ){
+ if( cmdTranslator == null ){
+ cmdTranslator = new CommandTranslator( this );
+ }
+ cmdTranslator.transform( (BatchExecutionCommand)payload );
+ }
+
return payload;
}
- public void setPayload(Object payload) {
- this.payload = payload;
- }
-
- public PipelineContext getContext() {
- return context;
- }
-
- public void setContext(PipelineContext context) {
- this.context = context;
- }
-
}
More information about the jboss-svn-commits
mailing list