You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by ms...@apache.org on 2007/08/06 22:56:02 UTC

svn commit: r563275 - in /ode/branches/bart/dao-jpa/src/main/java/org/apache/ode/dao/jpa: BPELDAOConnectionImpl.java MessageExchangeDAOImpl.java

Author: mszefler
Date: Mon Aug  6 13:56:01 2007
New Revision: 563275

URL: http://svn.apache.org/viewvc?view=rev&rev=563275
Log:
BART, some additinal refactorings. New model to fix concurrency problems in Partner invokes.

Modified:
    ode/branches/bart/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
    ode/branches/bart/dao-jpa/src/main/java/org/apache/ode/dao/jpa/MessageExchangeDAOImpl.java

Modified: ode/branches/bart/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/bart/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java?view=diff&rev=563275&r1=563274&r2=563275
==============================================================================
--- ode/branches/bart/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java (original)
+++ ode/branches/bart/dao-jpa/src/main/java/org/apache/ode/dao/jpa/BPELDAOConnectionImpl.java Mon Aug  6 13:56:01 2007
@@ -69,8 +69,8 @@
         _em = null;
     }
 
-    public MessageExchangeDAO createMessageExchange(char dir) {
-        MessageExchangeDAOImpl ret = new MessageExchangeDAOImpl(dir);
+    public MessageExchangeDAO createMessageExchange(String mexId, char dir) {
+        MessageExchangeDAOImpl ret = new MessageExchangeDAOImpl(mexId, dir);
         _em.persist(ret);
         return ret;
     }
@@ -152,7 +152,11 @@
 	}
 	
     public MessageExchangeDAO getMessageExchange(String mexid) {
-        return _em.find(MessageExchangeDAOImpl.class, mexid);
+        List l = _em.createQuery("select x from MesssageExchangeDAOImpl x where x._mexId = ?1")
+        .setParameter(1, mexid).getResultList();
+        if (l.size() == 0) return null;
+        MessageExchangeDAOImpl m = (MessageExchangeDAOImpl) l.get(0);
+        return m;
     }
 
     public EntityManager getEntityManager() {

Modified: ode/branches/bart/dao-jpa/src/main/java/org/apache/ode/dao/jpa/MessageExchangeDAOImpl.java
URL: http://svn.apache.org/viewvc/ode/branches/bart/dao-jpa/src/main/java/org/apache/ode/dao/jpa/MessageExchangeDAOImpl.java?view=diff&rev=563275&r1=563274&r2=563275
==============================================================================
--- ode/branches/bart/dao-jpa/src/main/java/org/apache/ode/dao/jpa/MessageExchangeDAOImpl.java (original)
+++ ode/branches/bart/dao-jpa/src/main/java/org/apache/ode/dao/jpa/MessageExchangeDAOImpl.java Mon Aug  6 13:56:01 2007
@@ -25,6 +25,7 @@
 import org.apache.ode.bpel.dao.PartnerLinkDAO;
 import org.apache.ode.bpel.dao.ProcessDAO;
 import org.apache.ode.bpel.dao.ProcessInstanceDAO;
+import org.apache.ode.bpel.iapi.MessageExchange.AckType;
 import org.apache.ode.utils.DOMUtils;
 import org.apache.ode.utils.uuid.UUID;
 import org.w3c.dom.Element;
@@ -91,6 +92,9 @@
     private String _correlationKeys;
     @Basic @Column(name="PIPED_ID")
     private String _pipedMessageExchangeId;
+    
+    @Basic @Column(name="ACK_TYPE")
+    private String _ackType;
 
     @OneToMany(targetEntity=MexProperty.class,mappedBy="_mex",fetch=FetchType.EAGER,cascade={CascadeType.ALL})
     private Collection<MexProperty> _props = new ArrayList<MexProperty>();
@@ -123,9 +127,9 @@
 
     public MessageExchangeDAOImpl() {}
     
-	public MessageExchangeDAOImpl(char direction){
+	public MessageExchangeDAOImpl(String mexId, char direction){
 		_direction = direction;
-		_id = new UUID().toString();
+		_id = mexId;
 	}
 	
 	public MessageDAO createMessage(QName type) {
@@ -368,6 +372,10 @@
     public void setFailureType(String failureType) {
         _failureType = failureType;
     }
+    
+    public String getFailureType() {
+        return _failureType;
+    }
 
     public void setInvocationStyle(String invocationStyle) {
         _istyle = invocationStyle;
@@ -378,7 +386,14 @@
     }
 
     public void setTimeout(long timeout) {
-        // TODO Auto-generated method stub
-        
+        _timeout = timeout;
+    }
+
+    public AckType getAckType() {
+        return _ackType == null ? null : AckType.valueOf(_ackType);
+    }
+
+    public void setAckType(AckType ackType) {
+        _ackType = ackType == null ? null :ackType.toString();
     }
 }