You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by as...@apache.org on 2006/11/11 00:23:07 UTC
svn commit: r473571 - in /incubator/ode/trunk:
bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/
bpel-obj/src/main/java/org/apache/ode/bpel/o/
bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/
bpel-runtime/src/test/resources/recovery/
Author: assaf
Date: Fri Nov 10 15:23:07 2006
New Revision: 473571
URL: http://svn.apache.org/viewvc?view=rev&rev=473571
Log:
Removed SJF: suppressJoinFailure is now handled by ACTIVITYGUARD without creating a fake scope, see BPEL 2.0 change in public review draft
Modified:
incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/BpelCompiler.java
incubator/ode/trunk/bpel-obj/src/main/java/org/apache/ode/bpel/o/OActivity.java
incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ACTIVITYGUARD.java
incubator/ode/trunk/bpel-runtime/src/test/resources/recovery/failure-to-cancel.bpel
Modified: incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/BpelCompiler.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/BpelCompiler.java?view=diff&rev=473571&r1=473570&r2=473571
==============================================================================
--- incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/BpelCompiler.java (original)
+++ incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/BpelCompiler.java Fri Nov 10 15:23:07 2006
@@ -730,49 +730,19 @@
break;
}
- OActivity ret;
+ OActivity compiled;
try {
- if (_supressJoinFailure)
- ret = compileSJF(source);
- else
- ret = compileSLC(source);
+ compiled = (source instanceof ScopeLikeActivity) ?
+ compileSLC((ScopeLikeActivity)source) :
+ compileActivity(source);
+ compiled.suppressJoinFailure = _supressJoinFailure;
} finally {
_supressJoinFailure = previousSupressJoinFailure;
}
-
if (__log.isDebugEnabled())
- __log.debug("Compiled activity " + ret);
-
- return ret;
- }
-
- private OActivity compileSJF(final Activity source) {
- final OScope oscope = new OScope(_oprocess, getCurrent());
- oscope.name = createName(source);
- oscope.debugInfo = createDebugInfo(source, "suppress join failure scope for " + source);
- DefaultActivityGenerator.defaultExtensibilityElements(oscope, source);
-
- compile(oscope, null, new Runnable() {
- public void run() {
- oscope.activity = compileSLC(source);
- final OCatch joinFailureCatch = new OCatch(_oprocess, getCurrent());
- joinFailureCatch.name = "__suppressJoinFailureCatch:" + oscope.name;
- joinFailureCatch.debugInfo = createDebugInfo(source, "suppress join failure catch for " + source);
- compile(joinFailureCatch, null, new Runnable() {
- public void run() {
- joinFailureCatch.faultName = _oprocess.constants.qnJoinFailure;
- joinFailureCatch.faultVariable = null;
- joinFailureCatch.activity = createDefaultCompensateActivity(source, "Auto-generated compensation for suppress-join-failure handler for " + source);
- }
- });
-
- oscope.faultHandler = new OFaultHandler(_oprocess);
- oscope.faultHandler.catchBlocks.add(joinFailureCatch);
- compile((TerminationHandler) null);
- compile((CompensationHandler)null);
- }});
- return oscope;
+ __log.debug("Compiled activity " + compiled);
+ return compiled;
}
private OCompensate createDefaultCompensateActivity(BpelObject source, String desc) {
@@ -782,36 +752,23 @@
return activity;
}
- public OScope compileSLC(final ScopeLikeActivity source, final OScope.Variable[] variables) {
+ public OScope compileSLC(final ScopeLikeActivity source) {
final OScope implicitScope = new OScope(_oprocess, getCurrent());
implicitScope.name = createName(source);
implicitScope.debugInfo = createDebugInfo(source, "Scope-like construct " + source);
compileScope(implicitScope, source.getScope(), new Runnable() {
public void run() {
- for (OScope.Variable v : variables) {
- v.declaringScope = implicitScope;
- implicitScope.addLocalVariable(v);
- }
-
if (source instanceof ScopeActivity)
implicitScope.activity = compile(((ScopeActivity)source).getChildActivity());
else
- implicitScope.activity = compileActivity(true, source);
-
+ implicitScope.activity = compileActivity(source);
}
});
return implicitScope;
}
- public OActivity compileSLC(final Activity source) {
- if (source instanceof ScopeLikeActivity)
- return compileSLC((ScopeLikeActivity)source, new OScope.Variable[0]);
-
- return compileActivity(true, source);
- }
-
- private OActivity compileActivity(final boolean doLinks, final Activity source) {
+ private OActivity compileActivity(final Activity source) {
final ActivityGenerator actgen = findActivityGen(source);
final OActivity oact = actgen.newInstance(source);
oact.name = createName(source);
@@ -819,8 +776,7 @@
_compiledActivities.add(oact);
compile(oact, source, new Runnable() {
public void run() {
- if (doLinks)
- compileLinks(source);
+ compileLinks(source);
actgen.compile(oact,source);
}
});
Modified: incubator/ode/trunk/bpel-obj/src/main/java/org/apache/ode/bpel/o/OActivity.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-obj/src/main/java/org/apache/ode/bpel/o/OActivity.java?view=diff&rev=473571&r1=473570&r2=473571
==============================================================================
--- incubator/ode/trunk/bpel-obj/src/main/java/org/apache/ode/bpel/o/OActivity.java (original)
+++ incubator/ode/trunk/bpel-obj/src/main/java/org/apache/ode/bpel/o/OActivity.java Fri Nov 10 15:23:07 2006
@@ -31,6 +31,7 @@
static final long serialVersionUID = -1L ;
public OExpression joinCondition;
+ public boolean suppressJoinFailure;
public final Set<OLink>sourceLinks = new HashSet<OLink>();
public final Set<OLink>targetLinks = new HashSet<OLink>();
public String name;
Modified: incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ACTIVITYGUARD.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ACTIVITYGUARD.java?view=diff&rev=473571&r1=473570&r2=473571
==============================================================================
--- incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ACTIVITYGUARD.java (original)
+++ incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ACTIVITYGUARD.java Fri Nov 10 15:23:07 2006
@@ -90,10 +90,15 @@
instance(createActivity(activity));
instance(new TCONDINTERCEPT(activity.parent));
} else {
- FaultData fault = null;
- // TODO: need to check suppressJoinFailure
- fault = createFault(_oactivity.getOwner().constants.qnJoinFailure,_oactivity);
- _self.parent.completed(fault, CompensationHandler.emptySet());
+ if (_oactivity.suppressJoinFailure) {
+ _self.parent.completed(null, CompensationHandler.emptySet());
+ if (__log.isDebugEnabled())
+ __log.debug("Join condition false, suppress join failureon activity " + _self.aId);
+ } else {
+ FaultData fault = null;
+ fault = createFault(_oactivity.getOwner().constants.qnJoinFailure,_oactivity);
+ _self.parent.completed(fault, CompensationHandler.emptySet());
+ }
// Dead path activity.
dpe(_oactivity);
Modified: incubator/ode/trunk/bpel-runtime/src/test/resources/recovery/failure-to-cancel.bpel
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-runtime/src/test/resources/recovery/failure-to-cancel.bpel?view=diff&rev=473571&r1=473570&r2=473571
==============================================================================
--- incubator/ode/trunk/bpel-runtime/src/test/resources/recovery/failure-to-cancel.bpel (original)
+++ incubator/ode/trunk/bpel-runtime/src/test/resources/recovery/failure-to-cancel.bpel Fri Nov 10 15:23:07 2006
@@ -66,9 +66,7 @@
partnerLink="instantiatingPartnerLink"
portType="tns:ResponsePortType"
operation="respond"
- inputVariable="response"
- suppressJoinFailure="yes">
- </invoke>
+ inputVariable="response"/>
</sequence>
</flow>
</sequence>