[jboss-svn-commits] JBL Code SVN: r31534 - labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Feb 9 15:21:34 EST 2010
Author: baunax
Date: 2010-02-09 15:21:34 -0500 (Tue, 09 Feb 2010)
New Revision: 31534
Modified:
labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/CommandTranslator.java
Log:
changed internal transformers to avoid ClassCastException
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-02-09 20:20:26 UTC (rev 31533)
+++ labs/jbossrules/branches/camel_jaxb_marshaller2-lucaz/drools-pipeline/drools-transformer-jaxb/src/main/java/org/drools/runtime/pipeline/impl/CommandTranslator.java 2010-02-09 20:21:34 UTC (rev 31534)
@@ -3,6 +3,7 @@
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
+import java.util.ListIterator;
import java.util.Map;
import javax.xml.bind.JAXBException;
@@ -89,11 +90,11 @@
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);
+ for (ListIterator<GenericCommand<?>> i = xmlCmds.listIterator(); i.hasNext();) {
+ GenericCommand<?> cmd = i.next();
CommandTransformer ct = cmdTrans.getCommandTransformer(cmd.getClass());
if (ct != null) {
- xmlCmds.set(i, ct.transform(cmdTrans, cmd, unmarshaller));
+ i.set(ct.transform(cmdTrans, cmd, unmarshaller));
}
}
return be;
@@ -125,9 +126,12 @@
class InsertObjectTransformer extends CommandTransformer {
public GenericCommand<?> transform(CommandTranslator ct, Object o, Unmarshaller unmarshaller) {
InsertObjectCommand io = (InsertObjectCommand)o;
- Element el = (Element)io.getObject();
- Object obj = ct.makeObject(el , unmarshaller);
- io.setObject(obj);
+ Object object = io.getObject();
+ if (object instanceof Element) {
+ Element el = (Element)object;
+ Object obj = ct.makeObject(el , unmarshaller);
+ io.setObject(obj);
+ }
return io;
}
}
@@ -180,9 +184,12 @@
class SetGlobalTransformer extends CommandTransformer {
public GenericCommand<?> transform(CommandTranslator ct, Object o, Unmarshaller unmarshaller) {
SetGlobalCommand sg = (SetGlobalCommand)o;
- Element el = (Element)sg.getObject();
- Object obj = ct.makeObject(el , unmarshaller);
- sg.setObject(obj);
+ Object object = sg.getObject();
+ if (object instanceof Element) {
+ Element el = (Element)object;
+ Object obj = ct.makeObject(el , unmarshaller);
+ sg.setObject(obj);
+ }
return sg;
}
}
More information about the jboss-svn-commits
mailing list