[jbpm-commits] JBoss JBPM SVN: r5154 - in projects/gwt-console/trunk: gui/war/src/main/java/org/jboss/bpm/console/client/process/events and 3 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Mon Jun 29 09:28:25 EDT 2009
Author: heiko.braun at jboss.com
Date: 2009-06-29 09:28:24 -0400 (Mon, 29 Jun 2009)
New Revision: 5154
Modified:
projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/ActivityDiagramView.java
projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/LoadActivityDiagramAction.java
projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/events/ActivityDiagramResultEvent.java
projects/gwt-console/trunk/server/server-core/src/main/java/org/jboss/bpm/console/server/ProcessMgmtFacade.java
projects/gwt-console/trunk/server/server-core/src/main/java/org/jboss/bpm/console/server/TaskMgmtFacade.java
projects/gwt-console/trunk/server/server-integration/src/main/java/org/jboss/bpm/console/server/integration/TaskManagement.java
projects/gwt-console/trunk/server/server-integration/src/main/java/org/jboss/bpm/console/server/plugin/GraphViewerPlugin.java
Log:
Fix JBPM-2295: Highlight multiple activities. Thanks for the patch Kris.
Modified: projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/ActivityDiagramView.java
===================================================================
--- projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/ActivityDiagramView.java 2009-06-29 12:38:48 UTC (rev 5153)
+++ projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/ActivityDiagramView.java 2009-06-29 13:28:24 UTC (rev 5154)
@@ -21,16 +21,17 @@
*/
package org.jboss.bpm.console.client.process;
-import org.jboss.bpm.console.client.model.DiagramNodeInfo;
+import java.util.List;
+
+import org.gwt.mosaic.ui.client.ScrollLayoutPanel;
import org.jboss.bpm.console.client.model.ActiveNodeInfo;
+import org.jboss.bpm.console.client.model.ProcessDefinitionRef;
import org.jboss.bpm.console.client.model.ProcessInstanceRef;
-import org.jboss.bpm.console.client.model.ProcessDefinitionRef;
import org.jboss.bpm.console.client.process.events.ActivityDiagramResultEvent;
-import org.gwt.mosaic.ui.client.layout.LayoutPanel;
-import org.gwt.mosaic.ui.client.ScrollLayoutPanel;
+
import com.google.gwt.user.client.ui.HTML;
+import com.mvc4g.client.Controller;
import com.mvc4g.client.ViewInterface;
-import com.mvc4g.client.Controller;
/**
* @author Heiko.Braun <heiko.braun at jboss.com>
@@ -61,8 +62,7 @@
public void update(ActivityDiagramResultEvent event)
{
- ActiveNodeInfo activeNodeInfo = event.getActiveNodeInfo();
- DiagramNodeInfo activeNode = activeNodeInfo.getActiveNode();
+ List<ActiveNodeInfo> activeNodeInfos = event.getActiveNodeInfo();
String imageUrl = event.getImageUrl();
// remove contents
@@ -81,16 +81,18 @@
"</div></div>"
);*/
-
- HTML html = new HTML(
+ String s =
"<div style='width:1024px; height:768px; background-color:#ffffff;'>" +
- "<div id=\"imageContainer\" style=\"position:relative;top:-1;left:-1;height:"+activeNodeInfo.getHeight()+"px;width:"+activeNodeInfo.getWidth()+"px;\">" +
- "<img src=\""+imageUrl+"\" style=\"position:absolute;top:0;left:0\" />" +
- "<div class=\"bpm-graphView-activityImage\" style=\"position:absolute;top:"+ (activeNode.getY()-8) +"px;left:"+(activeNode.getX()-8)+"px;width:50px;height:50px; z-index:1000;\"></div>" +
- "</div>" +
- "</div>"
- );
+ "<div id=\"imageContainer\" style=\"position:relative;top:-1;left:-1;\">" +
+ "<img src=\""+imageUrl+"\" style=\"position:absolute;top:0;left:0\" />";
+ for (ActiveNodeInfo activeNodeInfo: activeNodeInfos) {
+ s+= "<div class=\"bpm-graphView-activityImage\" style=\"position:absolute;top:"+ (activeNodeInfo.getActiveNode().getY()-8) +"px;left:"+(activeNodeInfo.getActiveNode().getX()-8)+"px;width:50px;height:50px; z-index:1000;\"></div>";
+ }
+ s+= "</div>" +
+ "</div>";
+ HTML html = new HTML(s);
+
this.add(html);
invalidate();
}
Modified: projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/LoadActivityDiagramAction.java
===================================================================
--- projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/LoadActivityDiagramAction.java 2009-06-29 12:38:48 UTC (rev 5153)
+++ projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/LoadActivityDiagramAction.java 2009-06-29 13:28:24 UTC (rev 5154)
@@ -21,19 +21,25 @@
*/
package org.jboss.bpm.console.client.process;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.jboss.bpm.console.client.ApplicationContext;
import org.jboss.bpm.console.client.common.AbstractRESTAction;
-import org.jboss.bpm.console.client.ApplicationContext;
+import org.jboss.bpm.console.client.model.ActiveNodeInfo;
+import org.jboss.bpm.console.client.model.DiagramNodeInfo;
+import org.jboss.bpm.console.client.model.ProcessInstanceRef;
import org.jboss.bpm.console.client.process.events.ActivityDiagramResultEvent;
+import org.jboss.bpm.console.client.util.ConsoleLog;
import org.jboss.bpm.console.client.util.JSONWalk;
-import org.jboss.bpm.console.client.util.ConsoleLog;
-import org.jboss.bpm.console.client.model.ProcessInstanceRef;
-import org.jboss.bpm.console.client.model.DiagramNodeInfo;
-import org.jboss.bpm.console.client.model.ActiveNodeInfo;
+import org.jboss.bpm.console.client.util.JSONWalk.JSONWrapper;
+
import com.google.gwt.http.client.RequestBuilder;
import com.google.gwt.http.client.Response;
+import com.google.gwt.json.client.JSONArray;
import com.google.gwt.json.client.JSONObject;
+import com.google.gwt.json.client.JSONParser;
import com.google.gwt.json.client.JSONValue;
-import com.google.gwt.json.client.JSONParser;
import com.mvc4g.client.Controller;
/**
@@ -76,28 +82,38 @@
//int diagramWidth = JSONWalk.on(root).next("diagramWidth").asInt();
//int diagramHeight = JSONWalk.on(root).next("diagramHeight").asInt();
- JSONObject activeNode = JSONWalk.on(root).next("activeNode").asObject();
-
- int x = JSONWalk.on(activeNode).next("x").asInt();
- int y = JSONWalk.on(activeNode).next("y").asInt();
-
- int width = JSONWalk.on(activeNode).next("width").asInt();
- int height = JSONWalk.on(activeNode).next("height").asInt();
- String name = JSONWalk.on(activeNode).next("name").asString();
-
- ActiveNodeInfo activeNodeInfo =
- new ActiveNodeInfo(
- -1, -1,
- new DiagramNodeInfo(name, x, y, width, height)
- );
-
- // update view
- ActivityDiagramView view = (ActivityDiagramView) controller.getView(ActivityDiagramView.ID);
- view.update(
- new ActivityDiagramResultEvent(
- appContext.getUrlBuilder().getProcessImageURL(inst.getDefinitionId()),
- activeNodeInfo
- )
- );
+ if (root instanceof JSONArray) {
+ JSONArray array = (JSONArray) root;
+ List<ActiveNodeInfo> activeNodeInfos = new ArrayList<ActiveNodeInfo>();
+ for (int i = 0; i < array.size(); i++) {
+ JSONWalk walk = JSONWalk.on(array.get(i));
+ JSONWrapper wrapper = walk.next("activeNode");
+ JSONObject activeNode = wrapper.asObject();
+
+ int x = JSONWalk.on(activeNode).next("x").asInt();
+ int y = JSONWalk.on(activeNode).next("y").asInt();
+
+ int width = JSONWalk.on(activeNode).next("width").asInt();
+ int height = JSONWalk.on(activeNode).next("height").asInt();
+ String name = JSONWalk.on(activeNode).next("name").asString();
+
+ activeNodeInfos.add(
+ new ActiveNodeInfo(
+ -1, -1,
+ new DiagramNodeInfo(name, x, y, width, height)
+ )
+ );
+ wrapper = walk.next("activeNode");
+ }
+
+ // update view
+ ActivityDiagramView view = (ActivityDiagramView) controller.getView(ActivityDiagramView.ID);
+ view.update(
+ new ActivityDiagramResultEvent(
+ appContext.getUrlBuilder().getProcessImageURL(inst.getDefinitionId()),
+ activeNodeInfos
+ )
+ );
+ }
}
}
Modified: projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/events/ActivityDiagramResultEvent.java
===================================================================
--- projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/events/ActivityDiagramResultEvent.java 2009-06-29 12:38:48 UTC (rev 5153)
+++ projects/gwt-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/events/ActivityDiagramResultEvent.java 2009-06-29 13:28:24 UTC (rev 5154)
@@ -21,6 +21,8 @@
*/
package org.jboss.bpm.console.client.process.events;
+import java.util.List;
+
import org.jboss.bpm.console.client.model.ActiveNodeInfo;
/**
@@ -29,13 +31,13 @@
public class ActivityDiagramResultEvent
{
private String imageUrl;
- private ActiveNodeInfo activeNodeInfo;
+ private List<ActiveNodeInfo> activeNodeInfo;
public ActivityDiagramResultEvent()
{
}
- public ActivityDiagramResultEvent(String imageUrl, ActiveNodeInfo activeNodeInfo)
+ public ActivityDiagramResultEvent(String imageUrl, List<ActiveNodeInfo> activeNodeInfo)
{
this.imageUrl = imageUrl;
this.activeNodeInfo = activeNodeInfo;
@@ -51,12 +53,12 @@
this.imageUrl = imageUrl;
}
- public ActiveNodeInfo getActiveNodeInfo()
+ public List<ActiveNodeInfo> getActiveNodeInfo()
{
return activeNodeInfo;
}
- public void setActiveNodeInfo(ActiveNodeInfo activeNodeInfo)
+ public void setActiveNodeInfo(List<ActiveNodeInfo> activeNodeInfo)
{
this.activeNodeInfo = activeNodeInfo;
}
Modified: projects/gwt-console/trunk/server/server-core/src/main/java/org/jboss/bpm/console/server/ProcessMgmtFacade.java
===================================================================
--- projects/gwt-console/trunk/server/server-core/src/main/java/org/jboss/bpm/console/server/ProcessMgmtFacade.java 2009-06-29 12:38:48 UTC (rev 5153)
+++ projects/gwt-console/trunk/server/server-core/src/main/java/org/jboss/bpm/console/server/ProcessMgmtFacade.java 2009-06-29 13:28:24 UTC (rev 5154)
@@ -297,7 +297,7 @@
GraphViewerPlugin plugin = getProcessGraphViewPlugin();
if(plugin !=null)
{
- ActiveNodeInfo info = plugin.getActiveNodeInfo(id);
+ List<ActiveNodeInfo> info = plugin.getActiveNodeInfo(id);
return createJsonResponse(info);
}
Modified: projects/gwt-console/trunk/server/server-core/src/main/java/org/jboss/bpm/console/server/TaskMgmtFacade.java
===================================================================
--- projects/gwt-console/trunk/server/server-core/src/main/java/org/jboss/bpm/console/server/TaskMgmtFacade.java 2009-06-29 12:38:48 UTC (rev 5153)
+++ projects/gwt-console/trunk/server/server-core/src/main/java/org/jboss/bpm/console/server/TaskMgmtFacade.java 2009-06-29 13:28:24 UTC (rev 5154)
@@ -32,7 +32,9 @@
import javax.activation.DataHandler;
import javax.activation.DataSource;
+import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.*;
+import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import java.util.HashMap;
@@ -90,6 +92,8 @@
@Path("{taskId}/assign/{ifRef}")
@Produces("application/json")
public Response assignTask(
+ @Context
+ HttpServletRequest request,
@PathParam("taskId")
long taskId,
@PathParam("ifRef")
@@ -97,7 +101,7 @@
)
{
log.debug("Assign task " + taskId + " to '" + idRef +"'");
- getTaskManagement().assignTask(taskId, idRef);
+ getTaskManagement().assignTask(taskId, idRef, request.getRemoteUser());
return Response.ok().build();
}
@@ -105,12 +109,14 @@
@Path("{taskId}/release")
@Produces("application/json")
public Response releaseTask(
+ @Context
+ HttpServletRequest request,
@PathParam("taskId")
long taskId
)
{
log.debug("Release task " + taskId);
- getTaskManagement().assignTask(taskId, null);
+ getTaskManagement().assignTask(taskId, null, request.getRemoteUser());
return Response.ok().build();
}
@@ -118,12 +124,14 @@
@Path("{taskId}/close")
@Produces("application/json")
public Response closeTask(
+ @Context
+ HttpServletRequest request,
@PathParam("taskId")
long taskId
)
{
log.debug("Close task " + taskId );
- getTaskManagement().completeTask(taskId, null);
+ getTaskManagement().completeTask(taskId, null, request.getRemoteUser());
return Response.ok().build();
}
@@ -131,6 +139,8 @@
@Path("{taskId}/close/{outcome}")
@Produces("application/json")
public Response closeTaskWithSignal(
+ @Context
+ HttpServletRequest request,
@PathParam("taskId")
long taskId,
@QueryParam("outcome")
@@ -138,7 +148,7 @@
)
{
log.debug("Close task " + taskId + " outcome " + outcome);
- getTaskManagement().completeTask(taskId, outcome, null);
+ getTaskManagement().completeTask(taskId, outcome, null, request.getRemoteUser());
return Response.ok().build();
}
@@ -164,6 +174,8 @@
@Produces("text/html")
@Consumes("multipart/form-data")
public Response closeWithUI(
+ @Context
+ HttpServletRequest request,
@PathParam("taskId")
long taskId,
MultipartFormDataInput payload
@@ -230,9 +242,9 @@
TaskManagement tm = getTaskManagement();
if(null==outcome)
- tm.completeTask(taskId, processVars);
+ tm.completeTask(taskId, processVars, request.getRemoteUser());
else
- tm.completeTask(taskId, outcome, processVars);
+ tm.completeTask(taskId, outcome, processVars, request.getRemoteUser());
return Response.ok("Successfully processed task UI").build();
Modified: projects/gwt-console/trunk/server/server-integration/src/main/java/org/jboss/bpm/console/server/integration/TaskManagement.java
===================================================================
--- projects/gwt-console/trunk/server/server-integration/src/main/java/org/jboss/bpm/console/server/integration/TaskManagement.java 2009-06-29 12:38:48 UTC (rev 5153)
+++ projects/gwt-console/trunk/server/server-integration/src/main/java/org/jboss/bpm/console/server/integration/TaskManagement.java 2009-06-29 13:28:24 UTC (rev 5154)
@@ -39,22 +39,22 @@
/**
* assign user to task
*/
- void assignTask(long taskId, String idRef);
+ void assignTask(long taskId, String idRef, String userId);
/**
* unset a task assignment
*/
- void releaseTask(long taskId);
+ void releaseTask(long taskId, String userId);
/**
* complete a task
*/
- void completeTask(long taskId, Map data);
+ void completeTask(long taskId, Map data, String userId);
/**
* complete a task with a given outcome (trigger)
*/
- void completeTask(long taskId, String outcome, Map data);
+ void completeTask(long taskId, String outcome, Map data, String userId);
/**
* get tasks assingned to a user
Modified: projects/gwt-console/trunk/server/server-integration/src/main/java/org/jboss/bpm/console/server/plugin/GraphViewerPlugin.java
===================================================================
--- projects/gwt-console/trunk/server/server-integration/src/main/java/org/jboss/bpm/console/server/plugin/GraphViewerPlugin.java 2009-06-29 12:38:48 UTC (rev 5153)
+++ projects/gwt-console/trunk/server/server-integration/src/main/java/org/jboss/bpm/console/server/plugin/GraphViewerPlugin.java 2009-06-29 13:28:24 UTC (rev 5154)
@@ -21,6 +21,8 @@
*/
package org.jboss.bpm.console.server.plugin;
+import java.util.List;
+
import org.jboss.bpm.console.client.model.ActiveNodeInfo;
import org.jboss.bpm.console.client.model.DiagramInfo;
@@ -35,5 +37,5 @@
DiagramInfo getDiagramInfo(String processId);
- ActiveNodeInfo getActiveNodeInfo(String instanceId);
+ List<ActiveNodeInfo> getActiveNodeInfo(String instanceId);
}
More information about the jbpm-commits
mailing list