Author: rr
Date: Fri Jun 18 11:11:31 2010
New Revision: 955933

URL: http://svn.apache.org/viewvc?rev=955933&view=rev
Log:
CleanupRunnable fix after JobDetails update

Modified:
    
ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/BpelDAOConnection.java
    
ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/DeferredProcessInstanceCleanable.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessCleanUpRunnable.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/cron/RuntimeDataCleanupRunnable.java
    
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/memdao/BpelDAOConnectionImpl.java
    ode/trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessConfImpl.java
    
ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java
    
ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessDaoImpl.java
    
ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
    
ode/trunk/scheduler-simple/src/main/java/org/apache/ode/scheduler/simple/JdbcDelegate.java
    
ode/trunk/scheduler-simple/src/main/java/org/apache/ode/scheduler/simple/SimpleScheduler.java

Modified: 
ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/BpelDAOConnection.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/BpelDAOConnection.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/BpelDAOConnection.java 
(original)
+++ 
ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/BpelDAOConnection.java 
Fri Jun 18 11:11:31 2010
@@ -102,8 +102,7 @@ public interface BpelDAOConnection {
 
     Collection<CorrelationSetDAO> getActiveCorrelationSets();
 
-    ProcessDAO createTransientProcess(Serializable id);
-
+    ProcessDAO createTransientProcess(Long pidId);
     ProcessDAO createProcess(QName pid, QName type, String guid, long version);
 
     /**

Modified: 
ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/DeferredProcessInstanceCleanable.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/DeferredProcessInstanceCleanable.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/DeferredProcessInstanceCleanable.java
 (original)
+++ 
ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/DeferredProcessInstanceCleanable.java
 Fri Jun 18 11:11:31 2010
@@ -20,6 +20,8 @@ package org.apache.ode.bpel.dao;
 
 import java.io.Serializable;
 
+import javax.xml.namespace.QName;
+
 /**
  * Instances and associated data for a ProcessDAO implementation that 
implements this
  * interface can be deleted in a deferred fashion.
@@ -33,8 +35,8 @@ public interface DeferredProcessInstance
      *
      * @return database id
      */
-    Serializable getId();
-
+    Long getPidId();
+    
     /**
      * Deletes instances and data for this process, the number of rows gets 
deletes is limited
      * by the transaction size.

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java
 Fri Jun 18 11:11:31 2010
@@ -436,7 +436,7 @@ public class BpelServerImpl implements B
                 !DEFERRED_PROCESS_INSTANCE_CLEANUP_DISABLED ) {
                 // schedule deletion of process runtime data
                 _engine._contexts.scheduler.scheduleMapSerializableRunnable(
-                    new 
ProcessCleanUpRunnable(((DeferredProcessInstanceCleanable)proc).getId()), new 
Date());
+                    new 
ProcessCleanUpRunnable(((DeferredProcessInstanceCleanable)proc).getPidId()), 
new Date());
             } else if( proc instanceof DeferredProcessInstanceCleanable ) {
                 
((DeferredProcessInstanceCleanable)proc).deleteInstances(Integer.MAX_VALUE);
             }

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessCleanUpRunnable.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessCleanUpRunnable.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessCleanUpRunnable.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessCleanUpRunnable.java
 Fri Jun 18 11:11:31 2010
@@ -40,21 +40,21 @@ public class ProcessCleanUpRunnable impl
     public final static int PROCESS_CLEANUP_TRANSACTION_SIZE = 
Integer.getInteger("org.apache.ode.processInstanceDeletion.transactionSize", 
10);
 
     private transient Contexts _contexts;
-    private transient Serializable _pid;
+    private transient Long _pidId;
 
     public ProcessCleanUpRunnable() {
     }
-
-    public ProcessCleanUpRunnable(Serializable pid) {
-        _pid = pid;
+    
+    public ProcessCleanUpRunnable(Long pidId) {
+        _pidId = pidId;
     }
 
     public void storeToDetails(JobDetails details) {
-        details.getDetailsExt().put("pid", _pid);
+        details.getDetailsExt().put("pidId", _pidId);
     }
 
     public void restoreFromDetails(JobDetails details) {
-        _pid = (Serializable) details.getDetailsExt().get("pid");
+        _pidId = (Long) details.getDetailsExt().get("pidId");
     }
 
     public void setContexts(Contexts contexts) {
@@ -62,7 +62,7 @@ public class ProcessCleanUpRunnable impl
     }
 
     public void run() {
-        if(__log.isDebugEnabled()) __log.debug("Deleting runtime data for old 
process: " + _pid + "...");
+        if(__log.isDebugEnabled()) __log.debug("Deleting runtime data for old 
process: " + _pidId + "...");
         try {
             // deleting of a process may involve hours' of database 
transaction,
             // we need to break it down to smaller transactions
@@ -70,20 +70,20 @@ public class ProcessCleanUpRunnable impl
             do {
                 transactionResultSize = 
_contexts.scheduler.execTransaction(new Callable<Integer>() {
                     public Integer call() throws Exception {
-                        ProcessDAO process = 
_contexts.dao.getConnection().createTransientProcess(_pid);
+                        ProcessDAO process = 
_contexts.dao.getConnection().createTransientProcess(_pidId);
                         if( !(process instanceof 
DeferredProcessInstanceCleanable) ) {
                             throw new IllegalArgumentException("ProcessDAO 
does not implement DeferredProcessInstanceCleanable!!!");
                         }
                         return 
((DeferredProcessInstanceCleanable)process).deleteInstances(PROCESS_CLEANUP_TRANSACTION_SIZE);
                     }
                 });
-                if(__log.isDebugEnabled()) __log.debug("Deleted " + 
transactionResultSize + "instances for old process: " + _pid + ".");
+                if(__log.isDebugEnabled()) __log.debug("Deleted " + 
transactionResultSize + "instances for old process: " + _pidId + ".");
             } while( transactionResultSize == PROCESS_CLEANUP_TRANSACTION_SIZE 
);
         } catch (RuntimeException re) {
             throw re;
         } catch (Exception ex) {
             throw new RuntimeException(ex);
         }
-        if(__log.isInfoEnabled()) __log.info("Deleted runtime data for old 
process: " + _pid + ".");
+        if(__log.isInfoEnabled()) __log.info("Deleted runtime data for old 
process: " + _pidId + ".");
     }
 }

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/cron/RuntimeDataCleanupRunnable.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/cron/RuntimeDataCleanupRunnable.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/cron/RuntimeDataCleanupRunnable.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/cron/RuntimeDataCleanupRunnable.java
 Fri Jun 18 11:11:31 2010
@@ -56,7 +56,7 @@ public class RuntimeDataCleanupRunnable 
     public void restoreFromDetails(JobDetails details) {
         _cleanupInfo = (CleanupInfo)details.getDetailsExt().get("cleanupInfo");
         _transactionSize = 
(Integer)details.getDetailsExt().get("transactionSize");
-        _pid = (QName) details.getDetailsExt().get("pid");
+        _pid = details.getProcessId();
         _pidsToExclude = 
(Set<QName>)details.getDetailsExt().get("pidsToExclude");
     }
 

Modified: 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/memdao/BpelDAOConnectionImpl.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/memdao/BpelDAOConnectionImpl.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/memdao/BpelDAOConnectionImpl.java
 (original)
+++ 
ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/memdao/BpelDAOConnectionImpl.java
 Fri Jun 18 11:11:31 2010
@@ -78,8 +78,8 @@ class BpelDAOConnectionImpl implements B
         return _store.get(processId);
     }
 
-    public ProcessDAO createTransientProcess(Serializable id) {
-        ProcessDaoImpl process = new ProcessDaoImpl(this, _store, null, null, 
(String)id, 0);
+    public ProcessDAO createTransientProcess(Long id) {
+        ProcessDaoImpl process = new ProcessDaoImpl(this, _store, null, null, 
null, 0);
 
         return process;
     }

Modified: 
ode/trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessConfImpl.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessConfImpl.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessConfImpl.java 
(original)
+++ 
ode/trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessConfImpl.java 
Fri Jun 18 11:11:31 2010
@@ -549,7 +549,7 @@ public class ProcessConfImpl implements 
 
                     JobDetails runnableDetails = new JobDetails();
                     runnableDetails.getDetailsExt().put("cleanupInfo", 
cleanupInfo);
-                    runnableDetails.getDetailsExt().put("pid", _pid);
+                    runnableDetails.setProcessId(_pid);
                     runnableDetails.getDetailsExt().put("transactionSize", 10);
                     job.getRunnableDetailList().add(runnableDetails);
                 }
@@ -561,4 +561,4 @@ public class ProcessConfImpl implements 
 
         return jobs;
     }
-}
\ No newline at end of file
+}

Modified: 
ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java
 (original)
+++ 
ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java
 Fri Jun 18 11:11:31 2010
@@ -114,9 +114,9 @@ public class BpelDAOConnectionImpl imple
         return new ProcessDaoImpl(_sm, process);
     }
 
-    public ProcessDAO createTransientProcess(Serializable id) {
+    public ProcessDAO createTransientProcess(Long id) {
         HProcess process = new HProcess();
-        process.setId((Long)id);
+        process.setId(id);
 
         return new ProcessDaoImpl(_sm, process);
     }

Modified: 
ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessDaoImpl.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessDaoImpl.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessDaoImpl.java
 (original)
+++ 
ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessDaoImpl.java
 Fri Jun 18 11:11:31 2010
@@ -77,6 +77,10 @@ public class ProcessDaoImpl extends Hibe
         entering("ProcessDaoImpl.ProcessDaoImpl");
         _process = process;
     }
+    
+    public Long getPidId() {
+        return (Long) getId();
+    }
 
     public QName getProcessId() {
         return QName.valueOf(_process.getProcessId());

Modified: 
ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
 (original)
+++ 
ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
 Fri Jun 18 11:11:31 2010
@@ -97,11 +97,11 @@ public class BPELDAOConnectionImpl imple
         _em.persist(ret);
         return ret;
     }
-
-    public ProcessDAO createTransientProcess(Serializable id) {
+    
+    public ProcessDAO createTransientProcess(Long id) {
         ProcessDAOImpl ret = new ProcessDAOImpl(null, null, null, 0);
-        ret.setId((Long)id);
-
+        ret.setId(id);
+        
         return ret;
     }
 

Modified: 
ode/trunk/scheduler-simple/src/main/java/org/apache/ode/scheduler/simple/JdbcDelegate.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/scheduler-simple/src/main/java/org/apache/ode/scheduler/simple/JdbcDelegate.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/scheduler-simple/src/main/java/org/apache/ode/scheduler/simple/JdbcDelegate.java
 (original)
+++ 
ode/trunk/scheduler-simple/src/main/java/org/apache/ode/scheduler/simple/JdbcDelegate.java
 Fri Jun 18 11:11:31 2010
@@ -317,7 +317,7 @@ public class JdbcDelegate implements Dat
                     if (detailsExt.get("iid") != null) {
                         details.instanceId = (Long) detailsExt.get("iid");
                     }
-                    if (detailsExt.get("pid") != null) {
+                    if (detailsExt.get("pid") != null && detailsExt.get("pid") 
instanceof String) {
                         details.processId = (String) detailsExt.get("pid");
                     }
                     if (detailsExt.get("inmem") != null) {

Modified: 
ode/trunk/scheduler-simple/src/main/java/org/apache/ode/scheduler/simple/SimpleScheduler.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/scheduler-simple/src/main/java/org/apache/ode/scheduler/simple/SimpleScheduler.java?rev=955933&r1=955932&r2=955933&view=diff
==============================================================================
--- 
ode/trunk/scheduler-simple/src/main/java/org/apache/ode/scheduler/simple/SimpleScheduler.java
 (original)
+++ 
ode/trunk/scheduler-simple/src/main/java/org/apache/ode/scheduler/simple/SimpleScheduler.java
 Fri Jun 18 11:11:31 2010
@@ -738,7 +738,7 @@ public class SimpleScheduler implements 
         if (_processedSinceLastLoadTask.get(job.jobId) == null) {
             if (_outstandingJobs.putIfAbsent(job.jobId, job.schedDate) == 
null) {
                 if (job.schedDate <= System.currentTimeMillis()) {
-                    runJob(job);
+                    runTask(job);
                 } else {
                     _todo.enqueue(job);
                 }


Reply via email to