[jboss-cvs] jboss-seam/src/main/org/jboss/seam/core ...

Gavin King gavin.king at jboss.com
Sun Oct 15 12:30:45 EDT 2006


  User: gavin   
  Date: 06/10/15 12:30:45

  Modified:    src/main/org/jboss/seam/core   ProcessInstance.java
                        TaskInstance.java
  Log:
  fix JBSEAM-416
  
  Revision  Changes    Path
  1.12      +26 -14    jboss-seam/src/main/org/jboss/seam/core/ProcessInstance.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: ProcessInstance.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/core/ProcessInstance.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -b -r1.11 -r1.12
  --- ProcessInstance.java	3 Oct 2006 23:15:58 -0000	1.11
  +++ ProcessInstance.java	15 Oct 2006 16:30:45 -0000	1.12
  @@ -7,33 +7,41 @@
   package org.jboss.seam.core;
   
   import org.jboss.seam.Component;
  +import org.jboss.seam.InterceptionType;
   import org.jboss.seam.ScopeType;
  +import org.jboss.seam.annotations.Intercept;
   import org.jboss.seam.annotations.Name;
   import org.jboss.seam.annotations.Scope;
   import org.jboss.seam.annotations.Startup;
  -import org.jboss.seam.annotations.Transactional;
   import org.jboss.seam.annotations.Unwrap;
   import org.jboss.seam.contexts.Contexts;
  +import org.jboss.seam.util.Work;
   
   /**
    * A Seam component that allows injection of the current
    * jBPM ProcessInstance.
    * 
    * @author Gavin King
  - * @version $Revision: 1.11 $
  + * @version $Revision: 1.12 $
    */
   @Scope(ScopeType.APPLICATION)
   @Name("processInstance")
  + at Intercept(InterceptionType.NEVER)
   @Startup
   public class ProcessInstance 
   {
      
      @Unwrap
  -   @Transactional
  -   public org.jbpm.graph.exe.ProcessInstance getProcessInstance()
  +   public org.jbpm.graph.exe.ProcessInstance getProcessInstance() throws Exception
      {
         if ( !Contexts.isConversationContextActive() ) return null;
         
  +      return new Work<org.jbpm.graph.exe.ProcessInstance>()
  +      {
  +         
  +         @Override
  +         protected org.jbpm.graph.exe.ProcessInstance work() throws Exception
  +         {         
         Long processId = BusinessProcess.instance().getProcessId();
         if (processId!=null)
         {
  @@ -47,6 +55,10 @@
         }
      }
      
  +      }.workInTransaction();
  +      
  +   }
  +   
      public static org.jbpm.graph.exe.ProcessInstance instance()
      {
         if ( !Contexts.isConversationContextActive() || !BusinessProcess.instance().hasCurrentProcess() ) return null; //so we don't start a txn
  
  
  
  1.11      +25 -14    jboss-seam/src/main/org/jboss/seam/core/TaskInstance.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: TaskInstance.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/core/TaskInstance.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -b -r1.10 -r1.11
  --- TaskInstance.java	3 Oct 2006 23:15:58 -0000	1.10
  +++ TaskInstance.java	15 Oct 2006 16:30:45 -0000	1.11
  @@ -7,33 +7,41 @@
   package org.jboss.seam.core;
   
   import org.jboss.seam.Component;
  +import org.jboss.seam.InterceptionType;
   import org.jboss.seam.ScopeType;
  +import org.jboss.seam.annotations.Intercept;
   import org.jboss.seam.annotations.Name;
   import org.jboss.seam.annotations.Scope;
   import org.jboss.seam.annotations.Startup;
  -import org.jboss.seam.annotations.Transactional;
   import org.jboss.seam.annotations.Unwrap;
   import org.jboss.seam.contexts.Contexts;
  +import org.jboss.seam.util.Work;
   
   /**
    * A Seam component that allows injection of the current
    * jBPM TaskInstance.
    * 
    * @author Gavin King
  - * @version $Revision: 1.10 $
  + * @version $Revision: 1.11 $
    */
   @Scope(ScopeType.APPLICATION)
   @Name("taskInstance")
  + at Intercept(InterceptionType.NEVER)
   @Startup
   public class TaskInstance 
   {
      
      @Unwrap
  -   @Transactional
  -   public org.jbpm.taskmgmt.exe.TaskInstance getTaskInstance()
  +   public org.jbpm.taskmgmt.exe.TaskInstance getTaskInstance() throws Exception
      {
         if ( !Contexts.isConversationContextActive() ) return null;
         
  +      return new Work<org.jbpm.taskmgmt.exe.TaskInstance>()
  +      {
  +         
  +         @Override
  +         protected org.jbpm.taskmgmt.exe.TaskInstance work() throws Exception
  +         {         
         Long taskId = BusinessProcess.instance().getTaskId();
         if (taskId!=null)
         {
  @@ -47,6 +55,9 @@
         }
      }
      
  +      }.workInTransaction();
  +   }
  +   
      public static org.jbpm.taskmgmt.exe.TaskInstance instance()
      {
         if ( !Contexts.isConversationContextActive() || !BusinessProcess.instance().hasCurrentTask() ) return null; //so we don't start a txn
  
  
  



More information about the jboss-cvs-commits mailing list