[jboss-cvs] jboss-seam/src/main/org/jboss/seam/pages ...
Peter Muir
peter at bleepbleep.org.uk
Wed Feb 21 13:33:08 EST 2007
User: pmuir
Date: 07/02/21 13:33:08
Modified: src/main/org/jboss/seam/pages Page.java Rule.java
Added: src/main/org/jboss/seam/pages ProcessControl.java
TaskControl.java
Log:
JBSEAM-891
Revision Changes Path
1.12 +12 -0 jboss-seam/src/main/org/jboss/seam/pages/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/pages/Page.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- Page.java 13 Feb 2007 06:50:45 -0000 1.11
+++ Page.java 21 Feb 2007 18:33:08 -0000 1.12
@@ -29,6 +29,8 @@
private boolean conversationRequired;
private boolean loginRequired;
private ConversationControl conversationControl = new ConversationControl();
+ private TaskControl taskControl = new TaskControl();
+ private ProcessControl processControl = new ProcessControl();
/**
* Indicates whether this view id has a security restriction.
@@ -166,6 +168,14 @@
{
return conversationControl;
}
+ public TaskControl getTaskControl()
+ {
+ return taskControl;
+ }
+ public ProcessControl getProcessControl()
+ {
+ return processControl;
+ }
public List<Action> getActions()
{
return actions;
@@ -192,6 +202,8 @@
boolean result = false;
getConversationControl().beginOrEndConversation();
+ getTaskControl().beginOrEndTask();
+ getProcessControl().createOrResumeProcess();
for ( Input in: getInputs() ) in.in();
1.2 +93 -79 jboss-seam/src/main/org/jboss/seam/pages/Rule.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: Rule.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/pages/Rule.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- Rule.java 19 Dec 2006 21:16:54 -0000 1.1
+++ Rule.java 21 Feb 2007 18:33:08 -0000 1.2
@@ -16,6 +16,8 @@
private ValueBinding condition;
private List<Output> outputs = new ArrayList<Output>();
private ConversationControl conversationControl = new ConversationControl();
+ private TaskControl taskControl = new TaskControl();
+ private ProcessControl processControl = new ProcessControl();
private NavigationHandler navigationHandler = new NavigationHandler() {
@Override
public boolean navigate(FacesContext context)
@@ -46,6 +48,16 @@
return conversationControl;
}
+ public TaskControl getTaskControl()
+ {
+ return taskControl;
+ }
+
+ public ProcessControl getProcessControl()
+ {
+ return processControl;
+ }
+
public ValueBinding getCondition()
{
return condition;
@@ -74,6 +86,8 @@
public boolean execute(FacesContext context)
{
getConversationControl().beginOrEndConversation();
+ getTaskControl().beginOrEndTask();
+ getProcessControl().createOrResumeProcess();
for ( Output output: getOutputs() ) output.out();
return getNavigationHandler().navigate(context);
}
1.1 date: 2007/02/21 18:33:08; author: pmuir; state: Exp;jboss-seam/src/main/org/jboss/seam/pages/ProcessControl.java
Index: ProcessControl.java
===================================================================
/**
*
*/
package org.jboss.seam.pages;
import org.jboss.seam.core.BusinessProcess;
import org.jboss.seam.core.Expressions.ValueBinding;
public class ProcessControl
{
private boolean isCreateProcess;
private boolean isResumeProcess;
private String definition;
private ValueBinding<Long> processId;
public void createOrResumeProcess()
{
if (createProcess())
{
BusinessProcess.instance().createProcess(definition);
}
if (resumeProcess())
{
BusinessProcess.instance().resumeProcess(processId.getValue());
}
}
private boolean createProcess()
{
return isCreateProcess;
}
private boolean resumeProcess()
{
return isResumeProcess;
}
public boolean isCreateProcess()
{
return isCreateProcess;
}
public void setCreateProcess(boolean isCreateProcess)
{
this.isCreateProcess = isCreateProcess;
}
public boolean isResumeProcess()
{
return isResumeProcess;
}
public void setResumeProcess(boolean isResumeProcess)
{
this.isResumeProcess = isResumeProcess;
}
public String getDefinition()
{
return definition;
}
public void setDefinition(String definition)
{
this.definition = definition;
}
public ValueBinding<Long> getProcessId()
{
return processId;
}
public void setProcessId(ValueBinding<Long> processId)
{
this.processId = processId;
}
}
1.1 date: 2007/02/21 18:33:08; author: pmuir; state: Exp;jboss-seam/src/main/org/jboss/seam/pages/TaskControl.java
Index: TaskControl.java
===================================================================
/**
*
*/
package org.jboss.seam.pages;
import org.jboss.seam.core.BusinessProcess;
import org.jboss.seam.core.Expressions.ValueBinding;
public class TaskControl
{
private boolean isBeginTask;
private boolean isStartTask;
private boolean isEndTask;
private ValueBinding<String> taskId;
private ValueBinding<String> transition;
public void beginOrEndTask()
{
if (endTask())
{
String t = null;
if (transition != null)
{
t =transition.getValue();
}
BusinessProcess.instance().validateTask();
BusinessProcess.instance().endTask(t);
}
if (beginTask() || startTask())
{
BusinessProcess.instance().resumeTask(new Long(taskId.getValue()));
}
if (startTask())
{
BusinessProcess.instance().startTask();
}
}
private boolean beginTask()
{
return isBeginTask && taskId.getValue() != null;
}
private boolean startTask()
{
return isStartTask && taskId.getValue() != null;
}
private boolean endTask()
{
return isEndTask;
}
public boolean isBeginTask()
{
return isBeginTask;
}
public void setBeginTask(boolean isBeginTask)
{
this.isBeginTask = isBeginTask;
}
public boolean isEndTask()
{
return isEndTask;
}
public void setEndTask(boolean isEndTask)
{
this.isEndTask = isEndTask;
}
public boolean isStartTask()
{
return isStartTask;
}
public void setStartTask(boolean isStartTask)
{
this.isStartTask = isStartTask;
}
public void setTaskId(ValueBinding<String> taskId)
{
this.taskId = taskId;
}
public ValueBinding<String> getTaskId()
{
return taskId;
}
public ValueBinding<String> getTransition()
{
return transition;
}
public void setTransition(ValueBinding<String> transition)
{
this.transition = transition;
}
}
More information about the jboss-cvs-commits
mailing list