Author: mriou
Date: Fri Oct 31 17:34:29 2008
New Revision: 709616

URL: http://svn.apache.org/viewvc?rev=709616&view=rev
Log:
Proper instantiating POST url.

Modified:
    
ode/branches/restful/bpel-api/src/main/java/org/apache/ode/bpel/rapi/OdeRTInstanceContext.java
    
ode/branches/restful/bpel-api/src/main/java/org/apache/ode/bpel/rapi/VariableContext.java
    
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java
    
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/IncomingMessageExchangeCache.java
    
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/ODERESTProcess.java
    
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v1/RuntimeInstanceImpl.java
    
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/ExprEvaluationContextImpl.java
    
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/ExtensionContextImpl.java
    
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/OdeInternalInstance.java
    
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/RuntimeInstanceImpl.java
    
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/SCOPE.java
    
ode/branches/restful/runtimes/src/test/java/org/apache/ode/bpel/rtrep/v2/CoreBpelTest.java

Modified: 
ode/branches/restful/bpel-api/src/main/java/org/apache/ode/bpel/rapi/OdeRTInstanceContext.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/bpel-api/src/main/java/org/apache/ode/bpel/rapi/OdeRTInstanceContext.java?rev=709616&r1=709615&r2=709616&view=diff
==============================================================================
--- 
ode/branches/restful/bpel-api/src/main/java/org/apache/ode/bpel/rapi/OdeRTInstanceContext.java
 (original)
+++ 
ode/branches/restful/bpel-api/src/main/java/org/apache/ode/bpel/rapi/OdeRTInstanceContext.java
 Fri Oct 31 17:34:29 2008
@@ -36,7 +36,7 @@
  */
 public interface OdeRTInstanceContext extends IOContext, 
ProcessControlContext, RecoveryContext, VariableContext {
 
-       Long getPid();
+       Long getInstanceId();
 
        /**
         * Sends the bpel event.

Modified: 
ode/branches/restful/bpel-api/src/main/java/org/apache/ode/bpel/rapi/VariableContext.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/bpel-api/src/main/java/org/apache/ode/bpel/rapi/VariableContext.java?rev=709616&r1=709615&r2=709616&view=diff
==============================================================================
--- 
ode/branches/restful/bpel-api/src/main/java/org/apache/ode/bpel/rapi/VariableContext.java
 (original)
+++ 
ode/branches/restful/bpel-api/src/main/java/org/apache/ode/bpel/rapi/VariableContext.java
 Fri Oct 31 17:34:29 2008
@@ -91,6 +91,10 @@
 
     void initializeResource(Long parentScopeId, ResourceModel resource, String 
url);
 
+    void initializeInstantiatingUrl(String url);
+
+    String getInstantiatingUrl();
+
     void checkResourceRoute(Resource instance, String pickResponseChannel, int 
selectorIdx);
 
     /**

Modified: 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java?rev=709616&r1=709615&r2=709616&view=diff
==============================================================================
--- 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java
 (original)
+++ 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java
 Fri Oct 31 17:34:29 2008
@@ -105,7 +105,7 @@
         return "{BpelRuntimeCtx PID=" + _bpelProcess.getPID() + ", IID=" + 
_iid + "}";
     }
 
-    public Long getPid() {
+    public Long getInstanceId() {
         return _iid;
     }
 
@@ -213,6 +213,15 @@
         resourceData.set(doc.createTextNode(url));
     }
 
+    public void initializeInstantiatingUrl(String url) {
+        _dao.setInstantiatingUrl(url);
+        _instantiatingMessageExchange.setResource(url + "~POST");
+    }
+
+    public String getInstantiatingUrl() {
+        return _dao.getInstantiatingUrl();
+    }
+
     public String readResource(Long parentScopeId, ResourceModel resource) {
         ScopeDAO parent = _dao.getScope(parentScopeId);
         XmlDataDAO resourceData = parent.getVariable(resource.getName());

Modified: 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/IncomingMessageExchangeCache.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/IncomingMessageExchangeCache.java?rev=709616&r1=709615&r2=709616&view=diff
==============================================================================
--- 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/IncomingMessageExchangeCache.java
 (original)
+++ 
ode/branches/restful/engine/src/main/java/org/apache/ode/bpel/engine/IncomingMessageExchangeCache.java
 Fri Oct 31 17:34:29 2008
@@ -10,9 +10,6 @@
 
 /**
  * Manage [EMAIL PROTECTED] IncomingMessageExchangeCache} object references.
- * 
- * @author Maciej Szefler <mszefler at gmail dot com>
- * 
  */
 class IncomingMessageExchangeCache {
 

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=709616&r1=709615&r2=709616&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
 Fri Oct 31 17:34:29 2008
@@ -98,10 +98,10 @@
         if (mexdao.getPipedMessageExchangeId() != null) /* p2p */{
             p2pCall(mexdao, old);
         } else /* not p2p */{
+            RESTMessageExchangeImpl mymex = (RESTMessageExchangeImpl) 
_incomingMexCache.get(mexdao, this);
+            mymex.getResource().setUrl(url);
             if (old == MessageExchange.Status.ASYNC) {
-                RESTMessageExchangeImpl mymex = (RESTMessageExchangeImpl) 
_incomingMexCache.get(mexdao, this);
                 // Updating url for instantiating mexs so that the created 
resource url can be returned to the caller
-                mymex.getResource().setUrl(url);
                 mymex.onAsyncAck(mexdao);
             }
         }

Modified: 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v1/RuntimeInstanceImpl.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v1/RuntimeInstanceImpl.java?rev=709616&r1=709615&r2=709616&view=diff
==============================================================================
--- 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v1/RuntimeInstanceImpl.java
 (original)
+++ 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v1/RuntimeInstanceImpl.java
 Fri Oct 31 17:34:29 2008
@@ -386,7 +386,7 @@
      * Proxy to [EMAIL PROTECTED] 
org.apache.ode.bpel.rapi.ProcessControlContext# }.
      */
     public Long getPid() {
-        return _brc.getPid();
+        return _brc.getInstanceId();
     }
 
     /**

Modified: 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/ExprEvaluationContextImpl.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/ExprEvaluationContextImpl.java?rev=709616&r1=709615&r2=709616&view=diff
==============================================================================
--- 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/ExprEvaluationContextImpl.java
 (original)
+++ 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/ExprEvaluationContextImpl.java
 Fri Oct 31 17:34:29 2008
@@ -116,7 +116,7 @@
        }
 
        public Long getProcessId() {
-               return _native.getPid();
+               return _native.getInstanceId();
        }
 
        public boolean narrowTypes() {

Modified: 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/ExtensionContextImpl.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/ExtensionContextImpl.java?rev=709616&r1=709615&r2=709616&view=diff
==============================================================================
--- 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/ExtensionContextImpl.java
 (original)
+++ 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/ExtensionContextImpl.java
 Fri Oct 31 17:34:29 2008
@@ -56,7 +56,7 @@
        }
        
        public Long getProcessId() {
-               return _context.getPid();
+               return _context.getInstanceId();
        }
 
        public Map<String, OScope.Variable> getVisibleVariables() throws 
FaultException {

Modified: 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/OdeInternalInstance.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/OdeInternalInstance.java?rev=709616&r1=709615&r2=709616&view=diff
==============================================================================
--- 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/OdeInternalInstance.java
 (original)
+++ 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/OdeInternalInstance.java
 Fri Oct 31 17:34:29 2008
@@ -39,6 +39,10 @@
 
     void initializeResource(Long parentScopeId, OResource resource, String 
url);
 
+    void initializeInstantiatingUrl(String url);
+
+    String getInstantiatingUrl();
+
     String invoke(String invokeId, PartnerLinkInstance instance, Operation 
operation, Element outboundMsg, Object object)
             throws FaultException;
 
@@ -102,7 +106,7 @@
 
     void sendEvent(ProcessInstanceStartedEvent evt);
 
-    Long getPid();
+    Long getInstanceId();
 
     URI getBaseResourceURI();
 

Modified: 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/RuntimeInstanceImpl.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/RuntimeInstanceImpl.java?rev=709616&r1=709615&r2=709616&view=diff
==============================================================================
--- 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/RuntimeInstanceImpl.java
 (original)
+++ 
ode/branches/restful/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/RuntimeInstanceImpl.java
 Fri Oct 31 17:34:29 2008
@@ -111,6 +111,14 @@
         _brc.initializeResource(scopeInstanceId, resource, url);
     }
 
+    public void initializeInstantiatingUrl(String url) {
+        _brc.initializeInstantiatingUrl(url);
+    }
+
+    public String getInstantiatingUrl() {
+        return _brc.getInstantiatingUrl();
+    }
+
     public void select(PickResponseChannel pickResponseChannel, Date timeout, 
boolean createInstance, Selector[] selectors)
             throws FaultException {
 
@@ -395,8 +403,8 @@
     /**
      * Proxy to [EMAIL PROTECTED] ProcessControlContext# }.
      */
-    public Long getPid() {
-        return _brc.getPid();
+    public Long getInstanceId() {
+        return _brc.getInstanceId();
     }
 
     /**

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=709616&r1=709615&r2=709616&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
 Fri Oct 31 17:34:29 2008
@@ -36,7 +36,6 @@
 import org.apache.ode.bpel.rtrep.v2.channels.TerminationChannel;
 import org.apache.ode.bpel.rtrep.v2.channels.TerminationChannelListener;
 import org.apache.ode.bpel.rapi.InvalidProcessException;
-import org.apache.ode.bpel.rapi.ResourceModel;
 import org.apache.ode.bpel.common.FaultException;
 import org.apache.ode.jacob.ChannelListener;
 import org.apache.ode.jacob.SynchChannel;
@@ -98,7 +97,12 @@
                 String url = 
getBpelRuntime().getExpLangRuntime().evaluateAsString(
                         resource.getValue().getSubpath(), 
getEvaluationContext());
                 // TODO implement a better URL building heuristic
-                url = url + "/" + new GUID().toString();
+                if (resource.getValue().isInstantiateResource()) {
+                    url = url + "/" + getBpelRuntime().getInstanceId();
+                    getBpelRuntime().initializeInstantiatingUrl(url);
+                } else {
+                    url = getBpelRuntime().getInstantiatingUrl() + "/" + url;
+                }
 
                 
getBpelRuntime().initializeResource(_scopeFrame.scopeInstanceId, 
resource.getValue(), url);
             } catch (FaultException e) {

Modified: 
ode/branches/restful/runtimes/src/test/java/org/apache/ode/bpel/rtrep/v2/CoreBpelTest.java
URL: 
http://svn.apache.org/viewvc/ode/branches/restful/runtimes/src/test/java/org/apache/ode/bpel/rtrep/v2/CoreBpelTest.java?rev=709616&r1=709615&r2=709616&view=diff
==============================================================================
--- 
ode/branches/restful/runtimes/src/test/java/org/apache/ode/bpel/rtrep/v2/CoreBpelTest.java
 (original)
+++ 
ode/branches/restful/runtimes/src/test/java/org/apache/ode/bpel/rtrep/v2/CoreBpelTest.java
 Fri Oct 31 17:34:29 2008
@@ -72,7 +72,7 @@
         _pid = (long) 19355;
     }
 
-    public Long getPid() {
+    public Long getInstanceId() {
         return _pid;
     }
 
@@ -120,6 +120,14 @@
         //To change body of implemented methods use File | Settings | File 
Templates.
     }
 
+    public void initializeInstantiatingUrl(String url) {
+        //To change body of implemented methods use File | Settings | File 
Templates.
+    }
+
+    public String getInstantiatingUrl() {
+        return null;  //To change body of implemented methods use File | 
Settings | File Templates.
+    }
+
     public void reply(ResourceInstance resource, String bpelmex, Element 
element, QName fault) throws FaultException {
         //To change body of implemented methods use File | Settings | File 
Templates.
     }


Reply via email to