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.
}