Author: mszefler
Date: Thu Sep 21 11:32:41 2006
New Revision: 448626

URL: http://svn.apache.org/viewvc?view=rev&rev=448626
Log:
Instance-level locking. 

Modified:
    
incubator/ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/ProcessInstanceDAO.java
    
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageRouteDaoImpl.java
    
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java
    
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HCorrelatorMessage.java
    
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HCorrelatorSelector.java
    
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcess.java
    
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcessInstance.java
    
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/hobj/HObject.java

Modified: 
incubator/ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/ProcessInstanceDAO.java
URL: 
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/ProcessInstanceDAO.java?view=diff&rev=448626&r1=448625&r2=448626
==============================================================================
--- 
incubator/ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/ProcessInstanceDAO.java
 (original)
+++ 
incubator/ode/trunk/bpel-dao/src/main/java/org/apache/ode/bpel/dao/ProcessInstanceDAO.java
 Thu Sep 21 11:32:41 2006
@@ -244,9 +244,6 @@
    */
   void deleteActivityRecovery(String channel);
 
-  /** Expermiental -- lock. */
-  //public void lock();
-
   /**
    * Transport object holding the date of the first and last instance event
    * along with the number events.

Modified: 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageRouteDaoImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageRouteDaoImpl.java?view=diff&rev=448626&r1=448625&r2=448626
==============================================================================
--- 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageRouteDaoImpl.java
 (original)
+++ 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/MessageRouteDaoImpl.java
 Thu Sep 21 11:32:41 2006
@@ -22,31 +22,48 @@
 import org.apache.ode.bpel.dao.ProcessInstanceDAO;
 import org.apache.ode.daohib.SessionManager;
 import org.apache.ode.daohib.bpel.hobj.HCorrelatorSelector;
+import org.apache.ode.daohib.bpel.hobj.HProcessInstance;
+import org.hibernate.Query;
 
 /**
  * Hibernate-based [EMAIL PROTECTED] MessageRouteDAO} implementation.
  */
 class MessageRouteDaoImpl extends HibernateDao implements MessageRouteDAO {
-       
-  private HCorrelatorSelector _selector;
 
-       public MessageRouteDaoImpl(SessionManager sm, HCorrelatorSelector hobj) 
{
-               super(sm, hobj);
-    _selector = hobj;
-       }
-       /**
-        * @see org.apache.ode.bpel.dao.MessageRouteDAO#getTargetInstance()
-        */
-       public ProcessInstanceDAO getTargetInstance() {
-               return new ProcessInstanceDaoImpl(_sm, _selector.getInstance());
-       }
-
-  public String getGroupId() {
-    return _selector.getGroupId();
-  }
-
-  public int getIndex() {
-    return _selector.getIndex();
-  }
+    private static final String LOCK_INSTANCE = "update " + 
HProcessInstance.class.getName()
+            + " set lock=lock+1 where id=?";
+
+    private HCorrelatorSelector _selector;
+
+    private boolean _locked = false;
+
+    public MessageRouteDaoImpl(SessionManager sm, HCorrelatorSelector hobj) {
+        super(sm, hobj);
+        _selector = hobj;
+    }
+
+    /**
+     * @see org.apache.ode.bpel.dao.MessageRouteDAO#getTargetInstance()
+     */
+    public ProcessInstanceDAO getTargetInstance() {
+        // First we need to reliably lock the instance:
+        if (!_locked) {
+            Query q = getSession().createQuery(LOCK_INSTANCE);
+            q.setLong(0, _selector.getInstance().getId());
+            q.executeUpdate();
+            _locked = true;
+        }
+
+        // now it is safe to return
+        return new ProcessInstanceDaoImpl(_sm, _selector.getInstance());
+    }
+
+    public String getGroupId() {
+        return _selector.getGroupId();
+    }
+
+    public int getIndex() {
+        return _selector.getIndex();
+    }
 
 }

Modified: 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java?view=diff&rev=448626&r1=448625&r2=448626
==============================================================================
--- 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java
 (original)
+++ 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/ProcessInstanceDaoImpl.java
 Thu Sep 21 11:32:41 2006
@@ -384,7 +384,7 @@
       }
     }
   }
-
+  
   public BpelDAOConnection getConnection() {
     return new BpelDAOConnectionImpl(_sm);
   }

Modified: 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HCorrelatorMessage.java
URL: 
http://svn.apache.org/viewvc/incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HCorrelatorMessage.java?view=diff&rev=448626&r1=448625&r2=448626
==============================================================================
--- 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HCorrelatorMessage.java
 (original)
+++ 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HCorrelatorMessage.java
 Thu Sep 21 11:32:41 2006
@@ -18,17 +18,19 @@
  */
 package org.apache.ode.daohib.bpel.hobj;
 
+import org.apache.ode.daohib.hobj.HObject;
+
 /**
- * @hibernate.class table="BPEL_UNMATCHED" 
+ * @hibernate.class table="BPEL_UNMATCHED" lazy="true"
  */
-public class HCorrelatorMessage extends HCorrelatorEntry {
+public class HCorrelatorMessage extends HObject {
 
     private HMessageExchange _messageExchange;
     private HCorrelator _correlator;
     private String _correlationKey;
 
     /**
-     * @hibernate.many-to-one column="MEX"
+     * @hibernate.many-to-one column="MEX" not-null="true"
      */
     public HMessageExchange getMessageExchange() {
         return _messageExchange;
@@ -60,7 +62,7 @@
 
     /**
      * @hibernate.many-to-one
-     * @hibernate.column name="CORRELATOR" index="IDX_UNMATCHED_CORRELATOR"
+     * @hibernate.column name="CORRELATOR" index="IDX_UNMATCHED_CORRELATOR" 
not-null="true"
      */
     public HCorrelator getCorrelator() {
         return _correlator;

Modified: 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HCorrelatorSelector.java
URL: 
http://svn.apache.org/viewvc/incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HCorrelatorSelector.java?view=diff&rev=448626&r1=448625&r2=448626
==============================================================================
--- 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HCorrelatorSelector.java
 (original)
+++ 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HCorrelatorSelector.java
 Thu Sep 21 11:32:41 2006
@@ -18,11 +18,13 @@
  */
 package org.apache.ode.daohib.bpel.hobj;
 
+import org.apache.ode.daohib.hobj.HObject;
+
 /**
- * @hibernate.class table="BPEL_SELECTORS"
+ * @hibernate.class table="BPEL_SELECTORS" lazy="true"
  * 
  */
-public class HCorrelatorSelector extends HCorrelatorEntry {
+public class HCorrelatorSelector extends HObject {
 
     private HProcessInstance _instance;
 
@@ -34,10 +36,8 @@
 
     private String _correlationKey;
     
-    private int _lock;
-
     /**
-     * @hibernate.many-to-one column="PIID"
+     * @hibernate.many-to-one column="PIID" not-null="true"
      */
     public HProcessInstance getInstance() {
         return _instance;
@@ -49,7 +49,7 @@
 
     /**
      * @hibernate.property column="SELGRPID"
-     * @hibernate.column name="SELGRPID" index="IDX_SELECTOR_SELGRPID"
+     * @hibernate.column name="SELGRPID" index="IDX_SELECTOR_SELGRPID" 
not-null="true"
      */
     public String getGroupId() {
         return _groupId;
@@ -60,7 +60,7 @@
     }
 
     /**
-     * @hibernate.property column="IDX" not-null="true"
+     * @hibernate.property column="IDX" not-null="true" not-null="true"
      */
     public int getIndex() {
         return _idx;
@@ -70,16 +70,6 @@
         _idx = idx;
     }
     
-    /**
-     * @hibernate.property column="LOCK" not-null="true"
-     */
-    public int getLock() {
-        return _lock;
-    }
-    
-    public void setLock(int lock) {
-        _lock = lock;
-    }
     
     @Override
     public String toString() {
@@ -88,7 +78,7 @@
     }
 
     /**
-     * @hibernate.property column="CORRELATION_KEY"
+     * @hibernate.property column="CORRELATION_KEY" not-null="true"
      * @hibernate.column name="CORRELATION_KEY"
      *                   index="IDX_SELECTOR_CKEY"
      *                   
@@ -102,7 +92,7 @@
     }
 
     /**
-     * @hibernate.many-to-one
+     * @hibernate.many-to-one not-null="true"
      * @hibernate.column name="CORRELATOR" index="IDX_SELECTOR_CORRELATOR"
      */
     public HCorrelator getCorrelator() {

Modified: 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcess.java
URL: 
http://svn.apache.org/viewvc/incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcess.java?view=diff&rev=448626&r1=448625&r2=448626
==============================================================================
--- 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcess.java
 (original)
+++ 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcess.java
 Thu Sep 21 11:32:41 2006
@@ -28,7 +28,7 @@
 
 /**
  * Hibernate table representing a BPEL process (<em>not</em> a process 
instance).
- * @hibernate.class table="BPEL_PROCESS"
+ * @hibernate.class table="BPEL_PROCESS" lazy="false"
  *
  */
 public class HProcess extends HObject{

Modified: 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcessInstance.java
URL: 
http://svn.apache.org/viewvc/incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcessInstance.java?view=diff&rev=448626&r1=448625&r2=448626
==============================================================================
--- 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcessInstance.java
 (original)
+++ 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/bpel/hobj/HProcessInstance.java
 Thu Sep 21 11:32:41 2006
@@ -28,251 +28,228 @@
 
 /**
  * Hibernate table representing a BPEL process instance.
- * @hibernate.class table="BPEL_INSTANCE" dynamic-update="true"
+ * 
+ * @hibernate.class table="BPEL_INSTANCE" dynamic-update="true" lazy="true"
  */
-public class HProcessInstance extends HObject{
-  /** Foreign key to owner [EMAIL PROTECTED] HProcess}. */
-  private HProcess _process;
-
-  /** Foreign key to the instantiating [EMAIL PROTECTED] HCorrelator}. */
-  private HCorrelator _instantiatingCorrelator;
-
-  /** Scope instances belonging to this process instnace. */
-  private Collection<HScope> _scopes = new HashSet<HScope>();
-  
-  private Collection<HCorrelationSet> _csets = new HashSet<HCorrelationSet>();
-
-  /** Events belonging to this instance. */
-  private Collection<HBpelEvent> _events = new HashSet<HBpelEvent>();
-  private Set<HCorrelatorSelector> _correlatorSelectors = new 
HashSet<HCorrelatorSelector>();
-  
-  private HFaultData _fault;
-  private HLargeData _jacobState;
-  private short _previousState;
-  private short _state;
-  private Date _lastActiveTime;
-  private Date _activityFailureDateTime;
-  private int  _activityFailureCount;
-
-  private Collection<HActivityRecovery> _activityRecoveries = new 
HashSet<HActivityRecovery>();
-
-  private long _seq;
-  
-  /**
-        * 
-        */
-       public HProcessInstance() {
-               super();
-       }
-  
-   /**
-   * @hibernate.many-to-one
-   *    column="INSTANTIATING_CORRELATOR"
-   */
-       public HCorrelator getInstantiatingCorrelator() {
-               return _instantiatingCorrelator;
-       }
-
-       public void setInstantiatingCorrelator(HCorrelator 
instantiatingCorrelator) {
-               _instantiatingCorrelator = instantiatingCorrelator;
-       }
-
-  /**
-   * @hibernate.many-to-one column="FAULT" cascade="delete"
-   *  column="FAULT"
-   */
-       public HFaultData getFault() {
-               return _fault;
-       }
-
-  public void setFault(HFaultData fault) {
-               _fault = fault;
-       }
-
-  /**
-   * @hibernate.many-to-one column="JACOB_STATE" cascade="delete"
-   */
-       public HLargeData getJacobState() {
-               return _jacobState;
-       }
-
-  public void setJacobState(HLargeData jacobState) {
-               _jacobState = jacobState;
-       }
-  
-
-  /**
-   * @hibernate.bag
-   *  lazy="true"
-   *  inverse="true"
-   *  cascade="delete"
-   * @hibernate.collection-key
-   *  column="IID"
-   * @hibernate.collection-one-to-many
-   *  class="org.apache.ode.daohib.bpel.hobj.HBpelEvent"
-   */
-  public Collection<HBpelEvent> getEvents() {
-    return _events;
-  }
-
-  
-  public void setEvents(Collection<HBpelEvent> events) {
-    _events = events;
-  }
-  
-  /**
-   * @hibernate.set
-   *    lazy="true"
-   *    inverse="true"
-   *    cascade="delete"
-   * @hibernate.collection-key
-   *    column="PIID"
-   * @hibernate.collection-one-to-many
-   *    class="org.apache.ode.daohib.bpel.hobj.HCorrelatorSelector"
-   */
-  public Set<HCorrelatorSelector> getCorrelatorSelectors() {
-    return _correlatorSelectors;
-  }
-  
-  /**
-   * @param selectors the _correlatorSelectors to set
-   */
-  public void setCorrelatorSelectors(Set<HCorrelatorSelector> selectors) {
-    _correlatorSelectors = selectors;
-  }
-  /**
-    * @hibernate.property
-    *  column="PREVIOUS_STATE"
-    */
-       public short getPreviousState() {
-               return _previousState;
-       }
-
-  public void setPreviousState(short previousState) {
-               _previousState = previousState;
-       }
-
-  /**
-   * @hibernate.many-to-one
-   *  column="PROCESS_ID"
-   */
-       public HProcess getProcess() {
-               return _process;
-       }
-  
-       public void setProcess(HProcess process) {
-               _process = process;
-       }
-
-  /**
-   * @hibernate.bag
-   *  lazy="true"
-   *  inverse="true"
-   *  cascade="delete"
-   * @hibernate.collection-key
-   *  column="PIID"
-   * @hibernate.collection-one-to-many
-   *  class="org.apache.ode.daohib.bpel.hobj.HScope"
-   */
-       public Collection<HScope> getScopes() {
-               return _scopes;
-       }
-
-       public void setScopes(Collection<HScope> scopes) {
-               _scopes = scopes;
-       }
-
-  /**
-   * @hibernate.bag
-   *  lazy="true"
-   *  inverse="true"
-   *  cascade="delete"
-   * @hibernate.collection-key
-   *  column="PIID"
-   * @hibernate.collection-one-to-many
-   *  class="org.apache.ode.daohib.bpel.hobj.HCorrelationSet"
-   */
-       public Collection<HCorrelationSet> getCorrelationSets() {
-               return _csets;
-       }
-
-       public void setCorrelationSets(Collection<HCorrelationSet> csets) {
-               _csets = csets;
-       }
-
-  /**
-    * @hibernate.property
-    *  column="STATE"
-    */
-       public short getState() {
-               return _state;
-       }
-
-  public void setState(short state) {
-               _state = state;
-       }
-
-  /**
-   * @hibernate.property
-   *  column="LAST_ACTIVE_DT"
-   */
-       public Date getLastActiveTime() {
-               return _lastActiveTime;
-       }
-  
-       public void setLastActiveTime(Date lastActiveTime) {
-               _lastActiveTime = lastActiveTime;
-       }
-
-  public void setSequence(long seq) {
-    _seq = seq;
-  }
-  
-  /**
-   * @hibernate.property column="SEQUENCE"
-   */
-  public long getSequence() {
-    return _seq;
-  }
-  
-  /**
-   * @hibernate.bag
-   *  lazy="true"
-   *  inverse="true"
-   *  cascade="delete"
-   * @hibernate.collection-key
-   *  column="PIID"
-   * @hibernate.collection-one-to-many
-   *  class="org.apache.ode.daohib.bpel.hobj.HActivityRecovery"
-   */
-       public Collection<HActivityRecovery> getActivityRecoveries() {
-               return _activityRecoveries;
-       }
-
-       public void setActivityRecoveries(Collection<HActivityRecovery> 
activityRecoveries) {
-               _activityRecoveries = activityRecoveries;
-       }
-
-  /**
-   * @hibernate.property column="FAILURE_COUNT"
-   */
-  public int getActivityFailureCount() {
-    return _activityFailureCount;
-  }
-
-  public void setActivityFailureCount(int count) {
-    _activityFailureCount = count;
-  }
-  
-  /**
-   * @hibernate.property column="FAILURE_DT"
-   */
-  public Date getActivityFailureDateTime() {
-    return _activityFailureDateTime;
-  }
-
-  public void setActivityFailureDateTime(Date dateTime) {
-    _activityFailureDateTime = dateTime;
-  }
+public class HProcessInstance extends HObject {
+    /** Foreign key to owner [EMAIL PROTECTED] HProcess}. */
+    private HProcess _process;
+
+    /** Foreign key to the instantiating [EMAIL PROTECTED] HCorrelator}. */
+    private HCorrelator _instantiatingCorrelator;
+
+    /** Scope instances belonging to this process instnace. */
+    private Collection<HScope> _scopes = new HashSet<HScope>();
+
+    private Collection<HCorrelationSet> _csets = new 
HashSet<HCorrelationSet>();
+
+    /** Events belonging to this instance. */
+    private Collection<HBpelEvent> _events = new HashSet<HBpelEvent>();
+
+    private Set<HCorrelatorSelector> _correlatorSelectors = new 
HashSet<HCorrelatorSelector>();
+
+    private HFaultData _fault;
+
+    private HLargeData _jacobState;
+
+    private short _previousState;
+
+    private short _state;
+
+    private Date _lastActiveTime;
+
+    private Date _activityFailureDateTime;
+
+    private int _activityFailureCount;
+
+    private Collection<HActivityRecovery> _activityRecoveries = new 
HashSet<HActivityRecovery>();
+
+    private long _seq;
+
+    /**
+     * 
+     */
+    public HProcessInstance() {
+        super();
+    }
+
+    /**
+     * @hibernate.many-to-one column="INSTANTIATING_CORRELATOR" not-null="true"
+     */
+    public HCorrelator getInstantiatingCorrelator() {
+        return _instantiatingCorrelator;
+    }
+
+    public void setInstantiatingCorrelator(HCorrelator 
instantiatingCorrelator) {
+        _instantiatingCorrelator = instantiatingCorrelator;
+    }
+
+    /**
+     * @hibernate.many-to-one column="FAULT" cascade="delete" column="FAULT"
+     */
+    public HFaultData getFault() {
+        return _fault;
+    }
+
+    public void setFault(HFaultData fault) {
+        _fault = fault;
+    }
+
+    /**
+     * @hibernate.many-to-one column="JACOB_STATE" cascade="delete"
+     */
+    public HLargeData getJacobState() {
+        return _jacobState;
+    }
+
+    public void setJacobState(HLargeData jacobState) {
+        _jacobState = jacobState;
+    }
+
+    /**
+     * @hibernate.bag lazy="true" inverse="true" cascade="delete"
+     * @hibernate.collection-key column="IID"
+     * @hibernate.collection-one-to-many 
class="org.apache.ode.daohib.bpel.hobj.HBpelEvent"
+     */
+    public Collection<HBpelEvent> getEvents() {
+        return _events;
+    }
+
+    public void setEvents(Collection<HBpelEvent> events) {
+        _events = events;
+    }
+
+    /**
+     * @hibernate.set lazy="true" inverse="true" cascade="delete"
+     * @hibernate.collection-key column="PIID"
+     * @hibernate.collection-one-to-many 
class="org.apache.ode.daohib.bpel.hobj.HCorrelatorSelector"
+     */
+    public Set<HCorrelatorSelector> getCorrelatorSelectors() {
+        return _correlatorSelectors;
+    }
+
+    /**
+     * @param selectors
+     *            the _correlatorSelectors to set
+     */
+    public void setCorrelatorSelectors(Set<HCorrelatorSelector> selectors) {
+        _correlatorSelectors = selectors;
+    }
+
+    /**
+     * @hibernate.property column="PREVIOUS_STATE"
+     */
+    public short getPreviousState() {
+        return _previousState;
+    }
+
+    public void setPreviousState(short previousState) {
+        _previousState = previousState;
+    }
+
+    /**
+     * @hibernate.many-to-one column="PROCESS_ID"
+     */
+    public HProcess getProcess() {
+        return _process;
+    }
+
+    public void setProcess(HProcess process) {
+        _process = process;
+    }
+
+    /**
+     * @hibernate.bag lazy="true" inverse="true" cascade="delete"
+     * @hibernate.collection-key column="PIID"
+     * @hibernate.collection-one-to-many 
class="org.apache.ode.daohib.bpel.hobj.HScope"
+     */
+    public Collection<HScope> getScopes() {
+        return _scopes;
+    }
+
+    public void setScopes(Collection<HScope> scopes) {
+        _scopes = scopes;
+    }
+
+    /**
+     * @hibernate.bag lazy="true" inverse="true" cascade="delete"
+     * @hibernate.collection-key column="PIID"
+     * @hibernate.collection-one-to-many 
class="org.apache.ode.daohib.bpel.hobj.HCorrelationSet"
+     */
+    public Collection<HCorrelationSet> getCorrelationSets() {
+        return _csets;
+    }
+
+    public void setCorrelationSets(Collection<HCorrelationSet> csets) {
+        _csets = csets;
+    }
+
+    /**
+     * @hibernate.property column="STATE"
+     */
+    public short getState() {
+        return _state;
+    }
+
+    public void setState(short state) {
+        _state = state;
+    }
+
+    /**
+     * @hibernate.property column="LAST_ACTIVE_DT"
+     */
+    public Date getLastActiveTime() {
+        return _lastActiveTime;
+    }
+
+    public void setLastActiveTime(Date lastActiveTime) {
+        _lastActiveTime = lastActiveTime;
+    }
+
+    public void setSequence(long seq) {
+        _seq = seq;
+    }
+
+    /**
+     * @hibernate.property column="SEQUENCE"
+     */
+    public long getSequence() {
+        return _seq;
+    }
+
+    /**
+     * @hibernate.bag lazy="true" inverse="true" cascade="delete"
+     * @hibernate.collection-key column="PIID"
+     * @hibernate.collection-one-to-many 
class="org.apache.ode.daohib.bpel.hobj.HActivityRecovery"
+     */
+    public Collection<HActivityRecovery> getActivityRecoveries() {
+        return _activityRecoveries;
+    }
+
+    public void setActivityRecoveries(Collection<HActivityRecovery> 
activityRecoveries) {
+        _activityRecoveries = activityRecoveries;
+    }
+
+    /**
+     * @hibernate.property column="FAILURE_COUNT"
+     */
+    public int getActivityFailureCount() {
+        return _activityFailureCount;
+    }
+
+    public void setActivityFailureCount(int count) {
+        _activityFailureCount = count;
+    }
+
+    /**
+     * @hibernate.property column="FAILURE_DT"
+     */
+    public Date getActivityFailureDateTime() {
+        return _activityFailureDateTime;
+    }
+
+    public void setActivityFailureDateTime(Date dateTime) {
+        _activityFailureDateTime = dateTime;
+    }
 
 }

Modified: 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/hobj/HObject.java
URL: 
http://svn.apache.org/viewvc/incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/hobj/HObject.java?view=diff&rev=448626&r1=448625&r2=448626
==============================================================================
--- 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/hobj/HObject.java
 (original)
+++ 
incubator/ode/trunk/dao-hibernate/src/main/java/org/apache/ode/daohib/hobj/HObject.java
 Thu Sep 21 11:32:41 2006
@@ -21,44 +21,58 @@
 import java.util.Date;
 
 /**
- * Base class for Hibernate objects providing auto-generated key and
- * create timestamp.
+ * Base class for Hibernate objects providing auto-generated key, create
+ * timestamp and lock fields.
  */
 public class HObject {
-       
-  private Long _id;
-  private Date _created;
-  
-  /** Constructor.      */
-       public HObject() {
-               super();
-       }
-
-  /**
-   * Auto-gnerated creation timestamp.
-   * @hibernate.property
-   *  column="INSERT_TIME"
-   *  type="timestamp"
-   */
-  public Date getCreated() {
-    return _created;
-  }
-
-  public void setCreated(Date created) {
-    _created = created;
-  }
-
-  /**
-   * Auto-generated primary key.
-   * @hibernate.id
-   *  generator-class="native"
-   *  column="ID"
-   */
-  public Long getId() {
-    return _id;
-  }
-
-  public void setId(Long id) {
-    _id = id;
-  }
+
+    private Long _id;
+
+    private Date _created;
+
+    private int _lock;
+
+    /** Constructor. */
+    public HObject() {
+        super();
+        setLock(0);
+    }
+
+    /**
+     * Auto-gnerated creation timestamp.
+     * 
+     * @hibernate.property column="INSERT_TIME" type="timestamp"
+     */
+    public Date getCreated() {
+        return _created;
+    }
+
+    public void setCreated(Date created) {
+        _created = created;
+    }
+
+    /**
+     * Auto-generated primary key.
+     * 
+     * @hibernate.id generator-class="native" column="ID"
+     */
+    public Long getId() {
+        return _id;
+    }
+
+    public void setId(Long id) {
+        _id = id;
+    }
+
+    /**
+     * @hibernate.property column="MLOCK" not-null="true"
+     */
+    public int getLock() {
+        return _lock;
+    }
+
+    public void setLock(int lock) {
+        _lock = lock;
+    }
+
 }


Reply via email to