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);