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

Gavin King gavin.king at jboss.com
Thu Mar 29 12:00:50 EDT 2007


  User: gavin   
  Date: 07/03/29 12:00:50

  Modified:    src/main/org/jboss/seam/pages  TaskControl.java
  Log:
  use EL to determine task/process id
  
  Revision  Changes    Path
  1.3       +23 -5     jboss-seam/src/main/org/jboss/seam/pages/TaskControl.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: TaskControl.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/pages/TaskControl.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -b -r1.2 -r1.3
  --- TaskControl.java	23 Feb 2007 10:43:45 -0000	1.2
  +++ TaskControl.java	29 Mar 2007 16:00:50 -0000	1.3
  @@ -15,22 +15,40 @@
   
      private boolean isEndTask;
   
  -   private ValueBinding<String> taskId;
  +   private ValueBinding taskId;
   
      private String transition;
   
      public void beginOrEndTask()
      {
  -      if (endTask())
  +      if ( endTask() )
         {
            BusinessProcess.instance().validateTask();
            BusinessProcess.instance().endTask(transition);
         }
  -      if (beginTask() || startTask())
  +      if ( beginTask() || startTask() )
         {
  -         BusinessProcess.instance().resumeTask(new Long(taskId.getValue()));
  +         Object id = taskId.getValue();
  +         if (id==null)
  +         {
  +            throw new IllegalStateException("task id may not be null");
  +         }
  +         Long taskId;
  +         if ( id instanceof Long )
  +         {
  +            taskId = (Long) id;
  +         }
  +         else if (id instanceof String) 
  +         {
  +            taskId = new Long( (String) id );
  +         }
  +         else
  +         {
  +            throw new IllegalArgumentException("task id must be a string or long");
  +         }
  +         BusinessProcess.instance().resumeTask(taskId);
         }
  -      if (startTask())
  +      if ( startTask() )
         {
            BusinessProcess.instance().startTask();
         }
  
  
  



More information about the jboss-cvs-commits mailing list