Author: mriou
Date: Thu Mar  5 21:32:57 2009
New Revision: 750598

URL: http://svn.apache.org/viewvc?rev=750598&view=rev
Log:
Resource routes cleanup.

Modified:
    
ode/branches/restful/bpel-dao/src/main/java/org/apache/ode/bpel/dao/BpelDAOConnection.java
    
ode/branches/restful/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java
    
ode/branches/restful/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
    
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/ODERESTProcess.java
    
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/memdao/BpelDAOConnectionImpl.java
    
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/SCOPE.java

Modified: 
ode/branches/restful/bpel-dao/src/main/java/org/apache/ode/bpel/dao/BpelDAOConnection.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/bpel-dao/src/main/java/org/apache/ode/bpel/dao/BpelDAOConnection.java?rev=750598&r1=750597&r2=750598&view=diff
==============================================================================
--- 
ode/branches/restful/bpel-dao/src/main/java/org/apache/ode/bpel/dao/BpelDAOConnection.java
 (original)
+++ 
ode/branches/restful/bpel-dao/src/main/java/org/apache/ode/bpel/dao/BpelDAOConnection.java
 Thu Mar  5 21:32:57 2009
@@ -121,4 +121,6 @@
 
     ResourceRouteDAO getResourceRoute(String url, String method);
 
+    void deleteResourceRoute(String url, String method);
+
 }

Modified: 
ode/branches/restful/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java?rev=750598&r1=750597&r2=750598&view=diff
==============================================================================
--- 
ode/branches/restful/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java
 (original)
+++ 
ode/branches/restful/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/BpelDAOConnectionImpl.java
 Thu Mar  5 21:32:57 2009
@@ -97,6 +97,11 @@
         }
     }
 
+    public void deleteResourceRoute(String url, String method) {
+        _session.createQuery("delete from HResourceRoute r where r.url = :url 
and r.method = :method")
+                .setString("url", url).setString("method", 
method).executeUpdate();
+    }
+
     public ProcessDAO createProcess(QName pid, QName type, String guid, long 
version) {
         HProcess process = new HProcess();
         process.setProcessId(pid.toString());

Modified: 
ode/branches/restful/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java?rev=750598&r1=750597&r2=750598&view=diff
==============================================================================
--- 
ode/branches/restful/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
 (original)
+++ 
ode/branches/restful/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
 Thu Mar  5 21:32:57 2009
@@ -307,6 +307,11 @@
         return m;
     }
 
+    public void deleteResourceRoute(String url, String method) {
+        _em.createQuery("delete from ResourceRouteDAOImpl r where r._url = ?1 
and r._method = ?2")
+            .setParameter(1, url).setParameter(2, method).executeUpdate();
+    }
+
     public EntityManager getEntityManager() {
         return _em;
     }

Modified: 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/ODERESTProcess.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/ODERESTProcess.java?rev=750598&r1=750597&r2=750598&view=diff
==============================================================================
--- 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/ODERESTProcess.java
 (original)
+++ 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/ODERESTProcess.java
 Thu Mar  5 21:32:57 2009
@@ -100,8 +100,8 @@
                 // TODO avoid reloading the resource routing, it's just been 
loaded by the server on mex creation
                 String[] urlMeth = mexdao.getResource().split("~");
                 ResourceRouteDAO rr = 
_contexts.dao.getConnection().getResourceRoute(urlMeth[0], urlMeth[1]);
-                // This really should have been caught by the server
                 if (rr == null) throw new BpelEngineException("NoSuchResource: 
" + mexdao.getResource());
+
                 mexdao.setInstance(rr.getInstance());
                 mexdao.setChannel(rr.getPickResponseChannel() + "&" + 
rr.getSelectorIdx());
 
@@ -122,7 +122,8 @@
 
                     scheduleWorkEvent(we, null);
                 }
-
+                // Cleaning up
+                _contexts.dao.getConnection().deleteResourceRoute(urlMeth[0], 
urlMeth[1]);
             }
         } finally {
             // If we did not get an ACK during this method, then mark this MEX 
as needing an ASYNC wake-up

Modified: 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/memdao/BpelDAOConnectionImpl.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/memdao/BpelDAOConnectionImpl.java?rev=750598&r1=750597&r2=750598&view=diff
==============================================================================
--- 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/memdao/BpelDAOConnectionImpl.java
 (original)
+++ 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/memdao/BpelDAOConnectionImpl.java
 Thu Mar  5 21:32:57 2009
@@ -235,6 +235,10 @@
         return _resRouteStore.get(url+"~"+method);
     }
 
+    public void deleteResourceRoute(String url, String method) {
+        _resRouteStore.remove(url+"~"+method);
+    }
+
     public void addResourceRoute(ResourceRouteDAOImpl rroute) {
         _resRouteStore.put(rroute.getUrl()+"~"+rroute.getMethod(), rroute);
     }

Modified: 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/SCOPE.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/SCOPE.java?rev=750598&r1=750597&r2=750598&view=diff
==============================================================================
--- 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/SCOPE.java
 (original)
+++ 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/SCOPE.java
 Thu Mar  5 21:32:57 2009
@@ -123,6 +123,7 @@
             try {
                 String url = 
getBpelRuntime().getExpLangRuntime().evaluateAsString(
                         resource.getSubpath(), getEvaluationContext());
+                if (url.endsWith("/")) url = url.substring(0, url.length() - 
1);
                 url = getBpelRuntime().getInstantiatingUrl() + url;
 
                 
getBpelRuntime().initializeResource(_scopeFrame.scopeInstanceId, resource, url);


Reply via email to