[jboss-svn-commits] JBL Code SVN: r24523 - in labs/jbossrules/trunk: drools-core/src/main/java/org/drools/runtime/dataloader/impl and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Jan 3 00:59:17 EST 2009
Author: mark.proctor at jboss.com
Date: 2009-01-03 00:59:16 -0500 (Sat, 03 Jan 2009)
New Revision: 24523
Added:
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Callable.java
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbTransformerProvider.java
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JxlsTransformerProvider.java
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/ListAdapter.java
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Sender.java
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/SmooksTransformerProvider.java
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/XStreamTransformerProvider.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/CallableImpl.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/ListAdapterImpl.java
Removed:
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbPipelineProvider.java
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/SmooksPipelineProvider.java
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/XStreamPipelineProvider.java
Modified:
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/CorePipelineProvider.java
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/PipelineFactory.java
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Receiver.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/EntryPointReceiverAdapter.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatefulKnowledgeSessionDataLoaderImpl.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatelessKnowledgeSessionDataLoaderImpl.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatelessKnowledgeSessionReceiverAdapter.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/BaseEmitter.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/CorePipelineProviderImpl.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/IterateSplitter.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/MvelExpression.java
Log:
JBRULES-1903 Pipeline support for DataLoaders and Feeders
-Added of jXLS support
-Added Callable support
-Added List adapter
-Refactored Receiver.signal(...) to Receiver.receive(...)
Added: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Callable.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Callable.java (rev 0)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Callable.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -0,0 +1,12 @@
+package org.drools.runtime.pipeline;
+
+
+/**
+ *
+ * Must be the first and last Stage in the Pipeline
+ *
+ * @param <E>
+ */
+public interface Callable<E> extends Receiver, Emitter, Stage{
+ E call(Object signal, PipelineContext context);
+}
Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/CorePipelineProvider.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/CorePipelineProvider.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/CorePipelineProvider.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -1,5 +1,7 @@
package org.drools.runtime.pipeline;
+import java.util.List;
+
public interface CorePipelineProvider {
public Expression newMvelExpression(String expression);
@@ -8,4 +10,8 @@
public Adapter newEntryPointReceiverAdapter();
public Adapter newStatelessKnowledgeSessionReceiverAdapter();
+
+ public ListAdapter newListAdapter(List<Object> list, boolean syncAccessors);
+
+ public Callable newCallable();
}
Deleted: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbPipelineProvider.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbPipelineProvider.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbPipelineProvider.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -1,7 +0,0 @@
-package org.drools.runtime.pipeline;
-
-import javax.xml.bind.Unmarshaller;
-
-public interface JaxbPipelineProvider {
- Transformer newJaxbTransformer(Unmarshaller unmarshaller);
-}
Copied: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbTransformerProvider.java (from rev 24512, labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbPipelineProvider.java)
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbTransformerProvider.java (rev 0)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JaxbTransformerProvider.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -0,0 +1,7 @@
+package org.drools.runtime.pipeline;
+
+import javax.xml.bind.Unmarshaller;
+
+public interface JaxbTransformerProvider {
+ Transformer newJaxbTransformer(Unmarshaller unmarshaller);
+}
Added: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JxlsTransformerProvider.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JxlsTransformerProvider.java (rev 0)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/JxlsTransformerProvider.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -0,0 +1,8 @@
+package org.drools.runtime.pipeline;
+
+import net.sf.jxls.reader.XLSReader;
+
+public interface JxlsTransformerProvider {
+ Transformer newJxlsTransformer(XLSReader reader,
+ String text);
+}
Added: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/ListAdapter.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/ListAdapter.java (rev 0)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/ListAdapter.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -0,0 +1,11 @@
+package org.drools.runtime.pipeline;
+
+import java.util.List;
+
+public interface ListAdapter extends Receiver, Stage{
+
+ List< Object > getList();
+
+ void setList(List< Object > list);
+
+}
Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/PipelineFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/PipelineFactory.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/PipelineFactory.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -1,7 +1,11 @@
package org.drools.runtime.pipeline;
+import java.util.List;
+
import javax.xml.bind.Unmarshaller;
+import net.sf.jxls.reader.XLSReader;
+
import org.drools.ProviderInitializationException;
import org.milyn.Smooks;
@@ -11,12 +15,14 @@
private static CorePipelineProvider corePipelineProvider;
- private static JaxbPipelineProvider jaxbPipelineProvider;
+ private static JaxbTransformerProvider jaxbPipelineProvider;
- private static SmooksPipelineProvider smooksPipelineProvider;
+ private static SmooksTransformerProvider smooksPipelineProvider;
- private static XStreamPipelineProvider xstreamPipelineProvider;
+ private static XStreamTransformerProvider xstreamPipelineProvider;
+ private static JxlsTransformerProvider jxlsPipelineProvider;
+
public static Transformer newSmooksTransformer(Smooks smooks,
String rootId) {
return getSmooksPipelineProvider().newSmooksTransformer( smooks,
@@ -28,8 +34,12 @@
}
public static Transformer newXStreamTransformer(XStream xstream) {
- return getXStreamPipelineProvider().newXStreamTransformer( xstream );
+ return getXStreamTransformerProvider().newXStreamTransformer( xstream );
}
+
+ public static Transformer newJxlsTransformer(XLSReader xlsReader, String text) {
+ return getJxlsTransformerProvider().newJxlsTransformer( xlsReader, text );
+ }
public static Expression newMvelExpression(String expression) {
return getCorePipelineProvider().newMvelExpression( expression );
@@ -38,6 +48,14 @@
public static Splitter newIterateSplitter() {
return getCorePipelineProvider().newIterateSplitter();
}
+
+ public static ListAdapter newListAdapter(List list, boolean syncAccessor) {
+ return getCorePipelineProvider().newListAdapter(list, syncAccessor);
+ }
+
+ public static Callable newCallable() {
+ return getCorePipelineProvider().newCallable();
+ }
public static Adapter newEntryPointReceiverAdapter() {
return getCorePipelineProvider().newEntryPointReceiverAdapter();
@@ -68,67 +86,88 @@
}
}
- private static synchronized void setJaxbPipelineProvider(JaxbPipelineProvider provider) {
+ private static synchronized void setJaxbTransformerProvider(JaxbTransformerProvider provider) {
PipelineFactory.jaxbPipelineProvider = provider;
}
- private static synchronized JaxbPipelineProvider getJaxbPipelineProvider() {
+ private static synchronized JaxbTransformerProvider getJaxbPipelineProvider() {
if ( jaxbPipelineProvider == null ) {
- loadJaxbPipelineProvider();
+ loadJaxbTransformerProvider();
}
return jaxbPipelineProvider;
}
- private static void loadJaxbPipelineProvider() {
+ private static void loadJaxbTransformerProvider() {
try {
- Class<JaxbPipelineProvider> cls = (Class<JaxbPipelineProvider>) Class.forName( "org.drools.runtime.pipeline.impl.JaxbTransformer$JaxbPipelineProviderImpl" );
- setJaxbPipelineProvider( cls.newInstance() );
+ Class<JaxbTransformerProvider> cls = (Class<JaxbTransformerProvider>) Class.forName( "org.drools.runtime.pipeline.impl.JaxbTransformer$JaxbTransformerProviderImpl" );
+ setJaxbTransformerProvider( cls.newInstance() );
} catch ( Exception e2 ) {
- throw new ProviderInitializationException( "Provider org.drools.runtime.pipeline.impl.JaxbTransformer$JaxbPipelineProviderImpl could not be set.",
+ throw new ProviderInitializationException( "Provider org.drools.runtime.pipeline.impl.JaxbTransformer$JaxbTransformerProviderImpl could not be set.",
e2 );
}
}
- private static synchronized void setSmooksPipelineProvider(SmooksPipelineProvider provider) {
+ private static synchronized void setSmooksTransformerProvider(SmooksTransformerProvider provider) {
PipelineFactory.smooksPipelineProvider = provider;
}
- private static synchronized SmooksPipelineProvider getSmooksPipelineProvider() {
+ private static synchronized SmooksTransformerProvider getSmooksPipelineProvider() {
if ( smooksPipelineProvider == null ) {
- loadSmooksPipelineProvider();
+ loadSmooksTransformerProvider();
}
return smooksPipelineProvider;
}
- private static void loadSmooksPipelineProvider() {
+ private static void loadSmooksTransformerProvider() {
try {
- Class<SmooksPipelineProvider> cls = (Class<SmooksPipelineProvider>) Class.forName( "org.drools.runtime.pipeline.impl.SmooksTransformer$SmooksPipelineProviderImpl" );
- setSmooksPipelineProvider( cls.newInstance() );
+ Class<SmooksTransformerProvider> cls = (Class<SmooksTransformerProvider>) Class.forName( "org.drools.runtime.pipeline.impl.SmooksTransformer$SmooksTransformerProviderImpl" );
+ setSmooksTransformerProvider( cls.newInstance() );
} catch ( Exception e2 ) {
- throw new ProviderInitializationException( "Provider org.drools.runtime.pipeline.impl.SmooksTransformer$SmooksPipelineProviderImpl could not be set.",
+ throw new ProviderInitializationException( "Provider org.drools.runtime.pipeline.impl.SmooksTransformer$SmooksTransformerProviderImpl could not be set.",
e2 );
}
}
- private static synchronized void setXStreamPipelineProvider(XStreamPipelineProvider provider) {
+ private static synchronized void setXStreamTransformerProvider(XStreamTransformerProvider provider) {
PipelineFactory.xstreamPipelineProvider = provider;
}
- private static synchronized XStreamPipelineProvider getXStreamPipelineProvider() {
+ private static synchronized XStreamTransformerProvider getXStreamTransformerProvider() {
if ( xstreamPipelineProvider == null ) {
- loadXStreamPipelineProvider();
+ loadXStreamTransformerProvider();
}
return xstreamPipelineProvider;
}
- private static void loadXStreamPipelineProvider() {
+ private static void loadXStreamTransformerProvider() {
try {
- Class<XStreamPipelineProvider> cls = (Class<XStreamPipelineProvider>) Class.forName( "org.drools.runtime.pipeline.impl.XStreamTransformer$XStreamPipelineProviderImpl" );
- setXStreamPipelineProvider( cls.newInstance() );
+ Class<XStreamTransformerProvider> cls = (Class<XStreamTransformerProvider>) Class.forName( "org.drools.runtime.pipeline.impl.XStreamTransformer$XStreamTransformerProviderImpl" );
+ setXStreamTransformerProvider( cls.newInstance() );
} catch ( Exception e2 ) {
- throw new ProviderInitializationException( "Provider org.drools.runtime.pipeline.impl.XStreamTransformer$XStreamPipelineProviderImpl could not be set.",
+ throw new ProviderInitializationException( "Provider org.drools.runtime.pipeline.impl.XStreamTransformer$XStreamTransformerProviderImpl could not be set.",
e2 );
}
- }
+ }
+
+ private static synchronized void setJxlsTransformerProvider(JxlsTransformerProvider provider) {
+ PipelineFactory.jxlsPipelineProvider = provider;
+ }
+ private static synchronized JxlsTransformerProvider getJxlsTransformerProvider() {
+ if ( jxlsPipelineProvider == null ) {
+ loadJxlsTransformerProvider();
+ }
+ return jxlsPipelineProvider;
+ }
+
+ private static void loadJxlsTransformerProvider() {
+ try {
+ Class<JxlsTransformerProvider> cls = (Class<JxlsTransformerProvider>) Class.forName( "org.drools.runtime.pipeline.impl.JxlsTransformer$JxlsTransformerProviderImpl" );
+ setJxlsTransformerProvider( cls.newInstance() );
+ } catch ( Exception e2 ) {
+ throw new ProviderInitializationException( "Provider org.drools.runtime.pipeline.impl.JxlsTransformer$JxlsTransformerProviderImpl could not be set.",
+ e2 );
+ }
+ }
+
}
Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Receiver.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Receiver.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Receiver.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -2,5 +2,5 @@
public interface Receiver {
- void signal(Object object, PipelineContext context);
+ void receive(Object object, PipelineContext context);
}
Added: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Sender.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Sender.java (rev 0)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/Sender.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -0,0 +1,5 @@
+package org.drools.runtime.pipeline;
+
+public interface Sender extends Receiver, Stage {
+
+}
Deleted: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/SmooksPipelineProvider.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/SmooksPipelineProvider.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/SmooksPipelineProvider.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -1,8 +0,0 @@
-package org.drools.runtime.pipeline;
-
-import org.milyn.Smooks;
-
-public interface SmooksPipelineProvider {
- Transformer newSmooksTransformer(Smooks smooks,
- String rootId);
-}
Copied: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/SmooksTransformerProvider.java (from rev 24512, labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/SmooksPipelineProvider.java)
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/SmooksTransformerProvider.java (rev 0)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/SmooksTransformerProvider.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -0,0 +1,8 @@
+package org.drools.runtime.pipeline;
+
+import org.milyn.Smooks;
+
+public interface SmooksTransformerProvider {
+ Transformer newSmooksTransformer(Smooks smooks,
+ String rootId);
+}
Deleted: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/XStreamPipelineProvider.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/XStreamPipelineProvider.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/XStreamPipelineProvider.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -1,7 +0,0 @@
-package org.drools.runtime.pipeline;
-
-import com.thoughtworks.xstream.XStream;
-
-public interface XStreamPipelineProvider {
- Transformer newXStreamTransformer(XStream xstream);
-}
Copied: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/XStreamTransformerProvider.java (from rev 24512, labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/XStreamPipelineProvider.java)
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/XStreamTransformerProvider.java (rev 0)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/XStreamTransformerProvider.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -0,0 +1,7 @@
+package org.drools.runtime.pipeline;
+
+import com.thoughtworks.xstream.XStream;
+
+public interface XStreamTransformerProvider {
+ Transformer newXStreamTransformer(XStream xstream);
+}
Property changes on: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/pipeline/XStreamTransformerProvider.java
___________________________________________________________________
Name: svn:mergeinfo
+
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/EntryPointReceiverAdapter.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/EntryPointReceiverAdapter.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/EntryPointReceiverAdapter.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -11,7 +11,7 @@
public class EntryPointReceiverAdapter extends BaseStage
implements
Adapter {
- public void signal(Object object,
+ public void receive(Object object,
PipelineContext context) {
EntryPointPipelineContext pContext = (EntryPointPipelineContext) context;
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatefulKnowledgeSessionDataLoaderImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatefulKnowledgeSessionDataLoaderImpl.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatefulKnowledgeSessionDataLoaderImpl.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -37,7 +37,7 @@
*/
public Map insert(Object object) {
EntryPointPipelineContext context = new EntryPointPipelineContext( this.entryPoint );
- this.pipeline.signal( object,
+ this.pipeline.receive( object,
context );
return context.getHandles();
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatelessKnowledgeSessionDataLoaderImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatelessKnowledgeSessionDataLoaderImpl.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatelessKnowledgeSessionDataLoaderImpl.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -30,7 +30,7 @@
*/
public void executeObject(Object object) {
StatelessKnowledgeSessionPipelineContext context = new StatelessKnowledgeSessionPipelineContext( this.ksession );
- this.pipeline.signal( object,
+ this.pipeline.receive( object,
context );
this.ksession.executeObject( context.getResult().get( 0 ) );
}
@@ -40,7 +40,7 @@
*/
public void executeIterable(Object object) {
StatelessKnowledgeSessionPipelineContext context = new StatelessKnowledgeSessionPipelineContext( this.ksession );
- this.pipeline.signal( object,
+ this.pipeline.receive( object,
context );
this.ksession.executeIterable( (Iterable) context.getResult() );
}
@@ -51,7 +51,7 @@
public StatelessKnowledgeSessionResults executeObjectWithParameters(Object object,
Parameters parameters) {
StatelessKnowledgeSessionPipelineContext context = new StatelessKnowledgeSessionPipelineContext( this.ksession );
- this.pipeline.signal( object,
+ this.pipeline.receive( object,
context );
return this.ksession.executeObjectWithParameters( context.getResult().get( 0 ),
parameters );
@@ -63,7 +63,7 @@
public StatelessKnowledgeSessionResults executeIterableWithParameters(Object object,
Parameters parameters) {
StatelessKnowledgeSessionPipelineContext context = new StatelessKnowledgeSessionPipelineContext( this.ksession );
- this.pipeline.signal( object,
+ this.pipeline.receive( object,
context );
return this.ksession.executeIterableWithParameters( (Iterable) context.getResult(),
parameters );
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatelessKnowledgeSessionReceiverAdapter.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatelessKnowledgeSessionReceiverAdapter.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/dataloader/impl/StatelessKnowledgeSessionReceiverAdapter.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -10,7 +10,7 @@
public class StatelessKnowledgeSessionReceiverAdapter extends BaseStage
implements
Adapter {
- public void signal(Object object,
+ public void receive(Object object,
PipelineContext context) {
StatelessKnowledgeSessionPipelineContext pContext = (StatelessKnowledgeSessionPipelineContext) context;
pContext.addResult( object );
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/BaseEmitter.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/BaseEmitter.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/BaseEmitter.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -33,7 +33,7 @@
protected void emit(Object object,
PipelineContext context) {
for ( Receiver receiver : this.receivers ) {
- receiver.signal( object,
+ receiver.receive( object,
context );
}
}
Added: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/CallableImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/CallableImpl.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/CallableImpl.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -0,0 +1,29 @@
+package org.drools.runtime.pipeline.impl;
+
+import org.drools.runtime.pipeline.Callable;
+import org.drools.runtime.pipeline.PipelineContext;
+
+public class CallableImpl<E> extends BaseEmitter
+ implements
+ Callable {
+ public static final String key = "__CallableReturnValue__";
+
+ public CallableImpl() {
+ super();
+ }
+
+ public Object call(Object object,
+ PipelineContext context) {
+ emit( object,
+ context );
+ return context.getProperties().remove( key );
+ }
+
+ public void receive(Object object,
+ PipelineContext context) {
+ context.getProperties().put( key,
+ object );
+
+ }
+
+}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/CorePipelineProviderImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/CorePipelineProviderImpl.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/CorePipelineProviderImpl.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -1,15 +1,21 @@
package org.drools.runtime.pipeline.impl;
+import java.util.List;
+
import org.drools.runtime.dataloader.impl.EntryPointReceiverAdapter;
import org.drools.runtime.dataloader.impl.StatelessKnowledgeSessionReceiverAdapter;
import org.drools.runtime.pipeline.Adapter;
+import org.drools.runtime.pipeline.Callable;
import org.drools.runtime.pipeline.CorePipelineProvider;
import org.drools.runtime.pipeline.Expression;
import org.drools.runtime.pipeline.Splitter;
+import org.drools.runtime.pipeline.ListAdapter;
-public class CorePipelineProviderImpl implements CorePipelineProvider {
+public class CorePipelineProviderImpl
+ implements
+ CorePipelineProvider {
public Expression newMvelExpression(String expression) {
- return new MvelExpression(expression);
+ return new MvelExpression( expression );
}
public Splitter newIterateSplitter() {
@@ -23,4 +29,14 @@
public Adapter newStatelessKnowledgeSessionReceiverAdapter() {
return new StatelessKnowledgeSessionReceiverAdapter();
}
+
+ public ListAdapter newListAdapter(List<Object> list,
+ boolean syncAccessors) {
+ return new ListAdapterImpl( list,
+ syncAccessors );
+ }
+
+ public Callable newCallable() {
+ return new CallableImpl();
+ }
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/IterateSplitter.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/IterateSplitter.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/IterateSplitter.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -7,7 +7,7 @@
implements
Splitter {
- public void signal(Object object,
+ public void receive(Object object,
PipelineContext context) {
if ( object instanceof Iterable ) {
for ( Object result : ((Iterable) object) ) {
Added: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/ListAdapterImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/ListAdapterImpl.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/ListAdapterImpl.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -0,0 +1,46 @@
+package org.drools.runtime.pipeline.impl;
+
+import java.util.List;
+
+import org.drools.runtime.pipeline.ListAdapter;
+import org.drools.runtime.pipeline.PipelineContext;
+
+public class ListAdapterImpl extends BaseStage
+ implements
+ ListAdapter {
+ private List<Object> list;
+ private boolean syncAccessor;
+
+ public ListAdapterImpl(List<Object> list,
+ boolean syncAccessor) {
+ super();
+ this.list = list;
+ this.syncAccessor = syncAccessor;
+ }
+
+ public List<Object> getList() {
+ if ( this.syncAccessor ) {
+ synchronized ( this ) {
+ return list;
+ }
+ } else {
+ return list;
+ }
+ }
+
+ public void setList(List<Object> list) {
+ if ( this.syncAccessor ) {
+ synchronized ( this ) {
+ this.list = list;
+ }
+ } else {
+ this.list = list;
+ }
+ }
+
+ public void receive(Object object,
+ PipelineContext context) {
+ this.list.add( object );
+ }
+
+}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/MvelExpression.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/MvelExpression.java 2009-01-03 05:58:29 UTC (rev 24522)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/pipeline/impl/MvelExpression.java 2009-01-03 05:59:16 UTC (rev 24523)
@@ -23,7 +23,7 @@
this.expr = compiler.compile( parserContext );
}
- public void signal(Object object,
+ public void receive(Object object,
PipelineContext context) {
Object result = null;
try {
More information about the jboss-svn-commits
mailing list