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

Gavin King gavin.king at jboss.com
Fri Nov 10 21:23:17 EST 2006


  User: gavin   
  Date: 06/11/10 21:23:17

  Modified:    src/main/org/jboss/seam/pageflow  Page.java
  Log:
  JBSEAM-392 and JBSEAM-199
  
  Revision  Changes    Path
  1.6       +32 -26    jboss-seam/src/main/org/jboss/seam/pageflow/Page.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: Page.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/pageflow/Page.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -b -r1.5 -r1.6
  --- Page.java	31 Oct 2006 20:09:22 -0000	1.5
  +++ Page.java	11 Nov 2006 02:23:17 -0000	1.6
  @@ -26,7 +26,9 @@
      
      private String viewId;
      private boolean isConversationEnd = false;
  +   private boolean isTaskEnd = false;
      private String transition;
  +   private String processToCreate;
      private boolean redirect;
      private String description;
      private Integer timeout;
  @@ -44,11 +46,17 @@
         noConversationViewId = pageElement.attributeValue("no-conversation-view-id");
         backEnabled = "enabled".equals( pageElement.attributeValue("back") );
         switchEnabled = !"disabled".equals( pageElement.attributeValue("switch") );
  -      Element conversationEndElement = pageElement.element("end-conversation");
  -      if (conversationEndElement!=null) 
  +      Element endConversationElement = pageElement.element("end-conversation");
  +      if ( endConversationElement!=null )
         {
            isConversationEnd = true;
  -         transition = conversationEndElement.attributeValue("transition");
  +         processToCreate = endConversationElement.attributeValue("create-process");
  +      }
  +      Element endTaskElement = pageElement.element("end-task");
  +      if (endTaskElement!=null) 
  +      {
  +         isTaskEnd = true;
  +         transition = endTaskElement.attributeValue("transition");
         }
         redirect = "true".equals( pageElement.attributeValue("redirect") );
         if ( pageElement.element("redirect")!=null )
  @@ -73,30 +81,18 @@
      @Override
      public void execute(ExecutionContext executionContext) 
      {
  -      if (isConversationEnd) {
  -
  -         org.jbpm.taskmgmt.exe.TaskInstance task = TaskInstance.instance();
  -         if ( task != null )
  -         {
  -            
  -            if ( transition==null || "".equals(transition) )
  +      if ( isConversationEnd && processToCreate!=null )
               {
  -               transition = Transition.instance().getName();
  +         BusinessProcess.instance().createProcess(processToCreate);
               }
               
  -            if ( transition == null )
  +      if ( isTaskEnd ) 
               {
  -               task.end();
  -            }
  -            else
  -            {
  -               task.end(transition);
  -            }
  -         
  -            BusinessProcess.instance().setTaskId(null);
  -            
  +         BusinessProcess.instance().endTask(transition);         
            }
            
  +      if (isConversationEnd || isTaskEnd ) 
  +      {
            Manager.instance().endConversation(false);
         }
      }
  @@ -148,4 +144,14 @@
      {
         return noConversationViewId;
      }
  +
  +   protected boolean isTaskEnd()
  +   {
  +      return isTaskEnd;
  +   }
  +
  +   protected String getProcessToCreate()
  +   {
  +      return processToCreate;
  +   }
   }
  
  
  



More information about the jboss-cvs-commits mailing list