[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