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

Peter Muir peter at bleepbleep.org.uk
Mon Sep 3 11:15:52 EDT 2007


  User: pmuir   
  Date: 07/09/03 11:15:51

  Modified:    src/main/org/jboss/seam/navigation   Pages.java
                        TaskControl.java
  Log:
  Better use of ValueExpression in task support for page.xml
  
  Revision  Changes    Path
  1.15      +7 -3      jboss-seam/src/main/org/jboss/seam/navigation/Pages.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: Pages.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/navigation/Pages.java,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -b -r1.14 -r1.15
  --- Pages.java	3 Sep 2007 12:50:28 -0000	1.14
  +++ Pages.java	3 Sep 2007 15:15:51 -0000	1.15
  @@ -1143,7 +1143,11 @@
         if ( endTask!=null )
         {
            control.setEndTask(true);
  -         control.setTransition( endTask.attributeValue("transition") );
  +         String transition = endTask.attributeValue("transition");
  +         if (transition != null)
  +         {
  +            control.setTransition( Expressions.instance().createValueExpression(transition, String.class) );
  +         }
         }
         
         Element beginTask = element.element("begin-task");
  @@ -1155,7 +1159,7 @@
            {
              taskId = "#{param.taskId}";
            }
  -         control.setTaskId( Expressions.instance().createValueExpression(taskId, String.class) );
  +         control.setTaskId( Expressions.instance().createValueExpression(taskId, Long.class) );
         }
         
         Element startTask = element.element("start-task");
  @@ -1167,7 +1171,7 @@
            {
              taskId = "#{param.taskId}";
            }
  -         control.setTaskId( Expressions.instance().createValueExpression(taskId, String.class) );
  +         control.setTaskId( Expressions.instance().createValueExpression(taskId, Long.class) );
         }
         
         if ( control.isBeginTask() && control.isEndTask() )
  
  
  
  1.2       +10 -24    jboss-seam/src/main/org/jboss/seam/navigation/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/navigation/TaskControl.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -b -r1.1 -r1.2
  --- TaskControl.java	19 Jun 2007 19:13:55 -0000	1.1
  +++ TaskControl.java	3 Sep 2007 15:15:51 -0000	1.2
  @@ -12,38 +12,24 @@
   
      private boolean isEndTask;
   
  -   private ValueExpression taskId;
  +   private ValueExpression<Long> taskId;
   
  -   private String transition;
  +   private ValueExpression<String> transition;
   
      public void beginOrEndTask()
      {
         if ( endTask() )
         {
            BusinessProcess.instance().validateTask();
  -         BusinessProcess.instance().endTask(transition);
  +         BusinessProcess.instance().endTask(transition == null ? null : transition.getValue());
         }
         if ( beginTask() || startTask() )
         {
  -         Object id = taskId.getValue();
  -         if (id==null)
  +         if (taskId==null || taskId.getValue() == null)
            {
  -            throw new IllegalStateException("task id may not be null");
  +            throw new NullPointerException("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);
  +         BusinessProcess.instance().resumeTask(taskId.getValue());
         }
         if ( startTask() )
         {
  @@ -96,22 +82,22 @@
         this.isStartTask = isStartTask;
      }
   
  -   public void setTaskId(ValueExpression<String> taskId)
  +   public void setTaskId(ValueExpression<Long> taskId)
      {
         this.taskId = taskId;
      }
   
  -   public ValueExpression<String> getTaskId()
  +   public ValueExpression<Long> getTaskId()
      {
         return taskId;
      }
      
  -   public String getTransition()
  +   public ValueExpression<String> getTransition()
      {
         return transition;
      }
      
  -   public void setTransition(String transition)
  +   public void setTransition(ValueExpression<String> transition)
      {
         this.transition = transition;
      }
  
  
  



More information about the jboss-cvs-commits mailing list