[jboss-svn-commits] JBL Code SVN: r34555 - in labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer: drools-timer-executor and 18 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Aug 5 14:21:35 EDT 2010


Author: diegoll
Date: 2010-08-05 14:21:34 -0400 (Thu, 05 Aug 2010)
New Revision: 34555

Added:
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/pom.xml
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/HornetQMessageTranslator.java
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/JobExecutor.java
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/JobExecutorService.java
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/timer/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/timer/TimerJobExecutor.java
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/utils/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/utils/SerializedMessageTranslator.java
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/resources/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/resources/executorContext.xml
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/JobExecutorsRunner.java
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/JobExecutorsRunnerMock.java
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/TimerExecutorServiceTest.java
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/resources/
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/resources/executorContextTest.xml
   labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/resources/log4j.xml
Log:
initial commit of jobs-executor


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor
___________________________________________________________________
Name: svn:ignore
   + .settings
target
.*


Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/pom.xml
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/pom.xml	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/pom.xml	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="utf-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <artifactId>drools-persistent-timer</artifactId>
+    <groupId>org.drools</groupId>
+    <version>5.1.0</version>
+  </parent>
+  <artifactId>drools-timer-executor</artifactId>
+  <packaging>jar</packaging>
+  <name>Drools :: Timers :: Executor</name>
+  
+  <dependencies>
+    <dependency>
+      <groupId>org.drools</groupId>
+      <artifactId>drools-timer-messages</artifactId>
+    </dependency>
+    
+    <!-- HornetQ dependencies -->
+    <dependency>
+      <groupId>org.hornetq</groupId>
+      <artifactId>hornetq-core</artifactId>
+      <version>${hornetq.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.hornetq</groupId>
+      <artifactId>hornetq-transports</artifactId>
+      <version>${hornetq.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.jboss.netty</groupId>
+      <artifactId>netty</artifactId>
+      <version>${netty.version}</version>
+    </dependency>
+    
+    
+    <!-- Spring Dependencies -->
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-core</artifactId>
+      <version>${spring.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-beans</artifactId>
+      <version>${spring.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-context</artifactId>
+      <version>${spring.version}</version>
+    </dependency>
+    
+    <!-- SL4J dependencies -->
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-api</artifactId>
+      <version>1.5.8</version>
+    </dependency>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-log4j12</artifactId>
+      <version>1.4.2</version>
+      <scope>runtime</scope>
+    </dependency>
+    
+    <!-- test dependencies -->
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>4.8.1</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+  
+</project>


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/pom.xml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/HornetQMessageTranslator.java
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/HornetQMessageTranslator.java	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/HornetQMessageTranslator.java	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,9 @@
+package org.drools.job.executor;
+
+import org.hornetq.api.core.client.ClientMessage;
+
+public interface HornetQMessageTranslator<T> {
+
+	T readMessage(ClientMessage clientMessage);
+
+}


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/HornetQMessageTranslator.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/JobExecutor.java
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/JobExecutor.java	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/JobExecutor.java	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,7 @@
+package org.drools.job.executor;
+
+public interface JobExecutor<T> {
+
+	public void execute(T job);
+	
+}


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/JobExecutor.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/JobExecutorService.java
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/JobExecutorService.java	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/JobExecutorService.java	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,58 @@
+package org.drools.job.executor;
+
+import java.util.TimerTask;
+import java.util.concurrent.atomic.AtomicBoolean;
+
+import org.hornetq.api.core.client.ClientConsumer;
+import org.hornetq.api.core.client.ClientMessage;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class JobExecutorService<T> extends TimerTask {
+	
+	private static Logger logger = LoggerFactory.getLogger(JobExecutorService.class);
+	
+	private ClientConsumer consumer;
+	private AtomicBoolean running = new AtomicBoolean(false);
+	private HornetQMessageTranslator<T> translator;
+	private JobExecutor<T> executor;
+
+	public void run() {
+		running.set(true);
+		try {
+			while (running.get()) {
+				ClientMessage clientMessage = consumer.receive();
+				if (clientMessage!=null) {
+					T job = translator.readMessage(clientMessage);
+					executor.execute(job);
+				}
+			}
+		} catch (Exception e) {
+			logger.error("Error running job executor service", e);
+		}
+	}
+	
+	@Override
+	public boolean cancel() {
+		boolean cancelResult = super.cancel();
+		running.set(false);
+		return cancelResult;
+	}
+
+	public boolean isRunning(){
+		return running.get();
+	}
+	
+	public void setConsumer(ClientConsumer consumer) {
+		this.consumer = consumer;
+	}
+
+	public void setTranslator(HornetQMessageTranslator<T> translator) {
+		this.translator = translator;
+	}
+
+	public void setExecutor(JobExecutor<T> executor) {
+		this.executor = executor;
+	}
+
+}


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/JobExecutorService.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/timer/TimerJobExecutor.java
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/timer/TimerJobExecutor.java	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/timer/TimerJobExecutor.java	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,11 @@
+package org.drools.job.executor.timer;
+
+import org.drools.job.executor.JobExecutor;
+import org.drools.timer.message.TimerJob;
+
+public class TimerJobExecutor implements JobExecutor<TimerJob> {
+
+	public void execute(TimerJob job) {
+		
+	}
+}


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/timer/TimerJobExecutor.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/utils/SerializedMessageTranslator.java
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/utils/SerializedMessageTranslator.java	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/utils/SerializedMessageTranslator.java	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,26 @@
+package org.drools.job.executor.utils;
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.ObjectInputStream;
+
+import org.drools.job.executor.HornetQMessageTranslator;
+import org.hornetq.api.core.client.ClientMessage;
+
+public class SerializedMessageTranslator<T> implements HornetQMessageTranslator<T> {
+
+	public T readMessage(ClientMessage clientMessage) {
+		int bodySize = clientMessage.getBodySize();
+		byte[] message = new byte[bodySize];
+		clientMessage.getBodyBuffer().readBytes(message);
+		ByteArrayInputStream bais = new ByteArrayInputStream(message);
+		try {
+			ObjectInputStream ois = new ObjectInputStream(bais);
+			return (T) ois.readObject();
+		} catch (IOException e) {
+			throw new IllegalArgumentException("Error reading message");
+		} catch (ClassNotFoundException e) {
+			throw new IllegalArgumentException("Error creating TimerJob");
+		}
+	}
+}


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/java/org/drools/job/executor/utils/SerializedMessageTranslator.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/resources/executorContext.xml
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/resources/executorContext.xml	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/resources/executorContext.xml	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<beans 
+  xmlns="http://www.springframework.org/schema/beans"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+  xmlns:context="http://www.springframework.org/schema/context"
+  xmlns:util="http://www.springframework.org/schema/util"
+  xsi:schemaLocation="http://www.springframework.org/schema/beans    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
+                      http://www.springframework.org/schema/context  http://www.springframework.org/schema/context/spring-context-3.0.xsd  
+                      http://www.springframework.org/schema/util     http://www.springframework.org/schema/util/spring-util-3.0.xsd" >
+
+  <bean id="timerJobExecutorService" class="org.drools.job.executor.JobExecutorService">
+    <property name="consumer">
+  	  <bean id="timerMessagesConsumer" factory-bean="clientSession" factory-method="createConsumer" destroy-method="close">
+        <constructor-arg value="executeTimerMessages"/>
+      </bean>
+  	</property>
+  	<property name="translator">
+  		<bean class="org.drools.job.executor.utils.SerializedMessageTranslator"/>
+  	</property>
+  	<property name="executor">
+  		<bean class="org.drools.job.executor.timer.TimerJobExecutor"/>
+  	</property>
+  </bean>
+
+  
+  <!-- client connection with the HornetQ server -->
+  <bean id="clientSession" factory-bean="clientSessionFactory" factory-method="createSession" init-method="start"/>
+  <bean id="clientSessionFactory" class="org.hornetq.api.core.client.HornetQClient" factory-method="createClientSessionFactory" depends-on="hornetQServer" >
+    <constructor-arg>
+      <bean class="org.hornetq.api.core.TransportConfiguration">
+        <constructor-arg>
+          <value>org.hornetq.integration.transports.netty.NettyConnectorFactory</value>
+        </constructor-arg>
+        <constructor-arg>
+          <map>
+            <entry>
+              <key><util:constant static-field="org.hornetq.integration.transports.netty.TransportConstants.PORT_PROP_NAME"/></key>
+              <value>5446</value>
+            </entry>
+          </map>
+        </constructor-arg>
+      </bean>
+    </constructor-arg>  
+  </bean>
+
+  <!-- start HornetQ server -->
+  <bean id="hornetQServer" class="org.hornetq.core.server.HornetQServers" factory-method="newHornetQServer" init-method="start" destroy-method="stop">
+    <constructor-arg>
+      <bean class="org.hornetq.core.config.impl.ConfigurationImpl">
+        <property name="persistenceEnabled" value="false"/>
+        <property name="securityEnabled" value="false"/>
+        <property name="clustered" value="false"/>
+        <property name="queueConfigurations">
+          <list>
+            <bean class="org.hornetq.core.server.cluster.QueueConfiguration">
+              <constructor-arg name="address" value="executeTimerMessages"/>
+              <constructor-arg name="name" value="executeTimerMessages"/>
+              <constructor-arg name="filterString"><null/></constructor-arg>
+              <constructor-arg name="durable" value="true"/>
+            </bean>
+          </list>
+        </property>
+        <property name="acceptorConfigurations">
+          <set>
+            <bean class="org.hornetq.api.core.TransportConfiguration">
+              <constructor-arg>
+                <value>org.hornetq.integration.transports.netty.NettyAcceptorFactory</value>
+              </constructor-arg>
+              <constructor-arg>
+                <map>
+                  <entry>
+                    <key>
+                      <util:constant static-field="org.hornetq.integration.transports.netty.TransportConstants.PORT_PROP_NAME"/>
+                    </key>
+                    <value>5446</value>
+                  </entry>
+                </map>
+              </constructor-arg>
+            </bean>
+          </set>
+        </property>
+      </bean>
+    </constructor-arg>
+  </bean>
+</beans>
\ No newline at end of file


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/main/resources/executorContext.xml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/JobExecutorsRunner.java
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/JobExecutorsRunner.java	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/JobExecutorsRunner.java	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,7 @@
+package org.drools.job.executor.timer;
+
+public interface JobExecutorsRunner {
+
+	public abstract void runExecutor();
+
+}
\ No newline at end of file


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/JobExecutorsRunner.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/JobExecutorsRunnerMock.java
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/JobExecutorsRunnerMock.java	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/JobExecutorsRunnerMock.java	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,35 @@
+package org.drools.job.executor.timer;
+
+import java.util.List;
+import java.util.TimerTask;
+
+import org.springframework.core.task.TaskExecutor;
+
+public class JobExecutorsRunnerMock implements JobExecutorsRunner {
+
+	private TaskExecutor executor;
+	private List<TimerTask> jobExecutors;
+	
+	/* (non-Javadoc)
+	 * @see org.drools.job.executor.timer.JobExecutorsRunner#runExecutor()
+	 */
+	public void runExecutor(){
+		for (TimerTask task : getJobExecutors()) {
+			getExecutor().execute(task);
+		}
+	}
+	
+	public TaskExecutor getExecutor() {
+		return executor;
+	}
+	public void setExecutor(TaskExecutor executor) {
+		this.executor = executor;
+	}
+	public List<TimerTask> getJobExecutors() {
+		return jobExecutors;
+	}
+	public void setJobExecutors(List<TimerTask> executors) {
+		this.jobExecutors = executors;
+	}
+	
+}


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/JobExecutorsRunnerMock.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/TimerExecutorServiceTest.java
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/TimerExecutorServiceTest.java	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/TimerExecutorServiceTest.java	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,24 @@
+package org.drools.job.executor.timer;
+
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.support.ClassPathXmlApplicationContext;
+
+public class TimerExecutorServiceTest {
+	
+	private static ApplicationContext context;
+	
+	@BeforeClass
+	public static void loadContext(){
+		context = new ClassPathXmlApplicationContext("classpath:/executorContext.xml", 
+													"classpath:/executorContextTest.xml");
+	}
+	
+	@Test
+	public void triggerTimerJob(){
+		JobExecutorsRunner jobExecutorsRunner = (JobExecutorsRunner) context.getBean("jobExecutorsRunner");
+		Assert.assertNotNull(jobExecutorsRunner);
+	}
+}


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/java/org/drools/job/executor/timer/TimerExecutorServiceTest.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/resources/executorContextTest.xml
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/resources/executorContextTest.xml	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/resources/executorContextTest.xml	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<beans 
+  xmlns="http://www.springframework.org/schema/beans"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+  xmlns:context="http://www.springframework.org/schema/context"
+  xmlns:util="http://www.springframework.org/schema/util"
+  xsi:schemaLocation="http://www.springframework.org/schema/beans    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
+                      http://www.springframework.org/schema/context  http://www.springframework.org/schema/context/spring-context-3.0.xsd  
+                      http://www.springframework.org/schema/util     http://www.springframework.org/schema/util/spring-util-3.0.xsd" >
+                      
+  <bean id="jobExecutorsRunner" class="org.drools.job.executor.timer.JobExecutorsRunnerMock">
+  	<property name="executor">
+	  <bean class="org.springframework.core.task.SyncTaskExecutor"/>
+  	</property>
+    <property name="jobExecutors">
+      <list>
+        <ref bean="timerJobExecutorService"/>
+      </list>
+  	</property>
+  </bean> 
+</beans>
\ No newline at end of file


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/resources/executorContextTest.xml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/resources/log4j.xml
===================================================================
--- labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/resources/log4j.xml	                        (rev 0)
+++ labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/resources/log4j.xml	2010-08-05 18:21:34 UTC (rev 34555)
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+<!-- ===================================================================== -->
+<!--                                                                       -->
+<!--  Log4j Configuration                                                  -->
+<!--                                                                       -->
+<!-- ===================================================================== -->
+<!-- $Id: log4j.xml,v 1.8 2006/04/26 17:29:10 gavin Exp $ -->
+<!--
+   | For more configuration infromation and examples see the Jakarta Log4j
+   | owebsite: http://jakarta.apache.org/log4j
+ -->
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
+	<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+		<param name="Target" value="System.out"/>
+		<layout class="org.apache.log4j.PatternLayout">
+			<param name="ConversionPattern" value="%-5p %d{dd-MM HH:mm:ss,SSS} (%F:%M:%L) \t %m%n"/>
+		</layout>
+	</appender>
+	<logger name="org.drools">
+		<level value="DEBUG"/>
+	</logger>
+	<root>
+		<priority value="ERROR"/>
+		<appender-ref ref="CONSOLE"/>
+	</root>
+</log4j:configuration>


Property changes on: labs/jbossrules/branches/5_1_20100802_esteban_diega/drools-process/drools-persistent-timer/drools-timer-executor/src/test/resources/log4j.xml
___________________________________________________________________
Name: svn:eol-style
   + native



More information about the jboss-svn-commits mailing list