You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by rr...@apache.org on 2010/04/19 17:38:10 UTC
svn commit: r935626 - in /ode/branches/APACHE_ODE_1.X:
bpel-api/src/main/java/org/apache/ode/bpel/evt/
bpel-dao/src/main/java/org/apache/ode/bpel/dao/
bpel-runtime/src/main/java/org/apache/ode/bpel/engine/
bpel-runtime/src/main/java/org/apache/ode/bpel...
Author: rr
Date: Mon Apr 19 15:38:09 2010
New Revision: 935626
URL: http://svn.apache.org/viewvc?rev=935626&view=rev
Log:
ODE-811: BPEL_SCOPE table entries show only ACTIVE scope states (fix)
Modified:
ode/branches/APACHE_ODE_1.X/bpel-api/src/main/java/org/apache/ode/bpel/evt/ScopeCompletionEvent.java
ode/branches/APACHE_ODE_1.X/bpel-dao/src/main/java/org/apache/ode/bpel/dao/ScopeStateEnum.java
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessStatusConverter.java
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPE.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java
ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ScopeDaoImpl.java
ode/branches/APACHE_ODE_1.X/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ScopeDAOImpl.java
Modified: ode/branches/APACHE_ODE_1.X/bpel-api/src/main/java/org/apache/ode/bpel/evt/ScopeCompletionEvent.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-api/src/main/java/org/apache/ode/bpel/evt/ScopeCompletionEvent.java?rev=935626&r1=935625&r2=935626&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-api/src/main/java/org/apache/ode/bpel/evt/ScopeCompletionEvent.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-api/src/main/java/org/apache/ode/bpel/evt/ScopeCompletionEvent.java Mon Apr 19 15:38:09 2010
@@ -26,32 +26,6 @@ import javax.xml.namespace.QName;
public class ScopeCompletionEvent extends ScopeEvent {
private static final long serialVersionUID = 1L;
- private boolean _success;
- private QName _fault;
-
- public ScopeCompletionEvent(boolean success, QName fault) {
- _success = success;
- _fault = fault;
+ public ScopeCompletionEvent() {
}
-
- /**
- * @param fault The fault to set.
- */
- public void setFault(QName fault) {
- _fault = fault;
- }
-
- /**
- * @return Returns the fault.
- */
- public QName getFault() {
- return _fault;
- }
-
- public boolean isSuccess() {
- return _success;
- }
- public void setSuccess(boolean success) {
- _success = success;
- }
}
Modified: ode/branches/APACHE_ODE_1.X/bpel-dao/src/main/java/org/apache/ode/bpel/dao/ScopeStateEnum.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-dao/src/main/java/org/apache/ode/bpel/dao/ScopeStateEnum.java?rev=935626&r1=935625&r2=935626&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-dao/src/main/java/org/apache/ode/bpel/dao/ScopeStateEnum.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-dao/src/main/java/org/apache/ode/bpel/dao/ScopeStateEnum.java Mon Apr 19 15:38:09 2010
@@ -18,39 +18,6 @@
*/
package org.apache.ode.bpel.dao;
-public class ScopeStateEnum {
- /** DOCUMENTME */
- public static final ScopeStateEnum ACTIVE = new ScopeStateEnum("ACTIVE");
-
- /** DOCUMENTME */
- public static final ScopeStateEnum FAULTED = new ScopeStateEnum("FAULTED");
-
- /** DOCUMENTME */
- public static final ScopeStateEnum FAULTHANDLER = new ScopeStateEnum("FAULTHANDLER");
-
- /** DOCUMENTME */
- public static final ScopeStateEnum COMPLETED = new ScopeStateEnum("COMPLETED");
-
- /** DOCUMENTME */
- public static final ScopeStateEnum COMPENSATING = new ScopeStateEnum("COMPENSATING");
-
- /** DOCUMENTME */
- public static final ScopeStateEnum COMPENSATED = new ScopeStateEnum("COMPENSATED");
- private final String myName; // for debug only
-
- public ScopeStateEnum(String name) {
- myName = name;
- }
-
- public boolean equals(Object o) {
- return ((ScopeStateEnum)o).myName.equals(myName);
- }
-
- public int hashCode() {
- return myName.hashCode();
- }
-
- public String toString() {
- return myName;
- }
+public enum ScopeStateEnum {
+ NEW, ACTIVE, FAULT, COMPLETED
}
Modified: ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java?rev=935626&r1=935625&r2=935626&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java Mon Apr 19 15:38:09 2010
@@ -48,6 +48,7 @@ import org.apache.ode.bpel.dao.PartnerLi
import org.apache.ode.bpel.dao.ProcessDAO;
import org.apache.ode.bpel.dao.ProcessInstanceDAO;
import org.apache.ode.bpel.dao.ScopeDAO;
+import org.apache.ode.bpel.dao.ScopeStateEnum;
import org.apache.ode.bpel.dao.XmlDataDAO;
import org.apache.ode.bpel.evar.ExternalVariableModuleException;
import org.apache.ode.bpel.evar.ExternalVariableModule.Value;
@@ -57,7 +58,10 @@ import org.apache.ode.bpel.evt.ProcessIn
import org.apache.ode.bpel.evt.ProcessInstanceStateChangeEvent;
import org.apache.ode.bpel.evt.ProcessMessageExchangeEvent;
import org.apache.ode.bpel.evt.ProcessTerminationEvent;
+import org.apache.ode.bpel.evt.ScopeCompletionEvent;
import org.apache.ode.bpel.evt.ScopeEvent;
+import org.apache.ode.bpel.evt.ScopeFaultEvent;
+import org.apache.ode.bpel.evt.ScopeStartEvent;
import org.apache.ode.bpel.iapi.BpelEngineException;
import org.apache.ode.bpel.iapi.ContextException;
import org.apache.ode.bpel.iapi.Endpoint;
@@ -1119,6 +1123,11 @@ public class BpelRuntimeContextImpl impl
sendEvent(evt);
}
+ private void saveScopeState(Long scopeId, ScopeStateEnum scopeState) {
+ ScopeDAO scope = _dao.getScope(scopeId);
+ scope.setState(scopeState);
+ }
+
/**
* @see BpelRuntimeContext#sendEvent(org.apache.ode.bpel.evt.ProcessInstanceEvent)
*/
@@ -1132,7 +1141,17 @@ public class BpelRuntimeContextImpl impl
// filter scopes
List<String> scopeNames = null;
if (event instanceof ScopeEvent) {
- scopeNames = ((ScopeEvent) event).getParentScopesNames();
+ ScopeEvent sevent = (ScopeEvent) event;
+
+ scopeNames = sevent.getParentScopesNames();
+
+ if (sevent instanceof ScopeStartEvent) {
+ saveScopeState(sevent.getScopeId(), ScopeStateEnum.ACTIVE);
+ } else if (sevent instanceof ScopeCompletionEvent) {
+ saveScopeState(sevent.getScopeId(), ScopeStateEnum.COMPLETED);
+ } else if (sevent instanceof ScopeFaultEvent) {
+ saveScopeState(sevent.getScopeId(), ScopeStateEnum.FAULT);
+ }
}
// saving
Modified: ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java?rev=935626&r1=935625&r2=935626&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessAndInstanceManagementImpl.java Mon Apr 19 15:38:09 2010
@@ -1164,8 +1164,7 @@ public class ProcessAndInstanceManagemen
info.setMexId(((ProcessMessageExchangeEvent) event).getMessageExchangeId());
}
if (event instanceof ScopeCompletionEvent) {
- info.setSuccess(((ScopeCompletionEvent) event).isSuccess());
- info.setFault(((ScopeCompletionEvent) event).getFault());
+ info.setSuccess(true);
}
if (event instanceof ScopeEvent) {
info.setScopeId(((ScopeEvent) event).getScopeId());
Modified: ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessStatusConverter.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessStatusConverter.java?rev=935626&r1=935625&r2=935626&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessStatusConverter.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/ProcessStatusConverter.java Mon Apr 19 15:38:09 2010
@@ -61,11 +61,8 @@ class ProcessStatusConverter {
}
__scopeStateMap.put(ScopeStateEnum.ACTIVE, TScopeStatus.ACTIVE);
- __scopeStateMap.put(ScopeStateEnum.COMPENSATED,TScopeStatus.COMPENSATED);
- __scopeStateMap.put(ScopeStateEnum.COMPENSATING,TScopeStatus.COMPENSATING);
__scopeStateMap.put(ScopeStateEnum.COMPLETED,TScopeStatus.COMPLETED);
- __scopeStateMap.put(ScopeStateEnum.FAULTED,TScopeStatus.FAULTED);
- __scopeStateMap.put(ScopeStateEnum.FAULTHANDLER,TScopeStatus.FAULTED);
+ __scopeStateMap.put(ScopeStateEnum.FAULT,TScopeStatus.FAULTED);
}
Modified: ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPE.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPE.java?rev=935626&r1=935625&r2=935626&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPE.java (original)
+++ ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPE.java Mon Apr 19 15:38:09 2010
@@ -30,6 +30,7 @@ import javax.xml.namespace.QName;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.apache.ode.bpel.evt.ScopeCompletionEvent;
import org.apache.ode.bpel.evt.ScopeFaultEvent;
import org.apache.ode.bpel.evt.ScopeStartEvent;
import org.apache.ode.bpel.evt.VariableModificationEvent;
@@ -352,6 +353,8 @@ class SCOPE extends ACTIVITY {
});
}
} else /* completed ok */ {
+ sendEvent(new ScopeCompletionEvent());
+
if (_oscope.compensationHandler != null) {
CompensationHandler compensationHandler = new CompensationHandler(
_scopeFrame,
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java?rev=935626&r1=935625&r2=935626&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java Mon Apr 19 15:38:09 2010
@@ -220,7 +220,7 @@ public class ProcessInstanceDaoImpl exte
: null);
scope.setName(name);
scope.setScopeModelId(scopeModelId);
- scope.setState(ScopeStateEnum.ACTIVE.toString());
+ scope.setState(ScopeStateEnum.NEW.toString());
scope.setInstance(_instance);
scope.setCreated(new Date());
// _instance.addScope(scope);
Modified: ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ScopeDaoImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ScopeDaoImpl.java?rev=935626&r1=935625&r2=935626&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ScopeDaoImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ScopeDaoImpl.java Mon Apr 19 15:38:09 2010
@@ -121,7 +121,7 @@ public class ScopeDaoImpl extends Hibern
* @see org.apache.ode.bpel.dao.ScopeDAO#getState()
*/
public ScopeStateEnum getState() {
- return new ScopeStateEnum(_scope.getState());
+ return ScopeStateEnum.valueOf(_scope.getState());
}
/**
* @see org.apache.ode.bpel.dao.ScopeDAO#getName()
Modified: ode/branches/APACHE_ODE_1.X/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ScopeDAOImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ScopeDAOImpl.java?rev=935626&r1=935625&r2=935626&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ScopeDAOImpl.java (original)
+++ ode/branches/APACHE_ODE_1.X/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ScopeDAOImpl.java Mon Apr 19 15:38:09 2010
@@ -163,7 +163,7 @@ public class ScopeDAOImpl extends OpenJP
}
public ScopeStateEnum getState() {
- return new ScopeStateEnum(_scopeState);
+ return ScopeStateEnum.valueOf(_scopeState);
}
public XmlDataDAO getVariable(String varName) {