[jboss-svn-commits] JBL Code SVN: r33994 - labs/jbossrules/trunk/drools-pipeline/src/main/java/org/drools/runtime/pipeline/impl.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sun Jul 18 01:02:12 EDT 2010


Author: mark.proctor at jboss.com
Date: 2010-07-18 01:02:12 -0400 (Sun, 18 Jul 2010)
New Revision: 33994

Removed:
   labs/jbossrules/trunk/drools-pipeline/src/main/java/org/drools/runtime/pipeline/impl/CommandTranslator.java
   labs/jbossrules/trunk/drools-pipeline/src/main/java/org/drools/runtime/pipeline/impl/ResultTranslator.java
Log:
JBRULES-2347 Camel
-migrating drools-server to camel

Deleted: labs/jbossrules/trunk/drools-pipeline/src/main/java/org/drools/runtime/pipeline/impl/CommandTranslator.java
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/src/main/java/org/drools/runtime/pipeline/impl/CommandTranslator.java	2010-07-18 03:31:12 UTC (rev 33993)
+++ labs/jbossrules/trunk/drools-pipeline/src/main/java/org/drools/runtime/pipeline/impl/CommandTranslator.java	2010-07-18 05:02:12 UTC (rev 33994)
@@ -1,234 +0,0 @@
-package org.drools.runtime.pipeline.impl;
-
-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;
-import javax.xml.bind.Unmarshaller;
-
-import org.drools.command.Setter;
-import org.drools.command.impl.GenericCommand;
-import org.drools.command.runtime.BatchExecutionCommand;
-import org.drools.command.runtime.SetGlobalCommand;
-import org.drools.command.runtime.process.SignalEventCommand;
-import org.drools.command.runtime.process.StartProcessCommand;
-import org.drools.command.runtime.rule.FireAllRulesCommand;
-import org.drools.command.runtime.rule.InsertElementsCommand;
-import org.drools.command.runtime.rule.InsertObjectCommand;
-import org.drools.command.runtime.rule.ModifyCommand;
-import org.drools.command.runtime.rule.QueryCommand;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * 
- * @author Wolfgang Laun
- */
-public class CommandTranslator {
-	private Map<Class<?>, CommandTransformer> class2trans;
-
-	public CommandTranslator(){
-		class2trans = new HashMap<Class<?>, CommandTransformer>();
-		class2trans.put(BatchExecutionCommand.class,   new BatchExecutionTransformer());
-		class2trans.put(InsertElementsCommand.class,   new InsertElementsTransformer());
-		class2trans.put(InsertObjectCommand.class,     new InsertObjectTransformer());
-		class2trans.put(ModifyCommand.class,     	   new ModifyObjectTransformer());
-		class2trans.put(QueryCommand.class,            new QueryTransformer());
-		class2trans.put(SetGlobalCommand.class,        new SetGlobalTransformer());
-		class2trans.put(SignalEventCommand.class,      new SignalEventTransformer());
-		class2trans.put(StartProcessCommand.class,     new StartProcessTransformer());
-		class2trans.put(FireAllRulesCommand.class,     new FireAllRulesTransformer());
-	}
-
-	/**
-	 * Transforms a list of XML elements representing Drools command objects
-	 * to a list of <tt>Command&lt;?&gt;</tt> objects. Application objects
-	 * are unmarshalled, using an <tt>Unmarshaller</tt> object derived from
-	 * the object's class.
-	 * 
-	 * @param xmlCmds the list of XML elements representing Drools command objects
-	 * @return 
-	 * @return a list of <tt>Command&lt;?&gt;</tt> objects
-	 */
-	public GenericCommand<?> transform(BatchExecutionCommand batchExecution, Unmarshaller unmarshaller) {
-		CommandTransformer commandTransformer = class2trans.get(batchExecution.getClass());
-		return commandTransformer.transform(this, batchExecution, unmarshaller);
-	}
-
-	protected CommandTransformer getCommandTransformer(Class<?> clazz) {
-		return class2trans.get(clazz);
-	}
-
-	protected Object makeObject(Node node, Unmarshaller unmarshaller) {        
-		Object obj = null;
-		try {
-			obj = unmarshaller.unmarshal(node);
-		} catch (JAXBException e) {
-			// TODO: remove this
-			e.printStackTrace();
-			throw new RuntimeException(e);
-		}
-		return obj;
-	}
-}
-
-
-/**
- * Abstract base class for all command transformers.
- */
-abstract class CommandTransformer {
-	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 , Unmarshaller unmarshaller) {
-		BatchExecutionCommand be = (BatchExecutionCommand)o;
-		List<GenericCommand<?>> xmlCmds = be.getCommands();
-		for (ListIterator<GenericCommand<?>> i = xmlCmds.listIterator(); i.hasNext();) {
-			GenericCommand<?> cmd = i.next();
-			CommandTransformer ct = cmdTrans.getCommandTransformer(cmd.getClass());
-			if (ct != null) {
-				i.set(ct.transform(cmdTrans, cmd, unmarshaller));
-			}
-		}
-		return be;
-	}
-}
-
-/**
- * Class for transforming an InsertElements command.
- */
-class InsertElementsTransformer extends CommandTransformer {
-	public GenericCommand<?> transform(CommandTranslator ct, Object o, Unmarshaller unmarshaller) {
-		InsertElementsCommand insertElementsCmd = (InsertElementsCommand)o;
-		List<Object> objectsList = new ArrayList<Object>(insertElementsCmd.getObjects().size());
-		
-		for (Object obj : insertElementsCmd.getObjects()) {
-			if (obj instanceof Node) {
-				objectsList.add(ct.makeObject((Node) obj, unmarshaller));
-			} else {
-				objectsList.add(obj);
-			}
-		}
-
-		insertElementsCmd.setObjects(objectsList);
-		return insertElementsCmd;
-	}
-}
-
-/**
- * Class for transforming a InsertObject command.
- */
-class InsertObjectTransformer extends CommandTransformer {
-	public GenericCommand<?> transform(CommandTranslator ct, Object o, Unmarshaller unmarshaller) {
-		InsertObjectCommand io = (InsertObjectCommand)o;
-		Object object = io.getObject();
-		if (object instanceof Element) {
-			Element el = (Element)object;
-			Object obj = ct.makeObject(el , unmarshaller);
-			io.setObject(obj);
-		}
-		return io;
-	}
-}
-
-/**
- * Class for transforming a ModifyObject command.
- */
-class ModifyObjectTransformer extends CommandTransformer {
-	public GenericCommand<?> transform(CommandTranslator ct, Object o, Unmarshaller unmarshaller) {
-		ModifyCommand mo = (ModifyCommand)o;
-		List<?> setters = mo.getSetters();
-		List<Setter> convertedSetters = new ArrayList<Setter>();
-		for (Object node : setters) {
-			Setter setter;
-			if (node instanceof Element) {
-				setter = (Setter) ct.makeObject((Element)node, unmarshaller);
-			}
-			else {
-				setter = (Setter) node;
-			}
-			convertedSetters.add(setter);
-		}
-		mo.setSetters(convertedSetters);
-		return mo;
-	}
-}
-
-/**
- * Class for transforming a FireAllRules command.
- */
-class FireAllRulesTransformer extends CommandTransformer {
-	public GenericCommand<?> transform(CommandTranslator ct, Object o, Unmarshaller unmarshaller) {
-		return (FireAllRulesCommand)o;
-	}
-}
-
-/**
- * Class for transforming a Query command.
- */
-class QueryTransformer extends CommandTransformer {
-	public GenericCommand<?> transform(CommandTranslator ct, Object o, Unmarshaller unmarshaller) {
-		QueryCommand q = (QueryCommand)o;
-		for (ListIterator<Object> i = q.getArguments().listIterator(); i.hasNext();) {
-			Object object = i.next();
-			if (object instanceof Element) {
-				i.set(ct.makeObject((Element) object, unmarshaller));
-			}
-		}
-		return q;
-	}
-}
-
-/**
- * Class for transforming a SetGlobal command.
- */
-class SetGlobalTransformer extends CommandTransformer {
-	public GenericCommand<?> transform(CommandTranslator ct, Object o, Unmarshaller unmarshaller) {
-		SetGlobalCommand sg = (SetGlobalCommand)o;
-		Object object = sg.getObject();
-		if (object instanceof Element) {
-			Element el = (Element)object;
-			Object obj = ct.makeObject(el , unmarshaller);
-			sg.setObject(obj);
-		}
-		return sg;
-	}
-}
-
-/**
- * Class for transforming a SignalEvent command.
- */
-class SignalEventTransformer extends CommandTransformer {
-	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 , unmarshaller);
-			se.setEvent(obj);
-		}
-		return se;
-	}
-}
-
-/**
- * Class for transforming a StartProcess command.
- */
-class StartProcessTransformer extends CommandTransformer {
-	public GenericCommand<?> transform( CommandTranslator ct, Object o, Unmarshaller unmarshaller ) {
-		StartProcessCommand sp = (StartProcessCommand)o;
-		for (Map.Entry<String, Object> entry: sp.getParameters().entrySet()) {
-			Object obj = entry.getValue();
-			if (obj instanceof Element) {
-				entry.setValue(ct.makeObject((Element) obj, unmarshaller));
-			}
-		}
-		return sp;
-	}
-}

Deleted: labs/jbossrules/trunk/drools-pipeline/src/main/java/org/drools/runtime/pipeline/impl/ResultTranslator.java
===================================================================
--- labs/jbossrules/trunk/drools-pipeline/src/main/java/org/drools/runtime/pipeline/impl/ResultTranslator.java	2010-07-18 03:31:12 UTC (rev 33993)
+++ labs/jbossrules/trunk/drools-pipeline/src/main/java/org/drools/runtime/pipeline/impl/ResultTranslator.java	2010-07-18 05:02:12 UTC (rev 33994)
@@ -1,96 +0,0 @@
-package org.drools.runtime.pipeline.impl;
-
-import java.io.StringWriter;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.xml.bind.JAXBException;
-import javax.xml.bind.Marshaller;
-import javax.xml.transform.TransformerException;
-
-import org.drools.FactHandle;
-import org.drools.base.ClassObjectType;
-import org.drools.base.DroolsQuery;
-import org.drools.common.DisconnectedFactHandle;
-import org.drools.rule.Declaration;
-import org.drools.runtime.impl.ExecutionResultImpl;
-import org.drools.runtime.rule.QueryResultsRow;
-import org.drools.runtime.rule.impl.FlatQueryResults;
-import org.drools.runtime.rule.impl.NativeQueryResults;
-import org.drools.spi.ObjectType;
-import org.drools.xml.jaxb.util.JaxbListWrapper;
-
-public class ResultTranslator {
-
-	private Object convert(Object obj) {
-		if (obj instanceof FactHandle && !(obj instanceof DisconnectedFactHandle)) {
-			return new DisconnectedFactHandle(((FactHandle) obj).toExternalForm());
-		}
-		
-		if (obj instanceof NativeQueryResults) {
-			NativeQueryResults nativeQueryResults = (NativeQueryResults) obj;
-            List<Declaration> declrs = new ArrayList<Declaration>();
-            HashMap<String, Integer> identifiers = new HashMap<String, Integer>(  );
-            
-            for ( String identifier : nativeQueryResults.getIdentifiers() ) {
-            	// we don't want to marshall the query parameters
-            	Declaration declr = nativeQueryResults.getDeclarations().get( identifier );
-            	ObjectType objectType = declr.getPattern().getObjectType();
-            	if ( objectType instanceof ClassObjectType &&
-            		((ClassObjectType) objectType).getClassType() == DroolsQuery.class ) {
-            			continue;
-            	}
-            	declrs.add(declr);
-            	identifiers.put(identifier, declrs.size() - 1);
-            }
-            
-            ArrayList<ArrayList<Object>> results = new ArrayList<ArrayList<Object>>( nativeQueryResults.size() );
-            ArrayList<ArrayList<org.drools.runtime.rule.FactHandle>> factHandles = new ArrayList<ArrayList<org.drools.runtime.rule.FactHandle>> ( nativeQueryResults.size() );
-            for (QueryResultsRow row : nativeQueryResults) {
-            	ArrayList<Object> objectList = new ArrayList<Object>();
-                ArrayList<org.drools.runtime.rule.FactHandle> factHandleList = new ArrayList<org.drools.runtime.rule.FactHandle>();
-                for (int i = 0; i < declrs.size(); i++) {
-                	objectList.add(convert(row.get(declrs.get(i).getIdentifier())));
-                	factHandleList.add(new DisconnectedFactHandle(row.getFactHandle(declrs.get(i).getIdentifier()).toExternalForm()));
-                }                
-            	factHandles.add(factHandleList);
-                results.add(objectList);
-            }
-
-            return new FlatQueryResults(identifiers, results, factHandles);
-		}
-		
-		Class<? extends Object> vClass = obj.getClass();
-		if (List.class.isAssignableFrom(vClass) && !JaxbListWrapper.class.equals(vClass)) {
-			JaxbListWrapper<Object> wrapper = new JaxbListWrapper<Object>(((List<?>) obj).size());
-			for (Object item : ((List<?>) obj)) {
-				wrapper.add(convert(item));
-			}
-			return wrapper;
-		}
-		return obj;
-	}
-	
-	public String transform( ExecutionResultImpl executionResult, Marshaller marshaller ) throws JAXBException, TransformerException{
-
-		//TODO {bauna} remove this try
-		try {
-			StringWriter writer = new StringWriter();
-			for (Map.Entry<String, Object> entry : executionResult.getFactHandles().entrySet()) {
-				entry.setValue(convert(entry.getValue()));
-			}
-			
-			for (Map.Entry<String, Object> entry : executionResult.getResults().entrySet()) {
-				entry.setValue(convert(entry.getValue()));
-			}
-			marshaller.marshal(executionResult, writer);
-			return writer.toString();
-		} catch (Throwable e) {
-			e.printStackTrace();
-			throw new RuntimeException(e);
-		}
-	}
-	
-}



More information about the jboss-svn-commits mailing list