Author: lwaterman
Date: Thu Dec 7 16:11:46 2006
New Revision: 483748
URL: http://svn.apache.org/viewvc?view=rev&rev=483748
Log:
add support for delete
Modified:
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ActivityRecoveryDAOImpl.java
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ProcessDAOImpl.java
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ProcessInstanceDAOImpl.java
Modified:
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ActivityRecoveryDAOImpl.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ActivityRecoveryDAOImpl.java?view=diff&rev=483748&r1=483747&r2=483748
==============================================================================
---
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ActivityRecoveryDAOImpl.java
(original)
+++
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ActivityRecoveryDAOImpl.java
Thu Dec 7 16:11:46 2006
@@ -57,9 +57,12 @@
_reason = reason;
_dateTime = dateTime;
- // TODO: implement
- //_details = data;
- //_actions = action;
+ _details = DOMUtils.domToString(data);
+
+ String alist = actions[0];
+ for (int i = 1; i < actions.length; ++i)
+ alist += " " + actions[i];
+ _actions = alist;
_retries = retries;
@@ -87,10 +90,12 @@
public Element getDetails() {
Element ret = null;
- try {
- ret = DOMUtils.stringToDOM(_details);
- } catch (Exception e) {
- throw new RuntimeException(e);
+ if ( _details != null ) {
+ try {
+ ret = DOMUtils.stringToDOM(_details);
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
}
return ret;
}
Modified:
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java?view=diff&rev=483748&r1=483747&r2=483748
==============================================================================
---
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
(original)
+++
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
Thu Dec 7 16:11:46 2006
@@ -8,12 +8,14 @@
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
+import javax.persistence.EntityManager;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
+import javax.persistence.Transient;
import javax.xml.namespace.QName;
import org.apache.ode.bpel.common.BpelEventFilter;
@@ -30,6 +32,8 @@
@Entity
@Table(name="ODE_ROOT")
public class BPELDAOConnectionImpl implements BpelDAOConnection {
+
+ @Transient private EntityManager _em;
@Id @Column(name="ROOT_ID")
private Long _id;
@@ -47,8 +51,9 @@
private Collection<ScopeDAOImpl> _scopes = new
ArrayList<ScopeDAOImpl>();
public BPELDAOConnectionImpl() {}
- public BPELDAOConnectionImpl(Long id) {
+ public BPELDAOConnectionImpl(Long id, EntityManager em) {
_id = id;
+ _em = em;
}
public List<BpelEvent> bpelEventQuery(InstanceFilter ifilter,
@@ -64,7 +69,7 @@
}
public void close() {
- // TODO Auto-generated method stub
+ _em = null;
}
@@ -143,6 +148,14 @@
public Collection<ProcessDAO> processQuery(ProcessFilter criteria) {
// TODO Auto-generated method stub
return null;
+ }
+
+ EntityManager getEntityManager() {
+ return _em;
+ }
+
+ public void setEntityManger(EntityManager em) {
+ _em = em;
}
}
Modified:
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ProcessDAOImpl.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ProcessDAOImpl.java?view=diff&rev=483748&r1=483747&r2=483748
==============================================================================
---
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ProcessDAOImpl.java
(original)
+++
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ProcessDAOImpl.java
Thu Dec 7 16:11:46 2006
@@ -7,13 +7,17 @@
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
+import javax.persistence.EntityManager;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
+import javax.persistence.PersistenceContext;
+import javax.persistence.PersistenceUnit;
import javax.persistence.Table;
+import javax.persistence.Transient;
import javax.persistence.Version;
import javax.xml.namespace.QName;
@@ -27,6 +31,8 @@
@Entity
@Table(name="ODE_PROCESS")
public class ProcessDAOImpl implements ProcessDAO {
+ @PersistenceUnit
+ private EntityManager em;
@Id @Column(name="PROCESS_ID")
@GeneratedValue(strategy=GenerationType.AUTO)
@@ -65,8 +71,9 @@
}
public void delete() {
- // TODO Auto-generated method stub
-
+ if ( _connection.getEntityManager() != null ) {
+ _connection.getEntityManager().remove(this);
+ }
}
public Collection<ProcessInstanceDAO> findInstance(CorrelationKey
cckey) {
Modified:
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ProcessInstanceDAOImpl.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ProcessInstanceDAOImpl.java?view=diff&rev=483748&r1=483747&r2=483748
==============================================================================
---
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ProcessInstanceDAOImpl.java
(original)
+++
incubator/ode/trunk/dao-jpa/src/main/java/org/apache/ode/dao/jpa/ProcessInstanceDAOImpl.java
Thu Dec 7 16:11:46 2006
@@ -50,7 +50,7 @@
@Basic @Column(name="INSTANCE_STATE") private short _state;
@Basic @Column(name="PREVIOUS_STATE") private short _previousState;
@Lob @Column(name="EXECUTION_STATE") private byte[] _executionState;
- @Basic @Column(name="SEQUENCE") private Long _sequence;
+ @Basic @Column(name="SEQUENCE") private long _sequence;
@Basic @Column(name="DATE_CREATED") private Date _dateCreated = new
Date();
@OneToOne(fetch=FetchType.LAZY,cascade={CascadeType.ALL})
@@ -84,6 +84,7 @@
public void createActivityRecovery(String channel, long activityId,
String reason, Date dateTime, Element data, String[]
actions,
int retries) {
+
ActivityRecoveryDAO ar = new ActivityRecoveryDAOImpl(channel,
activityId, reason, dateTime, data, actions, retries);
_recoveries.add(ar);
_lastRecovery = dateTime;
@@ -100,7 +101,9 @@
}
public void delete() {
- // TODO Auto-generated method stub
+ if ( _connection.getEntityManager() != null ) {
+ _connection.getEntityManager().remove(this);
+ }
}