Overlord SVN: r859 - in report-server/trunk: core and 1 other directories.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2009-10-27 09:05:02 -0400 (Tue, 27 Oct 2009)
New Revision: 859
Modified:
report-server/trunk/core/pom.xml
report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtService.java
report-server/trunk/core/src/main/java/org/jboss/bpm/report/ReportFacade.java
report-server/trunk/pom.xml
report-server/trunk/report-server.iml
report-server/trunk/report-server.iws
Log:
Serialze report.xml towards console
Modified: report-server/trunk/core/pom.xml
===================================================================
--- report-server/trunk/core/pom.xml 2009-10-26 17:23:53 UTC (rev 858)
+++ report-server/trunk/core/pom.xml 2009-10-27 13:05:02 UTC (rev 859)
@@ -172,6 +172,7 @@
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
@@ -180,11 +181,6 @@
<scope>provided</scope>
</dependency>
- <dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- </dependency>
-
</dependencies>
Modified: report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtService.java
===================================================================
--- report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtService.java 2009-10-26 17:23:53 UTC (rev 858)
+++ report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtService.java 2009-10-27 13:05:02 UTC (rev 859)
@@ -21,19 +21,22 @@
*/
package org.jboss.bpm.report;
-import org.eclipse.birt.report.engine.api.*;
-import org.eclipse.birt.core.framework.Platform;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.eclipse.birt.core.framework.Platform;
+import org.eclipse.birt.report.engine.api.*;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.NodeList;
-import java.util.Map;
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import java.io.File;
+import java.io.ByteArrayOutputStream;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
-import java.util.ArrayList;
-import java.util.concurrent.CopyOnWriteArrayList;
-import java.util.concurrent.ConcurrentHashMap;
-import java.io.File;
-import java.io.FileFilter;
+import java.util.Map;
/**
* Core BIRT service component. Requires to step through the lifecycle
@@ -61,10 +64,10 @@
private Map<String, IReportRunnable> cache = new HashMap<String, IReportRunnable>();
- private boolean keepWatching = true;
+ private List<String> templateNames = new ArrayList<String>();
- private List<String> reportNames = new ArrayList<String>();
-
+ private Document reportConfig;
+
public BirtService(IntegrationConfig iConfig)
{
this.iConfig = iConfig;
@@ -75,54 +78,47 @@
{
this.engine = BirtEngineFactory.newInstance(iConfig);
- // scan for reports and initialize watchdog
- Thread watchDog = new Thread(
- new Runnable()
- {
- public void run()
- {
- while(keepWatching)
- {
- File reportdir = new File(iConfig.getReportDir());
- assert reportdir.isDirectory();
+ // parse template config
+ File workDir = new File(iConfig.getReportDir());
+ if(!workDir.exists())
+ throw new IllegalStateException("Working directory "+iConfig.getReportDir()+" cannot be found!");
+
+ File config = new File(workDir, "reports.xml");
+ if(!config.exists())
+ throw new IllegalStateException("Template config (reports.xml) not found: "+iConfig.getReportDir());
- File[] reportTemplates = reportdir.listFiles(
- new FileFilter()
- {
- public boolean accept(File f)
- {
- return f.getName().endsWith(".rptdesign");
- }
- }
- );
+ try
+ {
+ DocumentBuilder docBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
+ reportConfig = docBuilder.parse(config);
+ parseReportNames(reportConfig);
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException("Failed to parse config", e);
+ }
- synchronized(reportNames)
- {
- reportNames.clear();
- for(File f : reportTemplates)
- reportNames.add(f.getName());
- }
-
- try
- {
- Thread.sleep(5*1000);
- }
- catch (InterruptedException e)
- {
- log.error(e);
- }
- }
-
- }
- }
- );
- watchDog.setName(BirtService.class.getName()+"-WatchDog");
- watchDog.start();
-
log.info("Service created: " +this.engine);
currentState = State.CREATED;
}
+ private void parseReportNames(Document reportConfig)
+ {
+ Element root = reportConfig.getDocumentElement();
+
+ NodeList groups = root.getElementsByTagName("group");
+ for(int i=0; i<groups.getLength(); i++)
+ {
+ Element group = (Element)groups.item(i);
+ NodeList reports = group.getElementsByTagName("report");
+ for(int x=0; x<reports.getLength(); x++)
+ {
+ Element report = (Element)reports.item(x);
+ templateNames.add(report.getAttribute("template"));
+ }
+ }
+ }
+
/* non blocking init */
public void createAsync()
{
@@ -153,8 +149,6 @@
if(currentState!=State.STARTED)
throw new IllegalStateException("Please call start lifecylce before stopping the service");
- keepWatching=false; // shutdown watchdog
-
currentState = State.STOPPED;
}
@@ -183,6 +177,9 @@
if( (currentState==State.CREATED || currentState==State.STARTED) == false)
throw new IllegalStateException("Cannot render in state " + currentState);
+ if(!templateNames.contains(metaData.getReportName()))
+ throw new IllegalArgumentException("No such report template: "+metaData.getReportName());
+
String outputFileName = null;
log.debug("Render " + metaData);
@@ -273,8 +270,10 @@
return currentState;
}
- public String[] getReportNames()
+ public String getTemplateConfig()
{
- return reportNames.toArray(new String[] {});
+ ByteArrayOutputStream bout = new ByteArrayOutputStream();
+ new DOMWriter(bout).print(reportConfig.getDocumentElement());
+ return new String(bout.toByteArray());
}
}
Modified: report-server/trunk/core/src/main/java/org/jboss/bpm/report/ReportFacade.java
===================================================================
--- report-server/trunk/core/src/main/java/org/jboss/bpm/report/ReportFacade.java 2009-10-26 17:23:53 UTC (rev 858)
+++ report-server/trunk/core/src/main/java/org/jboss/bpm/report/ReportFacade.java 2009-10-27 13:05:02 UTC (rev 859)
@@ -25,17 +25,17 @@
import org.apache.commons.logging.LogFactory;
import javax.servlet.http.HttpServletRequest;
-import javax.ws.rs.*;
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.Response;
-import java.io.*;
-import java.util.HashMap;
+import java.io.File;
import java.util.Enumeration;
+import java.util.HashMap;
import java.util.Map;
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-
/**
* BIRT integration facade.<p>
*
@@ -206,20 +206,13 @@
}
@GET
- @Path("templates")
- @Produces("application/json")
- public Response getReportNames()
+ @Path("config")
+ @Produces("text/xml")
+ public Response getReportConfig()
{
- return createJsonResponse(birtService.getReportNames());
+ return Response.ok(birtService.getTemplateConfig()).build();
}
- private Response createJsonResponse(Object wrapper)
- {
- Gson gson = new GsonBuilder().create();
- String json = gson.toJson(wrapper);
- return Response.ok(json).type("application/json").build();
- }
-
public class BirtInitException extends Exception
{
public BirtInitException(String message)
Modified: report-server/trunk/pom.xml
===================================================================
--- report-server/trunk/pom.xml 2009-10-26 17:23:53 UTC (rev 858)
+++ report-server/trunk/pom.xml 2009-10-27 13:05:02 UTC (rev 859)
@@ -87,15 +87,9 @@
<groupId>javax.xml.stream</groupId>
<artifactId>stax-api</artifactId>
</exclusion>
- </exclusions>
+ </exclusions>
</dependency>
- <dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- <version>1.2.2</version>
- </dependency>
-
</dependencies>
</dependencyManagement>
Modified: report-server/trunk/report-server.iml
===================================================================
--- report-server/trunk/report-server.iml 2009-10-26 17:23:53 UTC (rev 858)
+++ report-server/trunk/report-server.iml 2009-10-27 13:05:02 UTC (rev 859)
@@ -12,18 +12,9 @@
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.slf4j:slf4j-simple:jar:1.5.2:compile">
- <CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/slf4j/slf4j-simple/1.5.2/slf4j-simple-1.5.2.jar!/" />
- </CLASSES>
- <JAVADOC />
- <SOURCES />
- </library>
- </orderEntry>
- <orderEntry type="module-library" exported="">
<library name="M2 Dep: junit:junit:jar:3.8.1:test">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
@@ -32,7 +23,7 @@
<orderEntry type="module-library" exported="">
<library name="M2 Dep: commons-logging:commons-logging:jar:1.1.1:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
@@ -41,25 +32,16 @@
<orderEntry type="module-library" exported="">
<library name="M2 Dep: commons-discovery:commons-discovery:jar:0.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/commons-discovery/commons-discovery/0.2/commons-discovery-0.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-discovery/commons-discovery/0.2/commons-discovery-0.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: javax.annotation:jsr250-api:jar:1.0:compile">
- <CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar!/" />
- </CLASSES>
- <JAVADOC />
- <SOURCES />
- </library>
- </orderEntry>
- <orderEntry type="module-library" exported="">
<library name="M2 Dep: commons-cli:commons-cli:jar:1.0:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/commons-cli/commons-cli/1.0/commons-cli-1.0.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-cli/commons-cli/1.0/commons-cli-1.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
@@ -68,216 +50,226 @@
<orderEntry type="module-library" exported="">
<library name="M2 Dep: commons-codec:commons-codec:jar:1.3:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/commons-codec/commons-codec/1.3/commons-codec-1.3.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-codec/commons-codec/1.3/commons-codec-1.3.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/commons-codec/commons-codec/1.3/commons-codec-1.3-sources.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-codec/commons-codec/1.3/commons-codec-1.3-sources.jar!/" />
</SOURCES>
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
<library name="M2 Dep: org.w3c:sac:jar:1.3:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/w3c/sac/1.3/sac-1.3.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/w3c/sac/1.3/sac-1.3.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.slf4j:slf4j-api:jar:1.5.2:compile">
+ <library name="M2 Dep: rhino:js:jar:1.6R2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/slf4j/slf4j-api/1.5.2/slf4j-api-1.5.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/rhino/js/1.6R2/js-1.6R2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: javassist:javassist:jar:3.6.0.GA:compile">
+ <library name="M2 Dep: com.lowagie:itext:jar:1.3:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/javassist/javassist/3.6.0.GA/javassist-3.6.0.GA.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/com/lowagie/itext/1.3/itext-1.3.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: rhino:js:jar:1.6R2:compile">
+ <library name="M2 Dep: org.w3c:flute:jar:1.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/rhino/js/1.6R2/js-1.6R2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/w3c/flute/1.2/flute-1.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: com.lowagie:itext:jar:1.3:compile">
+ <library name="M2 Dep: javax.servlet:servlet-api:jar:2.4:provided">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/com/lowagie/itext/1.3/itext-1.3.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/javax/servlet/servlet-api/2.4/servlet-api-2.4.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.w3c:flute:jar:1.2:compile">
+ <library name="M2 Dep: org.eclipse.birt:modelapi:jar:2.3.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/w3c/flute/1.2/flute-1.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/eclipse/birt/modelapi/2.3.2/modelapi-2.3.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.scannotation:scannotation:jar:1.0.2:compile">
+ <library name="M2 Dep: org.eclipse.birt:dataadapterapi:jar:2.3.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/scannotation/scannotation/1.0.2/scannotation-1.0.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/eclipse/birt/dataadapterapi/2.3.2/dataadapterapi-2.3.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: javax.servlet:servlet-api:jar:2.4:provided">
+ <library name="M2 Dep: org.eclipse.birt:chartengineapi:jar:2.3.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/javax/servlet/servlet-api/2.4/servlet-api-2.4.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/eclipse/birt/chartengineapi/2.3.2/chartengineapi-2.3.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.eclipse.birt:modelapi:jar:2.3.2:compile">
+ <library name="M2 Dep: org.eclipse.birt:scriptapi:jar:2.3.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/modelapi/2.3.2/modelapi-2.3.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/eclipse/birt/scriptapi/2.3.2/scriptapi-2.3.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.eclipse.birt:dataadapterapi:jar:2.3.2:compile">
+ <library name="M2 Dep: org.eclipse.birt:engineapi:jar:2.3.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/dataadapterapi/2.3.2/dataadapterapi-2.3.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/eclipse/birt/engineapi/2.3.2/engineapi-2.3.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.jboss.resteasy:resteasy-jaxrs:jar:1.0.2.GA:compile">
+ <library name="M2 Dep: org.eclipse.birt:dteapi:jar:2.3.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/jboss/resteasy/resteasy-jaxrs/1.0.2.GA/resteasy-jaxrs-1.0.2.GA.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/eclipse/birt/dteapi/2.3.2/dteapi-2.3.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.eclipse.birt:chartengineapi:jar:2.3.2:compile">
+ <library name="M2 Dep: org.eclipse.birt:coreapi:jar:2.3.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/chartengineapi/2.3.2/chartengineapi-2.3.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/eclipse/birt/coreapi/2.3.2/coreapi-2.3.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.eclipse.birt:scriptapi:jar:2.3.2:compile">
+ <library name="M2 Dep: org.eclipse.emf:common:jar:2.4.0:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/scriptapi/2.3.2/scriptapi-2.3.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/eclipse/emf/common/2.4.0/common-2.4.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.eclipse.birt:engineapi:jar:2.3.2:compile">
+ <library name="M2 Dep: org.eclipse.emf:ecore-xmi:jar:2.4.1:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/engineapi/2.3.2/engineapi-2.3.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/eclipse/emf/ecore-xmi/2.4.1/ecore-xmi-2.4.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.eclipse.birt:dteapi:jar:2.3.2:compile">
+ <library name="M2 Dep: org.eclipse.emf:ecore:jar:2.4.2:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/dteapi/2.3.2/dteapi-2.3.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/eclipse/emf/ecore/2.4.2/ecore-2.4.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.eclipse.birt:coreapi:jar:2.3.2:compile">
+ <library name="M2 Dep: com.ibm.icu:icu4j:jar:3.8.1:compile">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/coreapi/2.3.2/coreapi-2.3.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/com/ibm/icu/icu4j/3.8.1/icu4j-3.8.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
+ <orderEntry type="module-library">
+ <library>
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/com/google/code/gson/gson/1.2.2/gson-1.2.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.jboss.resteasy:jaxrs-api:jar:1.0.2.GA:compile">
+ <library name="M2 Dep: org.slf4j:slf4j-simple:jar:1.5.2:provided">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/jboss/resteasy/jaxrs-api/1.0.2.GA/jaxrs-api-1.0.2.GA.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/slf4j/slf4j-simple/1.5.2/slf4j-simple-1.5.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.eclipse.emf:common:jar:2.4.0:compile">
+ <library name="M2 Dep: org.jboss.resteasy:resteasy-jaxrs:jar:1.0.2.GA:provided">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/emf/common/2.4.0/common-2.4.0.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/jboss/resteasy/resteasy-jaxrs/1.0.2.GA/resteasy-jaxrs-1.0.2.GA.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.eclipse.emf:ecore-xmi:jar:2.4.1:compile">
+ <library name="M2 Dep: javax.annotation:jsr250-api:jar:1.0:provided">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/emf/ecore-xmi/2.4.1/ecore-xmi-2.4.1.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: org.eclipse.emf:ecore:jar:2.4.2:compile">
+ <library name="M2 Dep: org.slf4j:slf4j-api:jar:1.5.2:provided">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/emf/ecore/2.4.2/ecore-2.4.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/slf4j/slf4j-api/1.5.2/slf4j-api-1.5.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: com.ibm.icu:icu4j:jar:3.8.1:compile">
+ <library name="M2 Dep: javassist:javassist:jar:3.6.0.GA:provided">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/com/ibm/icu/icu4j/3.8.1/icu4j-3.8.1.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/javassist/javassist/3.6.0.GA/javassist-3.6.0.GA.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
- <orderEntry type="module-library">
- <library>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.jboss.resteasy:jaxrs-api:jar:1.0.2.GA:provided">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/com/google/code/gson/gson/1.2.2/gson-1.2.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/jboss/resteasy/jaxrs-api/1.0.2.GA/jaxrs-api-1.0.2.GA.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: com.google.code.gson:gson:jar:1.2.2:compile">
+ <library name="M2 Dep: org.scannotation:scannotation:jar:1.0.2:provided">
<CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/com/google/code/gson/gson/1.2.2/gson-1.2.2.jar!/" />
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/org/scannotation/scannotation/1.0.2/scannotation-1.0.2.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
Modified: report-server/trunk/report-server.iws
===================================================================
--- report-server/trunk/report-server.iws 2009-10-26 17:23:53 UTC (rev 858)
+++ report-server/trunk/report-server.iws 2009-10-27 13:05:02 UTC (rev 859)
@@ -16,9 +16,7 @@
<option name="USER" value="" />
</component>
<component name="ChangeListManager">
- <list default="true" name="Default" comment="">
- <change type="MODIFICATION" beforePath="$PROJECT_DIR$/report-server.iws" afterPath="$PROJECT_DIR$/report-server.iws" />
- </list>
+ <list default="true" name="Default" comment="" />
</component>
<component name="ChangeListSynchronizer" />
<component name="ChangesViewManager" flattened_view="true" />
@@ -132,7 +130,26 @@
</component>
<component name="FavoritesProjectViewPane" />
<component name="FileEditorManager">
- <leaf />
+ <leaf>
+ <file leaf-file-name="BirtService.java" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/core/src/main/java/org/jboss/bpm/report/BirtService.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="87" column="52" selection-start="3099" selection-end="3099" vertical-scroll-proportion="0.026143791">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="sample-reports.xml" pinned="false" current="true" current-in-tab="true">
+ <entry file="file://$PROJECT_DIR$/core/src/main/resources/sample-reports.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="9" column="19" selection-start="412" selection-end="412" vertical-scroll-proportion="0.22966507">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ </leaf>
</component>
<component name="FindManager">
<FindUsagesManager>
@@ -164,7 +181,18 @@
</component>
<component name="NamedScopeManager" />
<component name="PackagesPane">
- <subPane />
+ <subPane>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewModuleNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ </subPane>
</component>
<component name="PerforceChangeBrowserSettings">
<option name="USE_CLIENT_FILTER" value="true" />
@@ -293,6 +321,10 @@
<option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/core/src/main" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/core/src/main/resources" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
@@ -361,25 +393,6 @@
<component name="RecentsManager" />
<component name="RestoreUpdateTree" />
<component name="RunManager">
- <configuration default="true" type="Applet" factoryName="Applet">
- <module name="" />
- <option name="MAIN_CLASS_NAME" />
- <option name="HTML_FILE_NAME" />
- <option name="HTML_USED" value="false" />
- <option name="WIDTH" value="400" />
- <option name="HEIGHT" value="300" />
- <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
- <option name="VM_PARAMETERS" />
- <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
- <option name="ALTERNATIVE_JRE_PATH" />
- </configuration>
- <configuration default="true" type="Remote" factoryName="Remote">
- <option name="USE_SOCKET_TRANSPORT" value="true" />
- <option name="SERVER_MODE" value="false" />
- <option name="SHMEM_ADDRESS" value="javadebug" />
- <option name="HOST" value="localhost" />
- <option name="PORT" value="5005" />
- </configuration>
<configuration default="true" type="Application" factoryName="Application" enabled="false" merge="false">
<option name="MAIN_CLASS_NAME" />
<option name="VM_PARAMETERS" />
@@ -405,7 +418,29 @@
<option name="TEST_SEARCH_SCOPE">
<value defaultName="wholeProject" />
</option>
+ <method>
+ <option name="Make" value="true" />
+ </method>
</configuration>
+ <configuration default="true" type="Applet" factoryName="Applet">
+ <module name="" />
+ <option name="MAIN_CLASS_NAME" />
+ <option name="HTML_FILE_NAME" />
+ <option name="HTML_USED" value="false" />
+ <option name="WIDTH" value="400" />
+ <option name="HEIGHT" value="300" />
+ <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
+ <option name="VM_PARAMETERS" />
+ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+ <option name="ALTERNATIVE_JRE_PATH" />
+ </configuration>
+ <configuration default="true" type="Remote" factoryName="Remote">
+ <option name="USE_SOCKET_TRANSPORT" value="true" />
+ <option name="SERVER_MODE" value="false" />
+ <option name="SHMEM_ADDRESS" value="javadebug" />
+ <option name="HOST" value="localhost" />
+ <option name="PORT" value="5005" />
+ </configuration>
<configuration name="<template>" type="WebApp" default="true" selected="false">
<Host>localhost</Host>
<Port>5050</Port>
@@ -487,13 +522,13 @@
</component>
<component name="ToolWindowManager">
<frame x="0" y="22" width="1280" height="774" extended-state="6" />
- <editor active="false" />
+ <editor active="true" />
<layout>
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
<window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
<window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="7" />
- <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.3290008" order="0" />
+ <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.30625507" order="0" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3299363" order="1" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="1" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
@@ -639,6 +674,20 @@
</state>
</provider>
</entry>
+ <entry file="file://$PROJECT_DIR$/core/src/main/java/org/jboss/bpm/report/BirtService.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="87" column="52" selection-start="3099" selection-end="3099" vertical-scroll-proportion="0.026143791">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/core/src/main/resources/sample-reports.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="9" column="19" selection-start="412" selection-end="412" vertical-scroll-proportion="0.22966507">
+ <folding />
+ </state>
+ </provider>
+ </entry>
</component>
</project>
14 years, 7 months
Overlord SVN: r858 - in report-server/trunk: core and 18 other directories.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2009-10-26 13:23:53 -0400 (Mon, 26 Oct 2009)
New Revision: 858
Added:
report-server/trunk/core/
report-server/trunk/core/pom.xml
report-server/trunk/core/src/
report-server/trunk/core/src/main/
report-server/trunk/core/src/main/java/
report-server/trunk/core/src/main/java/org/
report-server/trunk/core/src/main/java/org/jboss/
report-server/trunk/core/src/main/java/org/jboss/bpm/
report-server/trunk/core/src/main/java/org/jboss/bpm/report/
report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtEngineFactory.java
report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtService.java
report-server/trunk/core/src/main/java/org/jboss/bpm/report/FileWriter.java
report-server/trunk/core/src/main/java/org/jboss/bpm/report/IntegrationConfig.java
report-server/trunk/core/src/main/java/org/jboss/bpm/report/JMXServerConfig.java
report-server/trunk/core/src/main/java/org/jboss/bpm/report/RenderMetaData.java
report-server/trunk/core/src/main/java/org/jboss/bpm/report/ReportFacade.java
report-server/trunk/core/src/main/resources/
report-server/trunk/core/src/main/resources/sample.rptdesign
report-server/trunk/pom.xml
report-server/trunk/report-server.iml
report-server/trunk/report-server.ipr
report-server/trunk/report-server.iws
report-server/trunk/server/
report-server/trunk/server/pom.xml
report-server/trunk/server/src/
report-server/trunk/server/src/main/
report-server/trunk/server/src/main/java/
report-server/trunk/server/src/main/java/org/
report-server/trunk/server/src/main/java/org/jboss/
report-server/trunk/server/src/main/java/org/jboss/bpm/
report-server/trunk/server/src/main/java/org/jboss/bpm/report/
report-server/trunk/server/src/main/java/org/jboss/bpm/report/ServerApplication.java
report-server/trunk/server/src/main/resources/
report-server/trunk/server/src/main/webapp/
report-server/trunk/server/src/main/webapp/WEB-INF/
report-server/trunk/server/src/main/webapp/WEB-INF/jboss-web.xml
report-server/trunk/server/src/main/webapp/WEB-INF/web.xml
report-server/trunk/server/src/main/webapp/index.html
report-server/trunk/server/src/main/webapp/loader.gif
report-server/trunk/server/src/main/webapp/loadffw.html
Log:
Move over from jbpm/projects
Added: report-server/trunk/core/pom.xml
===================================================================
--- report-server/trunk/core/pom.xml (rev 0)
+++ report-server/trunk/core/pom.xml 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,192 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <name>JBoss BPM - Report Core</name>
+ <groupId>org.jboss.bpm</groupId>
+ <artifactId>report-core</artifactId>
+ <packaging>jar</packaging>
+
+ <!-- Parent -->
+ <parent>
+ <groupId>org.jboss.bpm</groupId>
+ <artifactId>report-parent</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <properties>
+ <birt.version>2.3.2</birt.version>
+ </properties>
+
+ <dependencies>
+ <!-- Other -->
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.birt</groupId>
+ <artifactId>engineapi</artifactId>
+ <version>${birt.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>dom4j</groupId>
+ <artifactId>dom4j</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.birt</groupId>
+ <artifactId>chartengineapi</artifactId>
+ <version>${birt.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.birt</groupId>
+ <artifactId>coreapi</artifactId>
+ <version>${birt.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.birt</groupId>
+ <artifactId>dataadapterapi</artifactId>
+ <version>${birt.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.birt</groupId>
+ <artifactId>modelapi</artifactId>
+ <version>${birt.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.birt</groupId>
+ <artifactId>scriptapi</artifactId>
+ <version>${birt.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.birt</groupId>
+ <artifactId>dteapi</artifactId>
+ <version>${birt.version}</version>
+ </dependency>
+
+ <!-- EMF (Eclipse Modeling Framework ) -->
+
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>ecore</artifactId>
+ <version>2.4.2</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>ecore-xmi</artifactId>
+ <version>2.4.1</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.emf</groupId>
+ <artifactId>common</artifactId>
+ <version>2.4.0</version>
+ </dependency>
+
+ <!-- W3C -->
+
+ <dependency>
+ <groupId>org.w3c</groupId>
+ <artifactId>flute</artifactId>
+ <version>1.2</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.w3c</groupId>
+ <artifactId>sac</artifactId>
+ <version>1.3</version>
+ </dependency>
+
+ <!-- Commons -->
+ <dependency>
+ <groupId>commons-codec</groupId>
+ <artifactId>commons-codec</artifactId>
+ <version>1.3</version>
+ <!-- removing unwanted transitive dependencies -->
+ <exclusions>
+ <exclusion>
+ <artifactId>junit</artifactId>
+ <groupId>junit</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>commons-cli</groupId>
+ <artifactId>commons-cli</artifactId>
+ <version>1.0</version>
+ <!-- removing unwanted transitive dependencies -->
+ <exclusions>
+ <exclusion>
+ <artifactId>commons-lang</artifactId>
+ <groupId>commons-lang</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>commons-logging</artifactId>
+ <groupId>commons-logging</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>commons-discovery</groupId>
+ <artifactId>commons-discovery</artifactId>
+ <version>0.2</version>
+ </dependency>
+
+ <!-- misc -->
+ <dependency>
+ <groupId>com.lowagie</groupId>
+ <artifactId>itext</artifactId>
+ <version>1.3</version>
+ </dependency>
+
+ <dependency>
+ <groupId>com.ibm.icu</groupId>
+ <artifactId>icu4j</artifactId>
+ <version>3.8.1</version>
+ </dependency>
+
+ <dependency>
+ <groupId>rhino</groupId>
+ <artifactId>js</artifactId>
+ <version>1.6R2</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.resteasy</groupId>
+ <artifactId>resteasy-jaxrs</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>com.google.code.gson</groupId>
+ <artifactId>gson</artifactId>
+ </dependency>
+
+ </dependencies>
+
+
+
+</project>
Added: report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtEngineFactory.java
===================================================================
--- report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtEngineFactory.java (rev 0)
+++ report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtEngineFactory.java 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,56 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.report;
+
+import org.eclipse.birt.report.engine.api.IReportEngine;
+import org.eclipse.birt.report.engine.api.EngineConfig;
+import org.eclipse.birt.report.engine.api.IReportEngineFactory;
+import org.eclipse.birt.core.framework.Platform;
+import org.eclipse.birt.core.exception.BirtException;
+
+/**
+ * Constructs an {@link IReportEngine} from {@link org.jboss.bpm.report.IntegrationConfig}
+ *
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class BirtEngineFactory
+{
+ public static IReportEngine newInstance(IntegrationConfig iConfig)
+ {
+ try
+ {
+ EngineConfig config = new EngineConfig( );
+ config.setBIRTHome(iConfig.getBirtHome());
+
+ Platform.startup( config );
+ IReportEngineFactory factory = (IReportEngineFactory) Platform
+ .createFactoryObject( IReportEngineFactory.EXTENSION_REPORT_ENGINE_FACTORY );
+
+ IReportEngine engine = factory.createReportEngine( config );
+ return engine;
+ }
+ catch (BirtException e)
+ {
+ throw new RuntimeException("Failed to create birt engine", e);
+ }
+ }
+}
Added: report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtService.java
===================================================================
--- report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtService.java (rev 0)
+++ report-server/trunk/core/src/main/java/org/jboss/bpm/report/BirtService.java 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,280 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.report;
+
+import org.eclipse.birt.report.engine.api.*;
+import org.eclipse.birt.core.framework.Platform;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import java.util.Map;
+import java.util.HashMap;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.concurrent.CopyOnWriteArrayList;
+import java.util.concurrent.ConcurrentHashMap;
+import java.io.File;
+import java.io.FileFilter;
+
+/**
+ * Core BIRT service component. Requires to step through the lifecycle
+ * before it can be used:
+ * <ul>
+ * <li>create: constructs a BIRT engine and platform
+ * <li>start:
+ * <li>stop:
+ * <li>destroy: destroy engine and shutdown platform
+ *
+ * @see org.eclipse.birt.report.engine.api.IReportEngine#destroy()
+ * @see org.eclipse.birt.core.framework.Platform#shutdown()
+ *
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class BirtService
+{
+ private static final Log log = LogFactory.getLog(BirtService.class);
+
+ private IReportEngine engine;
+ private IntegrationConfig iConfig;
+
+ private enum State {NONE, CREATED, STARTED, STOPPED, DESTROYED};
+ private State currentState = State.NONE;
+
+ private Map<String, IReportRunnable> cache = new HashMap<String, IReportRunnable>();
+
+ private boolean keepWatching = true;
+
+ private List<String> reportNames = new ArrayList<String>();
+
+ public BirtService(IntegrationConfig iConfig)
+ {
+ this.iConfig = iConfig;
+ }
+
+ /* blocking call*/
+ public void create()
+ {
+ this.engine = BirtEngineFactory.newInstance(iConfig);
+
+ // scan for reports and initialize watchdog
+ Thread watchDog = new Thread(
+ new Runnable()
+ {
+ public void run()
+ {
+ while(keepWatching)
+ {
+ File reportdir = new File(iConfig.getReportDir());
+ assert reportdir.isDirectory();
+
+ File[] reportTemplates = reportdir.listFiles(
+ new FileFilter()
+ {
+ public boolean accept(File f)
+ {
+ return f.getName().endsWith(".rptdesign");
+ }
+ }
+ );
+
+ synchronized(reportNames)
+ {
+ reportNames.clear();
+ for(File f : reportTemplates)
+ reportNames.add(f.getName());
+ }
+
+ try
+ {
+ Thread.sleep(5*1000);
+ }
+ catch (InterruptedException e)
+ {
+ log.error(e);
+ }
+ }
+
+ }
+ }
+ );
+ watchDog.setName(BirtService.class.getName()+"-WatchDog");
+ watchDog.start();
+
+ log.info("Service created: " +this.engine);
+ currentState = State.CREATED;
+ }
+
+ /* non blocking init */
+ public void createAsync()
+ {
+ Thread t = new Thread(
+ new Runnable()
+ {
+ public void run()
+ {
+ log.info("Creating BIRT service in the background");
+ create();
+ }
+ }
+ );
+
+ t.start();
+ }
+
+ public void start()
+ {
+ if(currentState!=State.CREATED)
+ throw new IllegalStateException("Please call create lifecylce before starting the service");
+
+ currentState = State.STARTED;
+ }
+
+ public void stop()
+ {
+ if(currentState!=State.STARTED)
+ throw new IllegalStateException("Please call start lifecylce before stopping the service");
+
+ keepWatching=false; // shutdown watchdog
+
+ currentState = State.STOPPED;
+ }
+
+ public void destroy()
+ {
+ if(engine!=null)
+ engine.destroy();
+ Platform.shutdown();
+ log.info("Service destroyed");
+ currentState = State.DESTROYED;
+ }
+
+ /**
+ * Render a report based on render meta data.
+ * this routin simply return the output filename.
+ * in order to get to an absolute path you need to prepend the service output directory:<p>
+ * <code>
+ * BirtService.getIntegrationConfig().getOutputDir() + outputFileName;
+ * </code>
+ *
+ * @param metaData render instruction like the template name
+ * @return output filename
+ */
+ public String render(RenderMetaData metaData)
+ {
+ if( (currentState==State.CREATED || currentState==State.STARTED) == false)
+ throw new IllegalStateException("Cannot render in state " + currentState);
+
+ String outputFileName = null;
+
+ log.debug("Render " + metaData);
+
+ try
+ {
+ //Open a (cached) report design
+ IReportRunnable design = cache.get(metaData.getReportName());
+ if(null==design)
+ {
+ design = engine.openReportDesign(
+ iConfig.getReportDir()+metaData.getReportName()
+ );
+ cache.put(metaData.getReportName(), design);
+ }
+
+ //Create runRenderTask to run and render the report,
+ IRunAndRenderTask runRenderTask = engine.createRunAndRenderTask(design);
+ //Set parent classloader for engine
+ runRenderTask.getAppContext().put(EngineConstants.APPCONTEXT_CLASSLOADER_KEY, metaData.getClassloader());
+ runRenderTask.setParameterValues(metaData.getParameters());
+
+ // ------------------
+
+ IRenderOption options = new RenderOption();
+ switch(metaData.getFormat())
+ {
+ case HTML:
+ options.setOutputFormat("html");
+ outputFileName = extactReportName(metaData.getReportName())+".html";
+ break;
+ case PDF:
+ options.setOutputFormat("pdf");
+ outputFileName = extactReportName(metaData.getReportName())+".pdf";
+ break;
+ }
+ options.setOutputFileName(iConfig.getOutputDir() + outputFileName);
+
+ // ------------------
+
+ if( options.getOutputFormat().equalsIgnoreCase("html"))
+ {
+ HTMLRenderOption htmlOptions = new HTMLRenderOption( options);
+ htmlOptions.setImageHandler(new HTMLServerImageHandler());
+ htmlOptions.setImageDirectory(iConfig.getImageDirectory());
+ htmlOptions.setBaseImageURL(metaData.getImageBaseUrl());
+ htmlOptions.setHtmlPagination(false);
+ htmlOptions.setHtmlRtLFlag(false);
+ //Setting this to true removes html and body tags
+ htmlOptions.setEmbeddable(false);
+ runRenderTask.setRenderOption(htmlOptions);
+ }
+ else if( options.getOutputFormat().equalsIgnoreCase("pdf") ){
+
+ PDFRenderOption pdfOptions = new PDFRenderOption( options );
+ pdfOptions.setOption( IPDFRenderOption.FIT_TO_PAGE, new Boolean(true) );
+ pdfOptions.setOption( IPDFRenderOption.PAGEBREAK_PAGINATION_ONLY, new Boolean(true) );
+ runRenderTask.setRenderOption(pdfOptions);
+ }
+
+ // ------------------
+ if(runRenderTask.getRenderOption()==null)
+ runRenderTask.setRenderOption(options);
+
+ runRenderTask.run();
+ runRenderTask.close();
+ }
+ catch (EngineException e)
+ {
+ throw new RuntimeException("Failed to render report: "+e.getMessage(), e);
+ }
+
+ return outputFileName;
+ }
+
+ public IntegrationConfig getIntegrationConfig()
+ {
+ return iConfig;
+ }
+
+ private static String extactReportName(String reportFile)
+ {
+ return reportFile.substring( 0, reportFile.indexOf("."));
+ }
+
+ public State getCurrentState()
+ {
+ return currentState;
+ }
+
+ public String[] getReportNames()
+ {
+ return reportNames.toArray(new String[] {});
+ }
+}
Added: report-server/trunk/core/src/main/java/org/jboss/bpm/report/FileWriter.java
===================================================================
--- report-server/trunk/core/src/main/java/org/jboss/bpm/report/FileWriter.java (rev 0)
+++ report-server/trunk/core/src/main/java/org/jboss/bpm/report/FileWriter.java 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,67 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.report;
+
+import javax.ws.rs.ext.Provider;
+import javax.ws.rs.ext.MessageBodyWriter;
+import javax.ws.rs.Produces;
+import javax.ws.rs.WebApplicationException;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.MultivaluedMap;
+import java.lang.reflect.Type;
+import java.lang.annotation.Annotation;
+import java.io.OutputStream;
+import java.io.IOException;
+import java.io.FileInputStream;
+import java.io.File;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+@Provider
+@Produces({"text/html", "image/*"})
+public class FileWriter implements MessageBodyWriter
+{
+
+ public boolean isWriteable(Class aClass, Type type, Annotation[] annotations, MediaType mediaType)
+ {
+ return aClass.equals(java.io.File.class);
+ }
+
+ public long getSize(Object o, Class aClass, Type type, Annotation[] annotations, MediaType mediaType)
+ {
+ return ((File)o).length();
+ }
+
+ public void writeTo(Object o, Class aClass, Type type, Annotation[] annotations, MediaType mediaType, MultivaluedMap multivaluedMap, OutputStream outputStream) throws IOException, WebApplicationException
+ {
+ FileInputStream fin = new FileInputStream((File)o);
+ int c;
+ while ((c = fin.read()) != -1)
+ {
+ outputStream.write(c);
+ }
+
+ fin.close();
+
+ }
+}
Added: report-server/trunk/core/src/main/java/org/jboss/bpm/report/IntegrationConfig.java
===================================================================
--- report-server/trunk/core/src/main/java/org/jboss/bpm/report/IntegrationConfig.java (rev 0)
+++ report-server/trunk/core/src/main/java/org/jboss/bpm/report/IntegrationConfig.java 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,85 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.report;
+
+/**
+ * Adopts an integration layout (i.e. working directories) to BIRT configuration.
+ *
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class IntegrationConfig
+{
+ private String birtHome = null;
+ private String reportDir = null;
+ private String outputDir = null;
+ private String imageBaseUrl = null;
+
+ public String getBirtHome()
+ {
+ return birtHome;
+ }
+
+ public void setBirtHome(String birtHome)
+ {
+ this.birtHome = birtHome;
+ }
+
+ public String getReportDir()
+ {
+ return reportDir;
+ }
+
+ public void setReportDir(String reportDir)
+ {
+ this.reportDir = ensureDirectoryName(reportDir);
+ }
+
+ public String getOutputDir()
+ {
+ return outputDir;
+ }
+
+ public void setOutputDir(String outputDir)
+ {
+ this.outputDir = ensureDirectoryName(outputDir);
+ }
+
+ public void setImageBaseUrl(String imageBaseUrl)
+ {
+ this.imageBaseUrl = ensureDirectoryName(imageBaseUrl);
+ }
+
+
+ public String getImageDirectory()
+ {
+ return getOutputDir()+"image/";
+ }
+
+ private String ensureDirectoryName(String name)
+ {
+ if(name.endsWith("/"))
+ return name;
+ else
+ return name+"/";
+ }
+
+}
Added: report-server/trunk/core/src/main/java/org/jboss/bpm/report/JMXServerConfig.java
===================================================================
--- report-server/trunk/core/src/main/java/org/jboss/bpm/report/JMXServerConfig.java (rev 0)
+++ report-server/trunk/core/src/main/java/org/jboss/bpm/report/JMXServerConfig.java 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,152 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.report;
+
+import javax.management.*;
+import java.io.File;
+import java.util.Hashtable;
+import java.util.List;
+
+/**
+ * Hooks into JMX to get the JBoss AS configuration.
+ * (temp directories, etc)
+ *
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class JMXServerConfig
+{
+ // The MBeanServer
+ private MBeanServer mbeanServer;
+
+ public JMXServerConfig()
+ {
+ this.mbeanServer = getDefaultMBeanServer();
+ }
+
+ public MBeanServer getMbeanServer()
+ {
+ return mbeanServer;
+ }
+
+ public void setMbeanServer(MBeanServer mbeanServer)
+ {
+ this.mbeanServer = mbeanServer;
+ }
+
+ public File getServerTempDir()
+ {
+ try
+ {
+ ObjectName oname = ObjectNameFactory.create("jboss.system:type=ServerConfig");
+ File dir = (File)getMbeanServer().getAttribute(oname, "ServerTempDir");
+ return dir;
+ }
+ catch (JMException e)
+ {
+ return null;
+ }
+ }
+
+ public File getHomeDir()
+ {
+ try
+ {
+ ObjectName oname = ObjectNameFactory.create("jboss.system:type=ServerConfig");
+ File dir = (File)getMbeanServer().getAttribute(oname, "HomeDir");
+ return dir;
+ }
+ catch (JMException e)
+ {
+ return null;
+ }
+ }
+
+ public File getServerDataDir()
+ {
+ try
+ {
+ ObjectName oname = ObjectNameFactory.create("jboss.system:type=ServerConfig");
+ File dir = (File)getMbeanServer().getAttribute(oname, "ServerDataDir");
+ return dir;
+ }
+ catch (JMException e)
+ {
+ return null;
+ }
+ }
+
+ public static MBeanServer getDefaultMBeanServer() {
+ return findMBeanServer("jboss");
+ }
+
+ private static MBeanServer findMBeanServer(String agentId) {
+ List servers = MBeanServerFactory.findMBeanServer(null);
+ if (servers != null && servers.size() > 0) {
+ for (Object object : servers) {
+ MBeanServer server = (MBeanServer) object;
+ if (server.getDefaultDomain().equals(agentId)) {
+ return server;
+ }
+ }
+ }
+ return null;
+ }
+
+ public static class ObjectNameFactory
+ {
+ public static ObjectName create(String name)
+ {
+ try
+ {
+ return new ObjectName(name);
+ }
+ catch (MalformedObjectNameException e)
+ {
+ throw new Error("Invalid ObjectName: " + name + "; " + e);
+ }
+ }
+
+ public static ObjectName create(String domain, String key, String value)
+ {
+ try
+ {
+ return new ObjectName(domain, key, value);
+ }
+ catch (MalformedObjectNameException e)
+ {
+ throw new Error("Invalid ObjectName: " + domain + "," + key + "," + value + "; " + e);
+ }
+ }
+
+ public static ObjectName create(String domain, Hashtable table)
+ {
+ try
+ {
+ return new ObjectName(domain, table);
+ }
+ catch (MalformedObjectNameException e)
+ {
+ throw new Error("Invalid ObjectName: " + domain + "," + table + "; " + e);
+ }
+ }
+ }
+}
Added: report-server/trunk/core/src/main/java/org/jboss/bpm/report/RenderMetaData.java
===================================================================
--- report-server/trunk/core/src/main/java/org/jboss/bpm/report/RenderMetaData.java (rev 0)
+++ report-server/trunk/core/src/main/java/org/jboss/bpm/report/RenderMetaData.java 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,104 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.report;
+
+import java.util.Map;
+import java.util.HashMap;
+
+/**
+ * Drives a {@link org.jboss.bpm.report.BirtService#render(RenderMetaData)} call.
+ *
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class RenderMetaData
+{
+ public enum Format {HTML, PDF};
+
+ private ClassLoader classloader;
+ private String reportName;
+ private Format format;
+ private Map parameters = new HashMap();
+ private String imageBaseUrl;
+
+ public RenderMetaData()
+ {
+ }
+
+ public RenderMetaData(ClassLoader classloader, String reportName, Format format, String imageBaseUrl)
+ {
+ this.classloader = classloader;
+ this.reportName = reportName;
+ this.format = format;
+ this.imageBaseUrl = imageBaseUrl;
+ }
+
+ public String getImageBaseUrl()
+ {
+ return imageBaseUrl;
+ }
+
+ public void setImageBaseUrl(String imageBaseUrl)
+ {
+ this.imageBaseUrl = imageBaseUrl;
+ }
+
+ public ClassLoader getClassloader()
+ {
+ return classloader;
+ }
+
+ public void setClassloader(ClassLoader classloader)
+ {
+ this.classloader = classloader;
+ }
+
+ public String getReportName()
+ {
+ return reportName;
+ }
+
+ public void setReportName(String reportName)
+ {
+ this.reportName = reportName;
+ }
+
+ public Format getFormat()
+ {
+ return format;
+ }
+
+ public void setFormat(Format format)
+ {
+ this.format = format;
+ }
+
+
+ public String toString()
+ {
+ return "RenderMetaData {reportName="+reportName+", format="+format+"}";
+ }
+
+ public Map getParameters()
+ {
+ return parameters;
+ }
+}
Added: report-server/trunk/core/src/main/java/org/jboss/bpm/report/ReportFacade.java
===================================================================
--- report-server/trunk/core/src/main/java/org/jboss/bpm/report/ReportFacade.java (rev 0)
+++ report-server/trunk/core/src/main/java/org/jboss/bpm/report/ReportFacade.java 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,236 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.report;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.ws.rs.*;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.Response;
+import java.io.*;
+import java.util.HashMap;
+import java.util.Enumeration;
+import java.util.Map;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+
+/**
+ * BIRT integration facade.<p>
+ *
+ * Uses the server data directory (i.e. <code>$JBOSS_HOME/server/default/data/birt</code>)
+ * as it's work directory (referred to as $WORK_DIR in the subsequent sections):
+ *
+ * <ul>
+ * <li>report template location: $WORK_DIR/
+ * <li>output directory: $WORK_DIR/output
+ * </ul>
+ *
+ * NOTE: It requires a BIRT report engine to be installed in the work directory:
+ * (<code>$WORK_DIR/ReportEngine</code>.
+ *
+ * @see org.jboss.bpm.report.JMXServerConfig
+ *
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+@Path("report")
+public class ReportFacade
+{
+ private static final Log log = LogFactory.getLog(ReportFacade.class);
+ private BirtService birtService;
+ private boolean isInitialized;
+
+
+ public ReportFacade()
+ {
+ try
+ {
+ initBirtService();
+ }
+ catch (BirtInitException e)
+ {
+ log.error("Failed to initialize BIRT service", e);
+ }
+ }
+
+ public void initBirtService()
+ throws BirtInitException
+ {
+ if(!isInitialized)
+ {
+ JMXServerConfig jmxConfig = new JMXServerConfig();
+ IntegrationConfig iConfig = new IntegrationConfig();
+
+ File severDataDir = jmxConfig.getServerDataDir();
+ String absServerDataDir = severDataDir.getAbsolutePath();
+
+ String birtDataDir = absServerDataDir + "/birt";
+ String defaultBirtHome = birtDataDir + "/ReportEngine";
+ String birtOutputDir = birtDataDir + "/output";
+
+ File birtOutput = new File(birtOutputDir);
+ birtOutput.mkdirs(); // will create parent directoy as well
+
+ // check dependency on ReportEngine
+ if(! new File(defaultBirtHome).exists())
+ throw new BirtInitException("The BIRT report engine doesn't seem to be installed:" +defaultBirtHome);
+
+ // --
+
+ iConfig.setBirtHome(defaultBirtHome);
+ iConfig.setOutputDir( birtOutputDir );
+ iConfig.setReportDir( birtDataDir );
+
+ log.info("BIRT home: " +iConfig.getBirtHome());
+ log.info("Output dir: " +iConfig.getOutputDir());
+ log.info("Report dir: " +iConfig.getReportDir());
+
+ try
+ {
+ this.birtService = new BirtService(iConfig);
+ this.birtService.createAsync();
+ }
+ catch (Throwable t)
+ {
+ throw new BirtInitException(t.getMessage(), t);
+ }
+
+ isInitialized = true;
+ }
+ }
+
+ private String buildImageUrl(HttpServletRequest request)
+ {
+ StringBuffer sb = new StringBuffer();
+ sb.append("http://");
+ sb.append(request.getServerName()).append(":");
+ sb.append(request.getServerPort());
+ sb.append(request.getContextPath());
+ sb.append(request.getServletPath());
+ sb.append("/report/view/image");
+ return sb.toString();
+ }
+
+ @GET
+ @Path("view/{fileName}")
+ @Produces("text/html")
+ public Response viewReportHtml(
+ @PathParam("fileName")
+ String fileName,
+ @Context HttpServletRequest
+ request
+ )
+ {
+ try
+ {
+ Map queryParams = convertRequestParametersToMap(request);
+
+ RenderMetaData renderMeta = new RenderMetaData();
+ renderMeta.setReportName(fileName);
+ renderMeta.setFormat(RenderMetaData.Format.HTML);
+ renderMeta.setClassloader(Thread.currentThread().getContextClassLoader());
+ renderMeta.setImageBaseUrl(buildImageUrl(request));
+ renderMeta.getParameters().putAll(queryParams);
+
+ String outputFileName = birtService.render(renderMeta);
+ String absoluteFile = birtService.getIntegrationConfig().getOutputDir() + outputFileName;
+ log.info("Render " + absoluteFile);
+
+ File reportFile = new File(absoluteFile);
+ return Response.ok(reportFile).type("text/html").build();
+ }
+ catch(Throwable e1)
+ {
+ return gracefulException(e1);
+ }
+ }
+
+ @GET
+ @Path("view/image/{fileName}")
+ public Response getImage(
+ @PathParam("fileName")
+ String fileName,
+ @Context HttpServletRequest
+ request
+ )
+ {
+ String imageDir = birtService.getIntegrationConfig().getImageDirectory();
+ String absName = imageDir + fileName;
+ File imageFile = new File(absName);
+ if(!imageFile.exists())
+ throw new IllegalArgumentException("Image " +absName+" doesn't exist");
+ return Response.ok(imageFile).build();
+ }
+
+ private Response gracefulException(Throwable e)
+ {
+ log.error(e);
+
+ StringBuffer sb = new StringBuffer();
+ sb.append("Unable to process report:").append("<br/>");
+ sb.append(e.getMessage());
+ return Response.ok(sb.toString()).build();
+ }
+
+ static public Map<String, String> convertRequestParametersToMap(HttpServletRequest request){
+ Enumeration<?> initParameters=request.getParameterNames();
+ HashMap<String, String> parameterMap = new HashMap<String, String>();
+ while (initParameters.hasMoreElements()) {
+ String param = (String) initParameters.nextElement();
+ String value = request.getParameter(param);
+ if (param != null & value != null)
+ parameterMap.put(param, value);
+ }
+ return parameterMap;
+ }
+
+ @GET
+ @Path("templates")
+ @Produces("application/json")
+ public Response getReportNames()
+ {
+ return createJsonResponse(birtService.getReportNames());
+ }
+
+ private Response createJsonResponse(Object wrapper)
+ {
+ Gson gson = new GsonBuilder().create();
+ String json = gson.toJson(wrapper);
+ return Response.ok(json).type("application/json").build();
+ }
+
+ public class BirtInitException extends Exception
+ {
+ public BirtInitException(String message)
+ {
+ super(message);
+ }
+
+ public BirtInitException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+ }
+
+}
Added: report-server/trunk/core/src/main/resources/sample.rptdesign
===================================================================
--- report-server/trunk/core/src/main/resources/sample.rptdesign (rev 0)
+++ report-server/trunk/core/src/main/resources/sample.rptdesign 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,2545 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<report xmlns="http://www.eclipse.org/birt/2005/design" version="3.2.15" id="1">
+ <property name="createdBy">Eclipse BIRT Designer Version 2.2.2.r222_v20071226 Build <2.2.2.v20080226-1155></property>
+ <property name="units">in</property>
+ <property name="comments">Copyright (c) 2007 <<Your Company Name here>></property>
+ <html-property name="description">Creates a blank report with no predefined content.</html-property>
+ <text-property name="displayName">Blank Report</text-property>
+ <property name="iconFile">/templates/blank_report.gif</property>
+ <data-sources>
+ <oda-data-source extensionID="org.eclipse.birt.report.data.oda.jdbc" name="MySQL Local" id="6">
+ <property name="odaDriverClass">com.mysql.jdbc.Driver</property>
+ <property name="odaURL">jdbc:mysql://localhost:3306/jbpmtest</property>
+ <property name="odaUser">jbpmtest</property>
+ </oda-data-source>
+ <script-data-source name="ScriptedDS" id="51"/>
+ </data-sources>
+ <data-sets>
+ <oda-data-set extensionID="org.eclipse.birt.report.data.oda.jdbc.JdbcSelectDataSet" name="AverageExecTime" id="7">
+ <list-property name="computedColumns">
+ <structure>
+ <property name="name">execTime</property>
+ <expression name="expression">DateTimeSpan.seconds(row["startDate"],row["endDate"])</expression>
+ <property name="dataType">any</property>
+ </structure>
+ <structure>
+ <property name="name">short</property>
+ <expression name="expression">BirtComp.between(row["execTime"],0,60)</expression>
+ <property name="dataType">any</property>
+ </structure>
+ <structure>
+ <property name="name">medium</property>
+ <expression name="expression">BirtComp.between(row["execTime"],60,86400)</expression>
+ <property name="dataType">any</property>
+ </structure>
+ <structure>
+ <property name="name">long</property>
+ <expression name="expression">row["execTime"]>86400</expression>
+ <property name="dataType">any</property>
+ </structure>
+ </list-property>
+ <list-property name="columnHints">
+ <structure>
+ <property name="columnName">startDate</property>
+ <property name="displayName">startDate</property>
+ </structure>
+ <structure>
+ <property name="columnName">endDate</property>
+ <property name="displayName">endDate</property>
+ </structure>
+ <structure>
+ <property name="columnName">TOKEN_</property>
+ <property name="displayName">TOKEN_</property>
+ </structure>
+ <structure>
+ <property name="columnName">instanceID</property>
+ <property name="displayName">instanceID</property>
+ </structure>
+ <structure>
+ <property name="columnName">NAME_</property>
+ <property name="displayName">NAME_</property>
+ </structure>
+ </list-property>
+ <structure name="cachedMetaData">
+ <list-property name="resultSet">
+ <structure>
+ <property name="position">1</property>
+ <property name="name">startDate</property>
+ <property name="dataType">date-time</property>
+ </structure>
+ <structure>
+ <property name="position">2</property>
+ <property name="name">endDate</property>
+ <property name="dataType">date-time</property>
+ </structure>
+ <structure>
+ <property name="position">3</property>
+ <property name="name">TOKEN_</property>
+ <property name="dataType">decimal</property>
+ </structure>
+ <structure>
+ <property name="position">4</property>
+ <property name="name">instanceID</property>
+ <property name="dataType">decimal</property>
+ </structure>
+ <structure>
+ <property name="position">5</property>
+ <property name="name">NAME_</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">6</property>
+ <property name="name">execTime</property>
+ <property name="dataType">any</property>
+ </structure>
+ <structure>
+ <property name="position">7</property>
+ <property name="name">short</property>
+ <property name="dataType">any</property>
+ </structure>
+ <structure>
+ <property name="position">8</property>
+ <property name="name">medium</property>
+ <property name="dataType">any</property>
+ </structure>
+ <structure>
+ <property name="position">9</property>
+ <property name="name">long</property>
+ <property name="dataType">any</property>
+ </structure>
+ </list-property>
+ </structure>
+ <property name="dataSource">MySQL Local</property>
+ <list-property name="resultSet">
+ <structure>
+ <property name="position">1</property>
+ <property name="name">startDate</property>
+ <property name="nativeName">startDate</property>
+ <property name="dataType">date-time</property>
+ <property name="nativeDataType">93</property>
+ </structure>
+ <structure>
+ <property name="position">2</property>
+ <property name="name">endDate</property>
+ <property name="nativeName">endDate</property>
+ <property name="dataType">date-time</property>
+ <property name="nativeDataType">93</property>
+ </structure>
+ <structure>
+ <property name="position">3</property>
+ <property name="name">TOKEN_</property>
+ <property name="nativeName">TOKEN_</property>
+ <property name="dataType">decimal</property>
+ <property name="nativeDataType">-5</property>
+ </structure>
+ <structure>
+ <property name="position">4</property>
+ <property name="name">instanceID</property>
+ <property name="nativeName">instanceID</property>
+ <property name="dataType">decimal</property>
+ <property name="nativeDataType">-5</property>
+ </structure>
+ <structure>
+ <property name="position">5</property>
+ <property name="name">NAME_</property>
+ <property name="nativeName">NAME_</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">12</property>
+ </structure>
+ </list-property>
+ <property name="queryText">SELECT l1.DATE_ as startDate, l2.DATE_ as endDate,
+l1.TOKEN_, i.ID_ as instanceID, p.NAME_
+ FROM JBPM_LOG l1, JBPM_LOG l2, JBPM_TOKEN t, JBPM_PROCESSINSTANCE i, JBPM_PROCESSDEFINITION p
+WHERE (l1.CLASS_='I' AND l2.CLASS_='X')
+AND (l1.TOKEN_=l2.TOKEN_)
+AND t.ID_=l1.TOKEN_
+AND t.PROCESSINSTANCE_=i.ID_
+AND i.PROCESSDEFINITION_=p.ID_
+GROUP BY instanceId
+ORDER BY l1.DATE_ ASC, l1.TOKEN_</property>
+ </oda-data-set>
+ <oda-data-set extensionID="org.eclipse.birt.report.data.oda.jdbc.JdbcSelectDataSet" name="ProcessActivity" id="53">
+ <list-property name="columnHints">
+ <structure>
+ <property name="columnName">numberExec</property>
+ <property name="displayName">numberExec</property>
+ </structure>
+ <structure>
+ <property name="columnName">NAME_</property>
+ <property name="displayName">NAME_</property>
+ </structure>
+ </list-property>
+ <structure name="cachedMetaData">
+ <list-property name="resultSet">
+ <structure>
+ <property name="position">1</property>
+ <property name="name">numberExec</property>
+ <property name="dataType">decimal</property>
+ </structure>
+ <structure>
+ <property name="position">2</property>
+ <property name="name">NAME_</property>
+ <property name="dataType">string</property>
+ </structure>
+ </list-property>
+ </structure>
+ <property name="dataSource">MySQL Local</property>
+ <list-property name="resultSet">
+ <structure>
+ <property name="position">1</property>
+ <property name="name">numberExec</property>
+ <property name="nativeName">numberExec</property>
+ <property name="dataType">decimal</property>
+ <property name="nativeDataType">-5</property>
+ </structure>
+ <structure>
+ <property name="position">2</property>
+ <property name="name">NAME_</property>
+ <property name="nativeName">NAME_</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">12</property>
+ </structure>
+ </list-property>
+ <property name="queryText">SELECT count(i.ID_) as numberExec, p.NAME_
+ FROM JBPM_LOG l1, JBPM_LOG l2, JBPM_TOKEN t, JBPM_PROCESSINSTANCE i, JBPM_PROCESSDEFINITION p
+WHERE (l1.CLASS_='I' AND l2.CLASS_='X')
+AND (l1.TOKEN_=l2.TOKEN_)
+AND t.ID_=l1.TOKEN_
+AND t.PROCESSINSTANCE_=i.ID_
+AND i.PROCESSDEFINITION_=p.ID_
+GROUP BY NAME_
+ORDER BY numberExec ASC LIMIT 15</property>
+ </oda-data-set>
+ <oda-data-set extensionID="org.eclipse.birt.report.data.oda.jdbc.JdbcSelectDataSet" name="NumberOfAssignments" id="67">
+ <list-property name="columnHints">
+ <structure>
+ <property name="columnName">count(TASKINSTANCE_)</property>
+ <property name="displayName">count(TASKINSTANCE_)</property>
+ </structure>
+ <structure>
+ <property name="columnName">TASKACTORID_</property>
+ <property name="displayName">TASKACTORID_</property>
+ </structure>
+ </list-property>
+ <structure name="cachedMetaData">
+ <list-property name="resultSet">
+ <structure>
+ <property name="position">1</property>
+ <property name="name">count(TASKINSTANCE_)</property>
+ <property name="dataType">decimal</property>
+ </structure>
+ <structure>
+ <property name="position">2</property>
+ <property name="name">TASKACTORID_</property>
+ <property name="dataType">string</property>
+ </structure>
+ </list-property>
+ </structure>
+ <property name="dataSource">MySQL Local</property>
+ <list-property name="resultSet">
+ <structure>
+ <property name="position">1</property>
+ <property name="name">count(TASKINSTANCE_)</property>
+ <property name="nativeName">count(TASKINSTANCE_)</property>
+ <property name="dataType">decimal</property>
+ <property name="nativeDataType">-5</property>
+ </structure>
+ <structure>
+ <property name="position">2</property>
+ <property name="name">TASKACTORID_</property>
+ <property name="nativeName">TASKACTORID_</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">12</property>
+ </structure>
+ </list-property>
+ <property name="queryText">select count(TASKINSTANCE_), TASKACTORID_ from JBPM_LOG where CLASS_='2'
+GROUP BY TASKACTORID_</property>
+ <xml-property name="designerValues"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
+<model:DesignValues xmlns:design="http://www.eclipse.org/datatools/connectivity/oda/design" xmlns:model="http://www.eclipse.org/birt/report/model/adapter/odaModel">
+ <Version>1.0</Version>
+ <design:ResultSets derivedMetaData="true">
+ <design:resultSetDefinitions>
+ <design:resultSetColumns>
+ <design:resultColumnDefinitions>
+ <design:attributes>
+ <design:name>count(TASKINSTANCE_)</design:name>
+ <design:position>1</design:position>
+ <design:nativeDataTypeCode>-5</design:nativeDataTypeCode>
+ <design:precision>21</design:precision>
+ <design:scale>0</design:scale>
+ <design:nullability>NotNullable</design:nullability>
+ <design:uiHints>
+ <design:displayName>count(TASKINSTANCE_)</design:displayName>
+ </design:uiHints>
+ </design:attributes>
+ <design:usageHints>
+ <design:label>count(TASKINSTANCE_)</design:label>
+ <design:formattingHints>
+ <design:displaySize>21</design:displaySize>
+ </design:formattingHints>
+ </design:usageHints>
+ </design:resultColumnDefinitions>
+ <design:resultColumnDefinitions>
+ <design:attributes>
+ <design:name>TASKACTORID_</design:name>
+ <design:position>2</design:position>
+ <design:nativeDataTypeCode>12</design:nativeDataTypeCode>
+ <design:precision>255</design:precision>
+ <design:scale>0</design:scale>
+ <design:nullability>Nullable</design:nullability>
+ <design:uiHints>
+ <design:displayName>TASKACTORID_</design:displayName>
+ </design:uiHints>
+ </design:attributes>
+ <design:usageHints>
+ <design:label>TASKACTORID_</design:label>
+ <design:formattingHints>
+ <design:displaySize>255</design:displaySize>
+ </design:formattingHints>
+ </design:usageHints>
+ </design:resultColumnDefinitions>
+ </design:resultSetColumns>
+ </design:resultSetDefinitions>
+ </design:ResultSets>
+</model:DesignValues>
+]]></xml-property>
+ </oda-data-set>
+ </data-sets>
+ <styles>
+ <style name="crosstab" id="4">
+ <property name="borderBottomColor">#CCCCCC</property>
+ <property name="borderBottomStyle">solid</property>
+ <property name="borderBottomWidth">1pt</property>
+ <property name="borderLeftColor">#CCCCCC</property>
+ <property name="borderLeftStyle">solid</property>
+ <property name="borderLeftWidth">1pt</property>
+ <property name="borderRightColor">#CCCCCC</property>
+ <property name="borderRightStyle">solid</property>
+ <property name="borderRightWidth">1pt</property>
+ <property name="borderTopColor">#CCCCCC</property>
+ <property name="borderTopStyle">solid</property>
+ <property name="borderTopWidth">1pt</property>
+ </style>
+ <style name="crosstab-cell" id="5">
+ <property name="borderBottomColor">#CCCCCC</property>
+ <property name="borderBottomStyle">solid</property>
+ <property name="borderBottomWidth">1pt</property>
+ <property name="borderLeftColor">#CCCCCC</property>
+ <property name="borderLeftStyle">solid</property>
+ <property name="borderLeftWidth">1pt</property>
+ <property name="borderRightColor">#CCCCCC</property>
+ <property name="borderRightStyle">solid</property>
+ <property name="borderRightWidth">1pt</property>
+ <property name="borderTopColor">#CCCCCC</property>
+ <property name="borderTopStyle">solid</property>
+ <property name="borderTopWidth">1pt</property>
+ </style>
+ </styles>
+ <page-setup>
+ <simple-master-page name="Simple MasterPage" id="2"/>
+ </page-setup>
+ <body>
+ <table id="55">
+ <property name="width">100%</property>
+ <column id="65"/>
+ <column id="66"/>
+ <header>
+ <row id="56">
+ <cell id="57"/>
+ <cell id="58"/>
+ </row>
+ </header>
+ <detail>
+ <row id="59">
+ <cell id="60">
+ <extended-item extensionName="Chart" name="NewChart" id="54">
+ <xml-property name="xmlRepresentation"><![CDATA[<model:ChartWithAxes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:attribute="http://www.birt.eclipse.org/ChartModelAttribute" xmlns:data="http://www.birt.eclipse.org/ChartModelData" xmlns:layout="http://www.birt.eclipse.org/ChartModelLayout" xmlns:model="http://www.birt.eclipse.org/ChartModel" xmlns:type="http://www.birt.eclipse.org/ChartModelType">
+ <Type>Bar Chart</Type>
+ <SubType>Side-by-side</SubType>
+ <Block>
+ <Children xsi:type="layout:TitleBlock">
+ <Bounds>
+ <Left>0.0</Left>
+ <Top>0.0</Top>
+ <Width>0.0</Width>
+ <Height>0.0</Height>
+ </Bounds>
+ <Insets>
+ <Top>3.0</Top>
+ <Left>3.0</Left>
+ <Bottom>3.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Row>-1</Row>
+ <Column>-1</Column>
+ <Rowspan>-1</Rowspan>
+ <Columnspan>-1</Columnspan>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Visible>true</Visible>
+ <Label>
+ <Caption>
+ <Value>Most active processes</Value>
+ <Font>
+ <Size>16.0</Size>
+ <Bold>true</Bold>
+ <Alignment>
+ <horizontalAlignment>Center</horizontalAlignment>
+ <verticalAlignment>Center</verticalAlignment>
+ </Alignment>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>true</Visible>
+ </Label>
+ </Children>
+ <Children xsi:type="layout:Plot">
+ <Bounds>
+ <Left>0.0</Left>
+ <Top>0.0</Top>
+ <Width>0.0</Width>
+ <Height>0.0</Height>
+ </Bounds>
+ <Insets>
+ <Top>3.0</Top>
+ <Left>3.0</Left>
+ <Bottom>3.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Row>-1</Row>
+ <Column>-1</Column>
+ <Rowspan>-1</Rowspan>
+ <Columnspan>-1</Columnspan>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Visible>true</Visible>
+ <HorizontalSpacing>5</HorizontalSpacing>
+ <VerticalSpacing>5</VerticalSpacing>
+ <ClientArea>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>0</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>0.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>0.0</Right>
+ </Insets>
+ </ClientArea>
+ </Children>
+ <Children xsi:type="layout:Legend">
+ <Bounds>
+ <Left>0.0</Left>
+ <Top>0.0</Top>
+ <Width>0.0</Width>
+ <Height>0.0</Height>
+ </Bounds>
+ <Insets>
+ <Top>3.0</Top>
+ <Left>3.0</Left>
+ <Bottom>3.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Row>-1</Row>
+ <Column>-1</Column>
+ <Rowspan>-1</Rowspan>
+ <Columnspan>-1</Columnspan>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Visible>false</Visible>
+ <ClientArea>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>0</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Insets>
+ <Top>2.0</Top>
+ <Left>2.0</Left>
+ <Bottom>2.0</Bottom>
+ <Right>2.0</Right>
+ </Insets>
+ </ClientArea>
+ <Text>
+ <Value></Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Text>
+ <Orientation>Vertical</Orientation>
+ <Direction>Top_Bottom</Direction>
+ <Separator>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>true</Visible>
+ </Separator>
+ <Position>Right</Position>
+ <ItemType>Series</ItemType>
+ <Title>
+ <Caption>
+ <Value></Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Title>
+ <TitlePosition>Above</TitlePosition>
+ </Children>
+ <Bounds>
+ <Left>0.0</Left>
+ <Top>0.0</Top>
+ <Width>212.0</Width>
+ <Height>130.0</Height>
+ </Bounds>
+ <Insets>
+ <Top>3.0</Top>
+ <Left>3.0</Left>
+ <Bottom>3.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Row>-1</Row>
+ <Column>-1</Column>
+ <Rowspan>-1</Rowspan>
+ <Columnspan>-1</Columnspan>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Visible>true</Visible>
+ </Block>
+ <Dimension>Two_Dimensional</Dimension>
+ <Units>Points</Units>
+ <SeriesThickness>10.0</SeriesThickness>
+ <SampleData>
+ <BaseSampleData>
+ <DataSetRepresentation>A, B, C</DataSetRepresentation>
+ </BaseSampleData>
+ <OrthogonalSampleData>
+ <DataSetRepresentation>5.0,4.0,12.0</DataSetRepresentation>
+ <SeriesDefinitionIndex>0</SeriesDefinitionIndex>
+ </OrthogonalSampleData>
+ </SampleData>
+ <Interactivity/>
+ <Axes>
+ <Type>Text</Type>
+ <Title>
+ <Caption>
+ <Value>X-Axis Title</Value>
+ <Font>
+ <Size>14.0</Size>
+ <Bold>true</Bold>
+ <Alignment>
+ <horizontalAlignment>Center</horizontalAlignment>
+ <verticalAlignment>Center</verticalAlignment>
+ </Alignment>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Title>
+ <TitlePosition>Below</TitlePosition>
+ <AssociatedAxes>
+ <Type>Logarithmic</Type>
+ <Title>
+ <Caption>
+ <Value>Y-Axis Title</Value>
+ <Font>
+ <Size>14.0</Size>
+ <Bold>true</Bold>
+ <Alignment>
+ <horizontalAlignment>Center</horizontalAlignment>
+ <verticalAlignment>Center</verticalAlignment>
+ </Alignment>
+ <Rotation>90.0</Rotation>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Title>
+ <TitlePosition>Left</TitlePosition>
+ <SeriesDefinitions>
+ <Query>
+ <Definition></Definition>
+ </Query>
+ <SeriesPalette>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>80</Red>
+ <Green>166</Green>
+ <Blue>218</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>242</Red>
+ <Green>88</Green>
+ <Blue>106</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>232</Red>
+ <Green>172</Green>
+ <Blue>57</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>255</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>64</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>170</Red>
+ <Green>85</Green>
+ <Blue>85</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>192</Red>
+ <Green>192</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>192</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>7</Red>
+ <Green>146</Green>
+ <Blue>94</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>128</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>0</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>64</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>80</Red>
+ <Green>240</Green>
+ <Blue>120</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>64</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>0</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>0</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>64</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>0</Blue>
+ </Entries>
+ </SeriesPalette>
+ <Series xsi:type="type:BarSeries">
+ <Visible>true</Visible>
+ <Label>
+ <Caption>
+ <Value></Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Label>
+ <DataDefinition>
+ <Definition>row["numberExec"]</Definition>
+ </DataDefinition>
+ <SeriesIdentifier></SeriesIdentifier>
+ <DataPoint>
+ <Components>
+ <Type>Orthogonal_Value</Type>
+ </Components>
+ <Separator>, </Separator>
+ </DataPoint>
+ <LabelPosition>Outside</LabelPosition>
+ <Stacked>false</Stacked>
+ <Riser>Rectangle</Riser>
+ </Series>
+ <Grouping>
+ <Enabled>false</Enabled>
+ <GroupingInterval>2</GroupingInterval>
+ <GroupType>Text</GroupType>
+ <AggregateExpression>Sum</AggregateExpression>
+ </Grouping>
+ <Sorting>Ascending</Sorting>
+ </SeriesDefinitions>
+ <Orientation>Vertical</Orientation>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>true</Visible>
+ </LineAttributes>
+ <Label>
+ <Caption>
+ <Value></Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Label>
+ <LabelPosition>Left</LabelPosition>
+ <MajorGrid>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>196</Red>
+ <Green>196</Green>
+ <Blue>196</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </LineAttributes>
+ <TickStyle>Across</TickStyle>
+ <TickAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>196</Red>
+ <Green>196</Green>
+ <Blue>196</Blue>
+ </Color>
+ <Visible>true</Visible>
+ </TickAttributes>
+ </MajorGrid>
+ <MinorGrid>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>225</Red>
+ <Green>225</Green>
+ <Blue>225</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </LineAttributes>
+ <TickStyle>Across</TickStyle>
+ <TickAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>225</Red>
+ <Green>225</Green>
+ <Blue>225</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </TickAttributes>
+ </MinorGrid>
+ <Scale>
+ <MinorGridsPerUnit>5</MinorGridsPerUnit>
+ </Scale>
+ <Origin>
+ <Type>Min</Type>
+ <Value xsi:type="data:NumberDataElement">
+ <Value>0.0</Value>
+ </Value>
+ </Origin>
+ <PrimaryAxis>true</PrimaryAxis>
+ <Percent>false</Percent>
+ </AssociatedAxes>
+ <SeriesDefinitions>
+ <Query>
+ <Definition></Definition>
+ </Query>
+ <SeriesPalette>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>80</Red>
+ <Green>166</Green>
+ <Blue>218</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>242</Red>
+ <Green>88</Green>
+ <Blue>106</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>232</Red>
+ <Green>172</Green>
+ <Blue>57</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>255</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>64</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>170</Red>
+ <Green>85</Green>
+ <Blue>85</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>192</Red>
+ <Green>192</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>192</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>7</Red>
+ <Green>146</Green>
+ <Blue>94</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>128</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>0</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>64</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>80</Red>
+ <Green>240</Green>
+ <Blue>120</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>64</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>0</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>0</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>64</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>0</Blue>
+ </Entries>
+ </SeriesPalette>
+ <Series>
+ <Visible>true</Visible>
+ <Label>
+ <Caption>
+ <Value></Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Label>
+ <DataDefinition>
+ <Definition>row["NAME_"]</Definition>
+ </DataDefinition>
+ <SeriesIdentifier></SeriesIdentifier>
+ <DataPoint>
+ <Components>
+ <Type>Orthogonal_Value</Type>
+ </Components>
+ <Separator>, </Separator>
+ </DataPoint>
+ <LabelPosition>Outside</LabelPosition>
+ <Stacked>false</Stacked>
+ </Series>
+ <Grouping>
+ <Enabled>false</Enabled>
+ <GroupingInterval>2</GroupingInterval>
+ <GroupType>Text</GroupType>
+ <AggregateExpression>Sum</AggregateExpression>
+ </Grouping>
+ </SeriesDefinitions>
+ <Orientation>Horizontal</Orientation>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>true</Visible>
+ </LineAttributes>
+ <Label>
+ <Caption>
+ <Value></Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>true</Visible>
+ </Label>
+ <LabelPosition>Below</LabelPosition>
+ <MajorGrid>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>196</Red>
+ <Green>196</Green>
+ <Blue>196</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </LineAttributes>
+ <TickStyle>Across</TickStyle>
+ <TickAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>196</Red>
+ <Green>196</Green>
+ <Blue>196</Blue>
+ </Color>
+ <Visible>true</Visible>
+ </TickAttributes>
+ </MajorGrid>
+ <MinorGrid>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>225</Red>
+ <Green>225</Green>
+ <Blue>225</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </LineAttributes>
+ <TickStyle>Across</TickStyle>
+ <TickAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>225</Red>
+ <Green>225</Green>
+ <Blue>225</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </TickAttributes>
+ </MinorGrid>
+ <Scale>
+ <MinorGridsPerUnit>5</MinorGridsPerUnit>
+ </Scale>
+ <Origin>
+ <Type>Min</Type>
+ <Value xsi:type="data:NumberDataElement">
+ <Value>0.0</Value>
+ </Value>
+ </Origin>
+ <PrimaryAxis>true</PrimaryAxis>
+ <CategoryAxis>true</CategoryAxis>
+ <Percent>false</Percent>
+ </Axes>
+ <Orientation>Horizontal</Orientation>
+ <UnitSpacing>50.0</UnitSpacing>
+ <Rotation/>
+</model:ChartWithAxes>
+]]></xml-property>
+ <property name="outputFormat">SVG</property>
+ <property name="dataSet">ProcessActivity</property>
+ <property name="height">130pt</property>
+ <property name="width">212pt</property>
+ <list-property name="boundDataColumns">
+ <structure>
+ <property name="name">numberExec</property>
+ <expression name="expression">dataSetRow["numberExec"]</expression>
+ <property name="dataType">decimal</property>
+ </structure>
+ <structure>
+ <property name="name">NAME_</property>
+ <expression name="expression">dataSetRow["NAME_"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ </list-property>
+ </extended-item>
+ </cell>
+ <cell id="61">
+ <extended-item extensionName="Chart" name="NewChart1" id="68">
+ <xml-property name="xmlRepresentation"><![CDATA[<model:ChartWithAxes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:attribute="http://www.birt.eclipse.org/ChartModelAttribute" xmlns:data="http://www.birt.eclipse.org/ChartModelData" xmlns:layout="http://www.birt.eclipse.org/ChartModelLayout" xmlns:model="http://www.birt.eclipse.org/ChartModel" xmlns:type="http://www.birt.eclipse.org/ChartModelType">
+ <Type>Bar Chart</Type>
+ <SubType>Side-by-side</SubType>
+ <Block>
+ <Children xsi:type="layout:TitleBlock">
+ <Bounds>
+ <Left>0.0</Left>
+ <Top>0.0</Top>
+ <Width>0.0</Width>
+ <Height>0.0</Height>
+ </Bounds>
+ <Insets>
+ <Top>3.0</Top>
+ <Left>3.0</Left>
+ <Bottom>3.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Row>-1</Row>
+ <Column>-1</Column>
+ <Rowspan>-1</Rowspan>
+ <Columnspan>-1</Columnspan>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Visible>true</Visible>
+ <Label>
+ <Caption>
+ <Value>Task assignments</Value>
+ <Font>
+ <Size>16.0</Size>
+ <Bold>true</Bold>
+ <Alignment>
+ <horizontalAlignment>Center</horizontalAlignment>
+ <verticalAlignment>Center</verticalAlignment>
+ </Alignment>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>true</Visible>
+ </Label>
+ </Children>
+ <Children xsi:type="layout:Plot">
+ <Bounds>
+ <Left>0.0</Left>
+ <Top>0.0</Top>
+ <Width>0.0</Width>
+ <Height>0.0</Height>
+ </Bounds>
+ <Insets>
+ <Top>3.0</Top>
+ <Left>3.0</Left>
+ <Bottom>3.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Row>-1</Row>
+ <Column>-1</Column>
+ <Rowspan>-1</Rowspan>
+ <Columnspan>-1</Columnspan>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Visible>true</Visible>
+ <HorizontalSpacing>5</HorizontalSpacing>
+ <VerticalSpacing>5</VerticalSpacing>
+ <ClientArea>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>0</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>0.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>0.0</Right>
+ </Insets>
+ </ClientArea>
+ </Children>
+ <Children xsi:type="layout:Legend">
+ <Bounds>
+ <Left>0.0</Left>
+ <Top>0.0</Top>
+ <Width>0.0</Width>
+ <Height>0.0</Height>
+ </Bounds>
+ <Insets>
+ <Top>3.0</Top>
+ <Left>3.0</Left>
+ <Bottom>3.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Row>-1</Row>
+ <Column>-1</Column>
+ <Rowspan>-1</Rowspan>
+ <Columnspan>-1</Columnspan>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Visible>false</Visible>
+ <ClientArea>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>0</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Insets>
+ <Top>2.0</Top>
+ <Left>2.0</Left>
+ <Bottom>2.0</Bottom>
+ <Right>2.0</Right>
+ </Insets>
+ </ClientArea>
+ <Text>
+ <Value></Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Text>
+ <Orientation>Vertical</Orientation>
+ <Direction>Top_Bottom</Direction>
+ <Separator>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>true</Visible>
+ </Separator>
+ <Position>Right</Position>
+ <ItemType>Series</ItemType>
+ <Title>
+ <Caption>
+ <Value>Assigments</Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Title>
+ <TitlePosition>Above</TitlePosition>
+ <ShowValue>false</ShowValue>
+ </Children>
+ <Bounds>
+ <Left>0.0</Left>
+ <Top>0.0</Top>
+ <Width>212.0</Width>
+ <Height>130.0</Height>
+ </Bounds>
+ <Insets>
+ <Top>3.0</Top>
+ <Left>3.0</Left>
+ <Bottom>3.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Row>-1</Row>
+ <Column>-1</Column>
+ <Rowspan>-1</Rowspan>
+ <Columnspan>-1</Columnspan>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Visible>true</Visible>
+ </Block>
+ <Dimension>Two_Dimensional</Dimension>
+ <Units>Points</Units>
+ <SeriesThickness>10.0</SeriesThickness>
+ <SampleData>
+ <BaseSampleData>
+ <DataSetRepresentation>A, B, C</DataSetRepresentation>
+ </BaseSampleData>
+ <OrthogonalSampleData>
+ <DataSetRepresentation>5.0,4.0,12.0</DataSetRepresentation>
+ <SeriesDefinitionIndex>0</SeriesDefinitionIndex>
+ </OrthogonalSampleData>
+ </SampleData>
+ <Interactivity>
+ <LegendBehavior>None</LegendBehavior>
+ </Interactivity>
+ <Axes>
+ <Type>Text</Type>
+ <Title>
+ <Caption>
+ <Value>X-Axis Title</Value>
+ <Font>
+ <Size>14.0</Size>
+ <Bold>true</Bold>
+ <Alignment>
+ <horizontalAlignment>Center</horizontalAlignment>
+ <verticalAlignment>Center</verticalAlignment>
+ </Alignment>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Title>
+ <TitlePosition>Below</TitlePosition>
+ <AssociatedAxes>
+ <Type>Logarithmic</Type>
+ <Title>
+ <Caption>
+ <Value>Y-Axis Title</Value>
+ <Font>
+ <Size>14.0</Size>
+ <Bold>true</Bold>
+ <Alignment>
+ <horizontalAlignment>Center</horizontalAlignment>
+ <verticalAlignment>Center</verticalAlignment>
+ </Alignment>
+ <Rotation>90.0</Rotation>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Title>
+ <TitlePosition>Left</TitlePosition>
+ <SeriesDefinitions>
+ <Query>
+ <Definition></Definition>
+ </Query>
+ <SeriesPalette>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>80</Red>
+ <Green>166</Green>
+ <Blue>218</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>242</Red>
+ <Green>88</Green>
+ <Blue>106</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>232</Red>
+ <Green>172</Green>
+ <Blue>57</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>255</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>64</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>170</Red>
+ <Green>85</Green>
+ <Blue>85</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>192</Red>
+ <Green>192</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>192</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>7</Red>
+ <Green>146</Green>
+ <Blue>94</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>128</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>0</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>64</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>80</Red>
+ <Green>240</Green>
+ <Blue>120</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>64</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>0</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>0</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>64</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>0</Blue>
+ </Entries>
+ </SeriesPalette>
+ <Series xsi:type="type:BarSeries">
+ <Visible>true</Visible>
+ <Label>
+ <Caption>
+ <Value></Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Label>
+ <DataDefinition>
+ <Definition>row["count(TASKINSTANCE_)"]</Definition>
+ </DataDefinition>
+ <SeriesIdentifier></SeriesIdentifier>
+ <DataPoint>
+ <Components>
+ <Type>Orthogonal_Value</Type>
+ </Components>
+ <Separator>, </Separator>
+ </DataPoint>
+ <LabelPosition>Outside</LabelPosition>
+ <Stacked>false</Stacked>
+ <Riser>Rectangle</Riser>
+ </Series>
+ <Grouping>
+ <Enabled>false</Enabled>
+ <GroupingInterval>2</GroupingInterval>
+ <GroupType>Text</GroupType>
+ <AggregateExpression>Sum</AggregateExpression>
+ </Grouping>
+ <Sorting>Ascending</Sorting>
+ </SeriesDefinitions>
+ <Orientation>Vertical</Orientation>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>true</Visible>
+ </LineAttributes>
+ <Label>
+ <Caption>
+ <Value></Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Label>
+ <LabelPosition>Left</LabelPosition>
+ <MajorGrid>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>196</Red>
+ <Green>196</Green>
+ <Blue>196</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </LineAttributes>
+ <TickStyle>Across</TickStyle>
+ <TickAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>196</Red>
+ <Green>196</Green>
+ <Blue>196</Blue>
+ </Color>
+ <Visible>true</Visible>
+ </TickAttributes>
+ </MajorGrid>
+ <MinorGrid>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>225</Red>
+ <Green>225</Green>
+ <Blue>225</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </LineAttributes>
+ <TickStyle>Across</TickStyle>
+ <TickAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>225</Red>
+ <Green>225</Green>
+ <Blue>225</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </TickAttributes>
+ </MinorGrid>
+ <Scale>
+ <MinorGridsPerUnit>5</MinorGridsPerUnit>
+ </Scale>
+ <Origin>
+ <Type>Min</Type>
+ <Value xsi:type="data:NumberDataElement">
+ <Value>0.0</Value>
+ </Value>
+ </Origin>
+ <PrimaryAxis>true</PrimaryAxis>
+ <Percent>false</Percent>
+ </AssociatedAxes>
+ <SeriesDefinitions>
+ <Query>
+ <Definition></Definition>
+ </Query>
+ <SeriesPalette>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>80</Red>
+ <Green>166</Green>
+ <Blue>218</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>242</Red>
+ <Green>88</Green>
+ <Blue>106</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>232</Red>
+ <Green>172</Green>
+ <Blue>57</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>255</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>64</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>170</Red>
+ <Green>85</Green>
+ <Blue>85</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>192</Red>
+ <Green>192</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>192</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>7</Red>
+ <Green>146</Green>
+ <Blue>94</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>128</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>192</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>0</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>64</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>80</Red>
+ <Green>240</Green>
+ <Blue>120</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>64</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>0</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>0</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>64</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>128</Red>
+ <Green>128</Green>
+ <Blue>128</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>64</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Entries>
+ <Entries xsi:type="attribute:ColorDefinition">
+ <Transparency>255</Transparency>
+ <Red>255</Red>
+ <Green>128</Green>
+ <Blue>0</Blue>
+ </Entries>
+ </SeriesPalette>
+ <Series>
+ <Visible>true</Visible>
+ <Label>
+ <Caption>
+ <Value></Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>false</Visible>
+ </Label>
+ <DataDefinition>
+ <Definition>row["TASKACTORID_"]</Definition>
+ </DataDefinition>
+ <SeriesIdentifier></SeriesIdentifier>
+ <DataPoint>
+ <Components>
+ <Type>Orthogonal_Value</Type>
+ </Components>
+ <Separator>, </Separator>
+ </DataPoint>
+ <LabelPosition>Outside</LabelPosition>
+ <Stacked>false</Stacked>
+ </Series>
+ <Grouping>
+ <Enabled>false</Enabled>
+ <GroupingInterval>2</GroupingInterval>
+ <GroupType>Text</GroupType>
+ <AggregateExpression>Sum</AggregateExpression>
+ </Grouping>
+ </SeriesDefinitions>
+ <Orientation>Horizontal</Orientation>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ <Visible>true</Visible>
+ </LineAttributes>
+ <Label>
+ <Caption>
+ <Value></Value>
+ <Font>
+ <Alignment/>
+ </Font>
+ </Caption>
+ <Background xsi:type="attribute:ColorDefinition">
+ <Transparency>0</Transparency>
+ <Red>255</Red>
+ <Green>255</Green>
+ <Blue>255</Blue>
+ </Background>
+ <Outline>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>0</Red>
+ <Green>0</Green>
+ <Blue>0</Blue>
+ </Color>
+ </Outline>
+ <Insets>
+ <Top>0.0</Top>
+ <Left>2.0</Left>
+ <Bottom>0.0</Bottom>
+ <Right>3.0</Right>
+ </Insets>
+ <Visible>true</Visible>
+ </Label>
+ <LabelPosition>Below</LabelPosition>
+ <MajorGrid>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>196</Red>
+ <Green>196</Green>
+ <Blue>196</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </LineAttributes>
+ <TickStyle>Across</TickStyle>
+ <TickAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>196</Red>
+ <Green>196</Green>
+ <Blue>196</Blue>
+ </Color>
+ <Visible>true</Visible>
+ </TickAttributes>
+ </MajorGrid>
+ <MinorGrid>
+ <LineAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>225</Red>
+ <Green>225</Green>
+ <Blue>225</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </LineAttributes>
+ <TickStyle>Across</TickStyle>
+ <TickAttributes>
+ <Style>Solid</Style>
+ <Thickness>1</Thickness>
+ <Color>
+ <Transparency>255</Transparency>
+ <Red>225</Red>
+ <Green>225</Green>
+ <Blue>225</Blue>
+ </Color>
+ <Visible>false</Visible>
+ </TickAttributes>
+ </MinorGrid>
+ <Scale>
+ <MinorGridsPerUnit>5</MinorGridsPerUnit>
+ </Scale>
+ <Origin>
+ <Type>Min</Type>
+ <Value xsi:type="data:NumberDataElement">
+ <Value>0.0</Value>
+ </Value>
+ </Origin>
+ <PrimaryAxis>true</PrimaryAxis>
+ <CategoryAxis>true</CategoryAxis>
+ <Percent>false</Percent>
+ </Axes>
+ <Orientation>Horizontal</Orientation>
+ <UnitSpacing>50.0</UnitSpacing>
+ <Rotation/>
+</model:ChartWithAxes>
+]]></xml-property>
+ <property name="outputFormat">SVG</property>
+ <property name="dataSet">NumberOfAssignments</property>
+ <property name="height">130pt</property>
+ <property name="width">212pt</property>
+ <list-property name="boundDataColumns">
+ <structure>
+ <property name="name">count(TASKINSTANCE_)</property>
+ <expression name="expression">dataSetRow["count(TASKINSTANCE_)"]</expression>
+ <property name="dataType">decimal</property>
+ </structure>
+ <structure>
+ <property name="name">TASKACTORID_</property>
+ <expression name="expression">dataSetRow["TASKACTORID_"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ </list-property>
+ </extended-item>
+ </cell>
+ </row>
+ </detail>
+ <footer>
+ <row id="62">
+ <cell id="63"/>
+ <cell id="64"/>
+ </row>
+ </footer>
+ </table>
+ </body>
+</report>
Added: report-server/trunk/pom.xml
===================================================================
--- report-server/trunk/pom.xml (rev 0)
+++ report-server/trunk/pom.xml 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,121 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <name>JBoss BPM - Reporting (BIRT Integration)</name>
+ <groupId>org.jboss.bpm</groupId>
+ <artifactId>report-parent</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+
+ <!-- Parent -->
+ <parent>
+ <groupId>org.jbpm</groupId>
+ <artifactId>jbpm-parent</artifactId>
+ <version>1.0.0.GA</version>
+ </parent>
+
+ <properties>
+ <commons.logging.version>1.1.1</commons.logging.version>
+ <junit.version>3.8.1</junit.version>
+ <resteasy.version>1.0.2.GA</resteasy.version>
+ <servlet.version>2.4</servlet.version>
+ </properties>
+
+ <modules>
+ <module>core</module>
+ <module>server</module>
+ </modules>
+
+ <dependencyManagement>
+ <dependencies>
+ <!-- Other -->
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>${commons.logging.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${junit.version}</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <scope>provided</scope>
+ <version>${servlet.version}</version>
+ </dependency>
+
+
+ <dependency>
+ <groupId>org.jboss.resteasy</groupId>
+ <artifactId>resteasy-jaxrs</artifactId>
+ <version>${resteasy.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.activation</groupId>
+ <artifactId>activation</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>commons-httpclient</groupId>
+ <artifactId>commons-httpclient</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.mail</groupId>
+ <artifactId>mail</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>tjws</groupId>
+ <artifactId>webserver</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>com.sun.xml.bind</groupId>
+ <artifactId>jaxb-impl</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.xml.stream</groupId>
+ <artifactId>stax-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>com.google.code.gson</groupId>
+ <artifactId>gson</artifactId>
+ <version>1.2.2</version>
+ </dependency>
+
+ </dependencies>
+ </dependencyManagement>
+
+ <!-- Repositories -->
+ <repositories>
+ <repository>
+ <id>repository.jboss.org</id>
+ <url>http://repository.jboss.org/maven2</url>
+ </repository>
+ <repository>
+ <id>snapshots.jboss.org</id>
+ <name>JBoss Snapshot Repository</name>
+ <url>http://snapshots.jboss.org/maven2</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+
+</project>
Added: report-server/trunk/report-server.iml
===================================================================
--- report-server/trunk/report-server.iml (rev 0)
+++ report-server/trunk/report-server.iml 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,289 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module version="4" relativePaths="true" type="JAVA_MODULE">
+ <component name="ModuleRootManager" />
+ <component name="NewModuleRootManager" inherit-compiler-output="true">
+ <exclude-output />
+ <content url="file://$MODULE_DIR$">
+ <sourceFolder url="file://$MODULE_DIR$/core/src/main/java" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/core/src/main/resources" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/server/src/main/java" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/server/src/main/resources" isTestSource="false" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.slf4j:slf4j-simple:jar:1.5.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/slf4j/slf4j-simple/1.5.2/slf4j-simple-1.5.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: junit:junit:jar:3.8.1:test">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: commons-logging:commons-logging:jar:1.1.1:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: commons-discovery:commons-discovery:jar:0.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/commons-discovery/commons-discovery/0.2/commons-discovery-0.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: javax.annotation:jsr250-api:jar:1.0:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: commons-cli:commons-cli:jar:1.0:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/commons-cli/commons-cli/1.0/commons-cli-1.0.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: commons-codec:commons-codec:jar:1.3:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/commons-codec/commons-codec/1.3/commons-codec-1.3.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/commons-codec/commons-codec/1.3/commons-codec-1.3-sources.jar!/" />
+ </SOURCES>
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.w3c:sac:jar:1.3:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/w3c/sac/1.3/sac-1.3.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.slf4j:slf4j-api:jar:1.5.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/slf4j/slf4j-api/1.5.2/slf4j-api-1.5.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: javassist:javassist:jar:3.6.0.GA:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/javassist/javassist/3.6.0.GA/javassist-3.6.0.GA.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: rhino:js:jar:1.6R2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/rhino/js/1.6R2/js-1.6R2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: com.lowagie:itext:jar:1.3:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/com/lowagie/itext/1.3/itext-1.3.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.w3c:flute:jar:1.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/w3c/flute/1.2/flute-1.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.scannotation:scannotation:jar:1.0.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/scannotation/scannotation/1.0.2/scannotation-1.0.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: javax.servlet:servlet-api:jar:2.4:provided">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/javax/servlet/servlet-api/2.4/servlet-api-2.4.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.eclipse.birt:modelapi:jar:2.3.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/modelapi/2.3.2/modelapi-2.3.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.eclipse.birt:dataadapterapi:jar:2.3.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/dataadapterapi/2.3.2/dataadapterapi-2.3.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.jboss.resteasy:resteasy-jaxrs:jar:1.0.2.GA:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/jboss/resteasy/resteasy-jaxrs/1.0.2.GA/resteasy-jaxrs-1.0.2.GA.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.eclipse.birt:chartengineapi:jar:2.3.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/chartengineapi/2.3.2/chartengineapi-2.3.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.eclipse.birt:scriptapi:jar:2.3.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/scriptapi/2.3.2/scriptapi-2.3.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.eclipse.birt:engineapi:jar:2.3.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/engineapi/2.3.2/engineapi-2.3.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.eclipse.birt:dteapi:jar:2.3.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/dteapi/2.3.2/dteapi-2.3.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.eclipse.birt:coreapi:jar:2.3.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/birt/coreapi/2.3.2/coreapi-2.3.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.jboss.resteasy:jaxrs-api:jar:1.0.2.GA:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/jboss/resteasy/jaxrs-api/1.0.2.GA/jaxrs-api-1.0.2.GA.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.eclipse.emf:common:jar:2.4.0:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/emf/common/2.4.0/common-2.4.0.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.eclipse.emf:ecore-xmi:jar:2.4.1:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/emf/ecore-xmi/2.4.1/ecore-xmi-2.4.1.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: org.eclipse.emf:ecore:jar:2.4.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/org/eclipse/emf/ecore/2.4.2/ecore-2.4.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: com.ibm.icu:icu4j:jar:3.8.1:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/com/ibm/icu/icu4j/3.8.1/icu4j-3.8.1.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library">
+ <library>
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/com/google/code/gson/gson/1.2.2/gson-1.2.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: com.google.code.gson:gson:jar:1.2.2:compile">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../.m2/repository/com/google/code/gson/gson/1.2.2/gson-1.2.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntryProperties />
+ </component>
+</module>
+
Added: report-server/trunk/report-server.ipr
===================================================================
--- report-server/trunk/report-server.ipr (rev 0)
+++ report-server/trunk/report-server.ipr 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,316 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4" relativePaths="false">
+ <component name="AntConfiguration">
+ <defaultAnt bundledAnt="true" />
+ </component>
+ <component name="BuildJarProjectSettings">
+ <option name="BUILD_JARS_ON_MAKE" value="false" />
+ </component>
+ <component name="CodeStyleProjectProfileManger">
+ <option name="PROJECT_PROFILE" />
+ <option name="USE_PROJECT_LEVEL_SETTINGS" value="false" />
+ </component>
+ <component name="CodeStyleSettingsManager">
+ <option name="PER_PROJECT_SETTINGS" />
+ <option name="USE_PER_PROJECT_SETTINGS" value="false" />
+ </component>
+ <component name="CompilerConfiguration">
+ <option name="DEFAULT_COMPILER" value="Javac" />
+ <option name="DEPLOY_AFTER_MAKE" value="0" />
+ <resourceExtensions>
+ <entry name=".+\.(properties|xml|html|dtd|tld)" />
+ <entry name=".+\.(gif|png|jpeg|jpg)" />
+ </resourceExtensions>
+ <wildcardResourcePatterns>
+ <entry name="?*.properties" />
+ <entry name="?*.xml" />
+ <entry name="?*.gif" />
+ <entry name="?*.png" />
+ <entry name="?*.jpeg" />
+ <entry name="?*.jpg" />
+ <entry name="?*.html" />
+ <entry name="?*.dtd" />
+ <entry name="?*.tld" />
+ </wildcardResourcePatterns>
+ </component>
+ <component name="DataSourceManagerImpl" />
+ <component name="DependenciesAnalyzeManager">
+ <option name="myForwardDirection" value="false" />
+ </component>
+ <component name="DependencyValidationManager" />
+ <component name="EclipseCompilerSettings">
+ <option name="DEBUGGING_INFO" value="true" />
+ <option name="GENERATE_NO_WARNINGS" value="true" />
+ <option name="DEPRECATION" value="false" />
+ <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+ <option name="MAXIMUM_HEAP_SIZE" value="128" />
+ </component>
+ <component name="EclipseEmbeddedCompilerSettings">
+ <option name="DEBUGGING_INFO" value="true" />
+ <option name="GENERATE_NO_WARNINGS" value="true" />
+ <option name="DEPRECATION" value="false" />
+ <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+ <option name="MAXIMUM_HEAP_SIZE" value="128" />
+ </component>
+ <component name="EntryPointsManager">
+ <entry_points />
+ </component>
+ <component name="ExportToHTMLSettings">
+ <option name="PRINT_LINE_NUMBERS" value="false" />
+ <option name="OPEN_IN_BROWSER" value="false" />
+ <option name="OUTPUT_DIRECTORY" />
+ </component>
+ <component name="GUI Designer component loader factory" />
+ <component name="IdProvider" IDEtalkID="1E46A79AE09FDDA36C7AA36A15233C1A" />
+ <component name="InspectionProjectProfileManager">
+ <option name="PROJECT_PROFILE" value="Project Default" />
+ <option name="USE_PROJECT_LEVEL_SETTINGS" value="false" />
+ <scopes />
+ <profiles>
+ <profile version="1.0" is_locked="false">
+ <option name="myName" value="Project Default" />
+ <option name="myLocal" value="false" />
+ <used_levels>
+ <error>
+ <option name="myName" value="ERROR" />
+ <option name="myVal" value="400" />
+ </error>
+ <warning>
+ <option name="myName" value="WARNING" />
+ <option name="myVal" value="300" />
+ </warning>
+ <information>
+ <option name="myName" value="INFO" />
+ <option name="myVal" value="200" />
+ </information>
+ <server>
+ <option name="myName" value="SERVER PROBLEM" />
+ <option name="myVal" value="100" />
+ </server>
+ </used_levels>
+ </profile>
+ </profiles>
+ </component>
+ <component name="JavacSettings">
+ <option name="DEBUGGING_INFO" value="true" />
+ <option name="GENERATE_NO_WARNINGS" value="false" />
+ <option name="DEPRECATION" value="true" />
+ <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+ <option name="MAXIMUM_HEAP_SIZE" value="128" />
+ </component>
+ <component name="JavadocGenerationManager">
+ <option name="OUTPUT_DIRECTORY" />
+ <option name="OPTION_SCOPE" value="protected" />
+ <option name="OPTION_HIERARCHY" value="true" />
+ <option name="OPTION_NAVIGATOR" value="true" />
+ <option name="OPTION_INDEX" value="true" />
+ <option name="OPTION_SEPARATE_INDEX" value="true" />
+ <option name="OPTION_DOCUMENT_TAG_USE" value="false" />
+ <option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false" />
+ <option name="OPTION_DOCUMENT_TAG_VERSION" value="false" />
+ <option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true" />
+ <option name="OPTION_DEPRECATED_LIST" value="true" />
+ <option name="OTHER_OPTIONS" value="" />
+ <option name="HEAP_SIZE" />
+ <option name="LOCALE" />
+ <option name="OPEN_IN_BROWSER" value="true" />
+ </component>
+ <component name="JikesSettings">
+ <option name="JIKES_PATH" value="" />
+ <option name="DEBUGGING_INFO" value="true" />
+ <option name="DEPRECATION" value="true" />
+ <option name="GENERATE_NO_WARNINGS" value="false" />
+ <option name="IS_EMACS_ERRORS_MODE" value="true" />
+ <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+ </component>
+ <component name="LogConsolePreferences">
+ <option name="FILTER_ERRORS" value="false" />
+ <option name="FILTER_WARNINGS" value="false" />
+ <option name="FILTER_INFO" value="true" />
+ <option name="CUSTOM_FILTER" />
+ </component>
+ <component name="Maven Reloaded">
+ <option name="config">
+ <value>
+ <option name="pluginEnabled" value="true" />
+ <option name="offlineModeEnabled" value="false" />
+ <option name="updateClasspathsEnabled" value="true" />
+ <option name="sortDependenciesEnabled" value="false" />
+ <option name="removeDuplicateDependenciesEnabled" value="false" />
+ <option name="respondToPomChangesEnabled" value="true" />
+ <option name="manageSourceRootsEnabled" value="true" />
+ <option name="manageModuleInterdependenciesEnabled" value="true" />
+ <option name="downloadSourcesEnabled" value="false" />
+ <option name="downloadJavadocEnabled" value="false" />
+ <option name="generateSourcesEnabled" value="false" />
+ <option name="settingsPath" value="/Users/hbraun/.m2/settings.xml" />
+ <option name="searchFilter" value="" />
+ <option name="disabledPoms">
+ <value>
+ <collection type="java.util.TreeSet" />
+ </value>
+ </option>
+ <option name="moduleInterDependencies">
+ <value>
+ <map type="java.util.TreeMap" />
+ </value>
+ </option>
+ <option name="logLevel" value="1" />
+ </value>
+ </option>
+ </component>
+ <component name="Palette2">
+ <group name="Swing">
+ <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
+ </item>
+ <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
+ </item>
+ <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
+ <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
+ <initial-values>
+ <property name="text" value="Button" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="RadioButton" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="CheckBox" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="Label" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
+ <preferred-size width="-1" height="20" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
+ </item>
+ </group>
+ </component>
+ <component name="ProjectModuleManager">
+ <modules>
+ <module fileurl="file://$PROJECT_DIR$/report-server.iml" filepath="$PROJECT_DIR$/report-server.iml" />
+ </modules>
+ </component>
+ <component name="ProjectRootManager" version="2" assert-keyword="true" jdk-15="true" project-jdk-name="1.5" project-jdk-type="JavaSDK">
+ <output url="file://$PROJECT_DIR$/classes" />
+ </component>
+ <component name="ProjectRunConfigurationManager" />
+ <component name="RmicSettings">
+ <option name="IS_EANABLED" value="false" />
+ <option name="DEBUGGING_INFO" value="true" />
+ <option name="GENERATE_NO_WARNINGS" value="false" />
+ <option name="GENERATE_IIOP_STUBS" value="false" />
+ <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+ </component>
+ <component name="StarteamVcsAdapter" />
+ <component name="VssVcs" />
+ <component name="com.intellij.jsf.UserDefinedFacesConfigs">
+ <option name="USER_DEFINED_CONFIGS">
+ <value>
+ <list size="0" />
+ </value>
+ </option>
+ </component>
+ <component name="libraryTable" />
+ <component name="uidesigner-configuration">
+ <option name="INSTRUMENT_CLASSES" value="true" />
+ <option name="COPY_FORMS_RUNTIME_TO_OUTPUT" value="true" />
+ <option name="DEFAULT_LAYOUT_MANAGER" value="GridLayoutManager" />
+ </component>
+ <UsedPathMacros />
+</project>
+
Added: report-server/trunk/report-server.iws
===================================================================
--- report-server/trunk/report-server.iws (rev 0)
+++ report-server/trunk/report-server.iws 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,644 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4" relativePaths="false">
+ <component name="BookmarkManager" />
+ <component name="ChangeBrowserSettings">
+ <option name="MAIN_SPLITTER_PROPORTION" value="0.3" />
+ <option name="MESSAGES_SPLITTER_PROPORTION" value="0.8" />
+ <option name="USE_DATE_BEFORE_FILTER" value="false" />
+ <option name="USE_DATE_AFTER_FILTER" value="false" />
+ <option name="USE_CHANGE_BEFORE_FILTER" value="false" />
+ <option name="USE_CHANGE_AFTER_FILTER" value="false" />
+ <option name="DATE_BEFORE" value="" />
+ <option name="DATE_AFTER" value="" />
+ <option name="CHANGE_BEFORE" value="" />
+ <option name="CHANGE_AFTER" value="" />
+ <option name="USE_USER_FILTER" value="false" />
+ <option name="USER" value="" />
+ </component>
+ <component name="ChangeListManager">
+ <list default="true" name="Default" comment="">
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/report-server.iws" afterPath="$PROJECT_DIR$/report-server.iws" />
+ </list>
+ </component>
+ <component name="ChangeListSynchronizer" />
+ <component name="ChangesViewManager" flattened_view="true" />
+ <component name="CheckinPanelState" />
+ <component name="Commander">
+ <leftPanel />
+ <rightPanel />
+ <splitter proportion="0.5" />
+ </component>
+ <component name="CompilerWorkspaceConfiguration">
+ <option name="COMPILE_IN_BACKGROUND" value="false" />
+ <option name="AUTO_SHOW_ERRORS_IN_EDITOR" value="true" />
+ <option name="CLOSE_MESSAGE_VIEW_IF_SUCCESS" value="true" />
+ <option name="COMPILE_DEPENDENT_FILES" value="false" />
+ <option name="CLEAR_OUTPUT_DIRECTORY" value="false" />
+ <option name="ASSERT_NOT_NULL" value="true" />
+ </component>
+ <component name="CoverageDataManager" />
+ <component name="Cvs2Configuration">
+ <option name="PRUNE_EMPTY_DIRECTORIES" value="true" />
+ <option name="MERGING_MODE" value="0" />
+ <option name="MERGE_WITH_BRANCH1_NAME" value="HEAD" />
+ <option name="MERGE_WITH_BRANCH2_NAME" value="HEAD" />
+ <option name="RESET_STICKY" value="false" />
+ <option name="CREATE_NEW_DIRECTORIES" value="true" />
+ <option name="DEFAULT_TEXT_FILE_SUBSTITUTION" value="kv" />
+ <option name="PROCESS_UNKNOWN_FILES" value="false" />
+ <option name="PROCESS_DELETED_FILES" value="false" />
+ <option name="PROCESS_IGNORED_FILES" value="false" />
+ <option name="RESERVED_EDIT" value="false" />
+ <option name="CHECKOUT_DATE_OR_REVISION_SETTINGS">
+ <value>
+ <option name="BRANCH" value="" />
+ <option name="DATE" value="" />
+ <option name="USE_BRANCH" value="false" />
+ <option name="USE_DATE" value="false" />
+ </value>
+ </option>
+ <option name="UPDATE_DATE_OR_REVISION_SETTINGS">
+ <value>
+ <option name="BRANCH" value="" />
+ <option name="DATE" value="" />
+ <option name="USE_BRANCH" value="false" />
+ <option name="USE_DATE" value="false" />
+ </value>
+ </option>
+ <option name="SHOW_CHANGES_REVISION_SETTINGS">
+ <value>
+ <option name="BRANCH" value="" />
+ <option name="DATE" value="" />
+ <option name="USE_BRANCH" value="false" />
+ <option name="USE_DATE" value="false" />
+ </value>
+ </option>
+ <option name="SHOW_OUTPUT" value="false" />
+ <option name="ADD_WATCH_INDEX" value="0" />
+ <option name="REMOVE_WATCH_INDEX" value="0" />
+ <option name="UPDATE_KEYWORD_SUBSTITUTION" />
+ <option name="MAKE_NEW_FILES_READONLY" value="false" />
+ <option name="SHOW_CORRUPTED_PROJECT_FILES" value="0" />
+ <option name="TAG_AFTER_PROJECT_COMMIT" value="false" />
+ <option name="OVERRIDE_EXISTING_TAG_FOR_PROJECT" value="true" />
+ <option name="TAG_AFTER_PROJECT_COMMIT_NAME" value="" />
+ <option name="CLEAN_COPY" value="false" />
+ </component>
+ <component name="DaemonCodeAnalyzer">
+ <disable_hints />
+ </component>
+ <component name="DebuggerManager">
+ <breakpoint_any>
+ <breakpoint>
+ <option name="NOTIFY_CAUGHT" value="true" />
+ <option name="NOTIFY_UNCAUGHT" value="true" />
+ <option name="ENABLED" value="false" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="false" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ <breakpoint>
+ <option name="NOTIFY_CAUGHT" value="true" />
+ <option name="NOTIFY_UNCAUGHT" value="true" />
+ <option name="ENABLED" value="false" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="false" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ </breakpoint_any>
+ <breakpoint_rules />
+ <ui_properties />
+ </component>
+ <component name="ErrorTreeViewConfiguration">
+ <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+ <option name="HIDE_WARNINGS" value="false" />
+ </component>
+ <component name="FavoritesManager">
+ <favorites_list name="report-server" />
+ </component>
+ <component name="FavoritesProjectViewPane" />
+ <component name="FileEditorManager">
+ <leaf />
+ </component>
+ <component name="FindManager">
+ <FindUsagesManager>
+ <setting name="OPEN_NEW_TAB" value="false" />
+ </FindUsagesManager>
+ </component>
+ <component name="HierarchyBrowserManager">
+ <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+ <option name="SORT_ALPHABETICALLY" value="false" />
+ <option name="HIDE_CLASSES_WHERE_METHOD_NOT_IMPLEMENTED" value="false" />
+ </component>
+ <component name="InspectionManager">
+ <option name="AUTOSCROLL_TO_SOURCE" value="false" />
+ <option name="SPLITTER_PROPORTION" value="0.5" />
+ <option name="GROUP_BY_SEVERITY" value="false" />
+ <option name="FILTER_RESOLVED_ITEMS" value="true" />
+ <option name="ANALYZE_TEST_SOURCES" value="true" />
+ <option name="SHOW_DIFF_WITH_PREVIOUS_RUN" value="false" />
+ <option name="SCOPE_TYPE" value="1" />
+ <option name="CUSTOM_SCOPE_NAME" value="" />
+ <option name="SHOW_ONLY_DIFF" value="false" />
+ <option name="myCurrentProfileName" value="Default" />
+ </component>
+ <component name="J2EEProjectPane" />
+ <component name="JspContextManager" />
+ <component name="ModuleEditorState">
+ <option name="LAST_EDITED_MODULE_NAME" />
+ <option name="LAST_EDITED_TAB_NAME" />
+ </component>
+ <component name="NamedScopeManager" />
+ <component name="PackagesPane">
+ <subPane />
+ </component>
+ <component name="PerforceChangeBrowserSettings">
+ <option name="USE_CLIENT_FILTER" value="true" />
+ <option name="CLIENT" value="" />
+ </component>
+ <component name="PerforceDirect.Settings">
+ <option name="useP4CONFIG" value="true" />
+ <option name="port" value="<perforce_server>:1666" />
+ <option name="client" value="" />
+ <option name="user" value="" />
+ <option name="passwd" value="" />
+ <option name="showCmds" value="false" />
+ <option name="useNativeApi" value="false" />
+ <option name="pathToExec" value="p4" />
+ <option name="useCustomPathToExec" value="false" />
+ <option name="SYNC_FORCE" value="false" />
+ <option name="SYNC_RUN_RESOLVE" value="true" />
+ <option name="REVERT_UNCHANGED_FILES" value="true" />
+ <option name="CHARSET" value="none" />
+ <option name="SHOW_BRANCHES_HISTORY" value="true" />
+ <option name="ENABLED" value="true" />
+ <option name="USE_LOGIN" value="false" />
+ <option name="LOGIN_SILENTLY" value="false" />
+ <option name="INTEGRATE_RUN_RESOLVE" value="true" />
+ <option name="INTEGRATE_REVERT_UNCHANGED" value="true" />
+ <option name="SERVER_TIMEOUT" value="20000" />
+ </component>
+ <component name="ProjectLevelVcsManager">
+ <OptionsSetting value="true" id="Add" />
+ <OptionsSetting value="true" id="Remove" />
+ <OptionsSetting value="true" id="Checkin" />
+ <OptionsSetting value="true" id="Checkout" />
+ <OptionsSetting value="true" id="Update" />
+ <OptionsSetting value="true" id="Status" />
+ <OptionsSetting value="true" id="Edit" />
+ <OptionsSetting value="true" id="Undo Check Out" />
+ <OptionsSetting value="true" id="Compare with SourceSafe Version" />
+ <OptionsSetting value="true" id="Get Latest Version" />
+ <ConfirmationsSetting value="0" id="Add" />
+ <ConfirmationsSetting value="0" id="Remove" />
+ </component>
+ <component name="ProjectPane">
+ <subPane>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/core" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/core" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/core/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/core/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="report-server" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/core" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/core/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/core/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/core/src/main/java" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/core/src/main/java/org/jboss/bpm/report" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ </subPane>
+ </component>
+ <component name="ProjectReloadState">
+ <option name="STATE" value="0" />
+ </component>
+ <component name="ProjectView">
+ <navigator currentView="ProjectPane" proportions="0.11111111" version="1" splitterProportion="0.5">
+ <flattenPackages />
+ <showMembers />
+ <showModules />
+ <showLibraryContents />
+ <hideEmptyPackages />
+ <abbreviatePackageNames />
+ <showStructure PackagesPane="false" Scope="false" ProjectPane="false" />
+ <autoscrollToSource />
+ <autoscrollFromSource />
+ <sortByType />
+ </navigator>
+ </component>
+ <component name="PropertiesComponent">
+ <property name="MemberChooser.copyJavadoc" value="false" />
+ <property name="GoToClass.includeLibraries" value="false" />
+ <property name="MemberChooser.showClasses" value="true" />
+ <property name="MemberChooser.sorted" value="false" />
+ <property name="GoToFile.includeJavaFiles" value="false" />
+ <property name="GoToClass.toSaveIncludeLibraries" value="false" />
+ </component>
+ <component name="ReadonlyStatusHandler">
+ <option name="SHOW_DIALOG" value="true" />
+ </component>
+ <component name="RecentsManager" />
+ <component name="RestoreUpdateTree" />
+ <component name="RunManager">
+ <configuration default="true" type="Applet" factoryName="Applet">
+ <module name="" />
+ <option name="MAIN_CLASS_NAME" />
+ <option name="HTML_FILE_NAME" />
+ <option name="HTML_USED" value="false" />
+ <option name="WIDTH" value="400" />
+ <option name="HEIGHT" value="300" />
+ <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
+ <option name="VM_PARAMETERS" />
+ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+ <option name="ALTERNATIVE_JRE_PATH" />
+ </configuration>
+ <configuration default="true" type="Remote" factoryName="Remote">
+ <option name="USE_SOCKET_TRANSPORT" value="true" />
+ <option name="SERVER_MODE" value="false" />
+ <option name="SHMEM_ADDRESS" value="javadebug" />
+ <option name="HOST" value="localhost" />
+ <option name="PORT" value="5005" />
+ </configuration>
+ <configuration default="true" type="Application" factoryName="Application" enabled="false" merge="false">
+ <option name="MAIN_CLASS_NAME" />
+ <option name="VM_PARAMETERS" />
+ <option name="PROGRAM_PARAMETERS" />
+ <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+ <option name="ALTERNATIVE_JRE_PATH" />
+ <option name="ENABLE_SWING_INSPECTOR" value="false" />
+ <module name="" />
+ </configuration>
+ <configuration default="true" type="JUnit" factoryName="JUnit" enabled="false" merge="false">
+ <module name="" />
+ <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+ <option name="ALTERNATIVE_JRE_PATH" />
+ <option name="PACKAGE_NAME" />
+ <option name="MAIN_CLASS_NAME" />
+ <option name="METHOD_NAME" />
+ <option name="TEST_OBJECT" value="class" />
+ <option name="VM_PARAMETERS" />
+ <option name="PARAMETERS" />
+ <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+ <option name="ADDITIONAL_CLASS_PATH" />
+ <option name="TEST_SEARCH_SCOPE">
+ <value defaultName="wholeProject" />
+ </option>
+ </configuration>
+ <configuration name="<template>" type="WebApp" default="true" selected="false">
+ <Host>localhost</Host>
+ <Port>5050</Port>
+ </configuration>
+ </component>
+ <component name="ScopeViewComponent">
+ <subPane subId="Project">
+ <PATH>
+ <PATH_ELEMENT USER_OBJECT="Root">
+ <option name="myItemId" value="" />
+ <option name="myItemType" value="" />
+ </PATH_ELEMENT>
+ </PATH>
+ </subPane>
+ </component>
+ <component name="SelectInManager" />
+ <component name="StarteamConfiguration">
+ <option name="SERVER" value="" />
+ <option name="PORT" value="49201" />
+ <option name="USER" value="" />
+ <option name="PASSWORD" value="" />
+ <option name="PROJECT" value="" />
+ <option name="VIEW" value="" />
+ <option name="ALTERNATIVE_WORKING_PATH" value="" />
+ <option name="LOCK_ON_CHECKOUT" value="false" />
+ <option name="UNLOCK_ON_CHECKIN" value="false" />
+ </component>
+ <component name="StructuralSearchPlugin" />
+ <component name="StructureViewFactory">
+ <option name="AUTOSCROLL_MODE" value="true" />
+ <option name="AUTOSCROLL_FROM_SOURCE" value="false" />
+ <option name="ACTIVE_ACTIONS" value="" />
+ </component>
+ <component name="Struts Assistant">
+ <option name="showInputs" value="true" />
+ <option name="resources">
+ <value>
+ <option name="strutsPath" />
+ <option name="strutsHelp" />
+ </value>
+ </option>
+ <option name="selectedTaglibs" />
+ <option name="selectedTaglibs" />
+ <option name="myStrutsValidationEnabled" value="true" />
+ <option name="myTilesValidationEnabled" value="true" />
+ <option name="myValidatorValidationEnabled" value="true" />
+ <option name="myReportErrorsAsWarnings" value="true" />
+ </component>
+ <component name="SvnChangesBrowserSettings">
+ <option name="USE_AUTHOR_FIELD" value="true" />
+ <option name="AUTHOR" value="" />
+ <option name="LOCATION" value="" />
+ <option name="USE_PROJECT_SETTINGS" value="true" />
+ <option name="USE_ALTERNATE_LOCATION" value="false" />
+ </component>
+ <component name="SvnConfiguration">
+ <option name="USER" value="" />
+ <option name="PASSWORD" value="" />
+ <option name="PROCESS_UNRESOLVED" value="false" />
+ <option name="LAST_MERGED_REVISION" />
+ <option name="UPDATE_RUN_STATUS" value="false" />
+ <option name="UPDATE_RECURSIVELY" value="true" />
+ <option name="MERGE_DRY_RUN" value="false" />
+ <configuration useDefault="true">/Users/hbraun/.subversion</configuration>
+ </component>
+ <component name="TodoView" selected-index="0">
+ <todo-panel id="selected-file">
+ <are-packages-shown value="false" />
+ <are-modules-shown value="false" />
+ <flatten-packages value="false" />
+ <is-autoscroll-to-source value="true" />
+ </todo-panel>
+ <todo-panel id="all">
+ <are-packages-shown value="true" />
+ <are-modules-shown value="false" />
+ <flatten-packages value="false" />
+ <is-autoscroll-to-source value="true" />
+ </todo-panel>
+ </component>
+ <component name="ToolWindowManager">
+ <frame x="0" y="22" width="1280" height="774" extended-state="6" />
+ <editor active="false" />
+ <layout>
+ <window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+ <window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+ <window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+ <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="7" />
+ <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.3290008" order="0" />
+ <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3299363" order="1" />
+ <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="1" />
+ <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+ <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="6" />
+ <window_info id="Module Dependencies" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+ <window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+ <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+ <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="1" />
+ <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+ <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="2" />
+ <window_info id="Maven" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+ <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="2" />
+ <window_info id="File View" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+ <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="4" />
+ <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="0" />
+ <window_info id="IDEtalk Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+ <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+ <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="0" />
+ <window_info id="Web" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="2" />
+ <window_info id="EJB" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="3" />
+ <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="5" />
+ </layout>
+ </component>
+ <component name="VCS.FileViewConfiguration">
+ <option name="SELECTED_STATUSES" value="DEFAULT" />
+ <option name="SELECTED_COLUMNS" value="DEFAULT" />
+ <option name="SHOW_FILTERS" value="true" />
+ <option name="CUSTOMIZE_VIEW" value="true" />
+ <option name="SHOW_FILE_HISTORY_AS_TREE" value="true" />
+ </component>
+ <component name="VcsManagerConfiguration">
+ <option name="OFFER_MOVE_TO_ANOTHER_CHANGELIST_ON_PARTIAL_COMMIT" value="true" />
+ <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" />
+ <option name="PERFORM_UPDATE_IN_BACKGROUND" value="false" />
+ <option name="PERFORM_COMMIT_IN_BACKGROUND" value="false" />
+ <option name="PUT_FOCUS_INTO_COMMENT" value="false" />
+ <option name="FORCE_NON_EMPTY_COMMENT" value="false" />
+ <option name="LAST_COMMIT_MESSAGE" />
+ <option name="SAVE_LAST_COMMIT_MESSAGE" value="true" />
+ <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" />
+ <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
+ <option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false" />
+ <option name="REFORMAT_BEFORE_FILE_COMMIT" value="false" />
+ <option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" />
+ <option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" />
+ <option name="ERROR_OCCURED" value="false" />
+ <option name="ACTIVE_VCS_NAME" value="svn" />
+ <option name="UPDATE_GROUP_BY_PACKAGES" value="false" />
+ <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
+ <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
+ </component>
+ <component name="VssConfiguration">
+ <option name="CLIENT_PATH" value="" />
+ <option name="SRCSAFEINI_PATH" value="" />
+ <option name="USER_NAME" value="" />
+ <option name="PWD" value="" />
+ <option name="VSS_IS_INITIALIZED" value="true" />
+ <CheckoutOptions>
+ <option name="COMMENT" value="" />
+ <option name="DO_NOT_GET_LATEST_VERSION" value="false" />
+ <option name="REPLACE_WRITABLE" value="false" />
+ <option name="RECURSIVE" value="false" />
+ </CheckoutOptions>
+ <CheckinOptions>
+ <option name="COMMENT" value="" />
+ <option name="KEEP_CHECKED_OUT" value="false" />
+ <option name="RECURSIVE" value="false" />
+ </CheckinOptions>
+ <AddOptions>
+ <option name="STORE_ONLY_LATEST_VERSION" value="false" />
+ <option name="CHECK_OUT_IMMEDIATELY" value="false" />
+ <option name="FILE_TYPE" value="0" />
+ </AddOptions>
+ <UndocheckoutOptions>
+ <option name="MAKE_WRITABLE" value="false" />
+ <option name="REPLACE_LOCAL_COPY" value="0" />
+ <option name="RECURSIVE" value="false" />
+ </UndocheckoutOptions>
+ <GetOptions>
+ <option name="REPLACE_WRITABLE" value="0" />
+ <option name="MAKE_WRITABLE" value="false" />
+ <option name="ANSWER_NEGATIVELY" value="false" />
+ <option name="ANSWER_POSITIVELY" value="false" />
+ <option name="RECURSIVE" value="false" />
+ <option name="VERSION" />
+ </GetOptions>
+ <VssConfigurableExcludedFilesTag />
+ </component>
+ <component name="antWorkspaceConfiguration">
+ <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+ <option name="FILTER_TARGETS" value="false" />
+ </component>
+ <component name="com.intellij.ide.util.scopeChooser.ScopeChooserConfigurable" proportions="" version="1">
+ <option name="myLastEditedConfigurable" />
+ </component>
+ <component name="com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectRootMasterDetailsConfigurable" proportions="0.11111111" version="1">
+ <option name="myPlainMode" value="false" />
+ <option name="myLastEditedConfigurable" value="report-server" />
+ </component>
+ <component name="com.intellij.profile.ui.ErrorOptionsConfigurable" proportions="" version="1">
+ <option name="myLastEditedConfigurable" />
+ </component>
+ <component name="editorHistoryManager">
+ <entry file="file://$PROJECT_DIR$/pom.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="10" column="3" selection-start="467" selection-end="467" vertical-scroll-proportion="0.2973568">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/server/src/main/webapp/WEB-INF/web.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="21" column="0" selection-start="654" selection-end="654" vertical-scroll-proportion="0.370068">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/server/src/main/webapp/WEB-INF/jboss-web.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="14" column="34" selection-start="366" selection-end="366" vertical-scroll-proportion="0.30476192">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/core/pom.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="171" column="38" selection-start="4892" selection-end="4892" vertical-scroll-proportion="2.3111112">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/server/pom.xml">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="36" column="22" selection-start="925" selection-end="925" vertical-scroll-proportion="0.78367347">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/core/src/main/java/org/jboss/bpm/report/BirtEngineFactory.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="56" column="0" selection-start="2155" selection-end="2155" vertical-scroll-proportion="0.7111111">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </component>
+</project>
+
Added: report-server/trunk/server/pom.xml
===================================================================
--- report-server/trunk/server/pom.xml (rev 0)
+++ report-server/trunk/server/pom.xml 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <name>JBoss BPM - Report Server</name>
+ <groupId>org.jboss.bpm</groupId>
+ <artifactId>report-server</artifactId>
+ <packaging>war</packaging>
+
+ <!-- Parent -->
+ <parent>
+ <groupId>org.jboss.bpm</groupId>
+ <artifactId>report-parent</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+
+ <!-- Dependencies -->
+ <dependencies>
+
+ <dependency>
+ <groupId>org.jboss.bpm</groupId>
+ <artifactId>report-core</artifactId>
+ <version>${version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.resteasy</groupId>
+ <artifactId>resteasy-jaxrs</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ </dependencies>
+
+ <!-- Plugins -->
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ </plugins>
+
+ <finalName>report-server</finalName>
+ </build>
+</project>
Added: report-server/trunk/server/src/main/java/org/jboss/bpm/report/ServerApplication.java
===================================================================
--- report-server/trunk/server/src/main/java/org/jboss/bpm/report/ServerApplication.java (rev 0)
+++ report-server/trunk/server/src/main/java/org/jboss/bpm/report/ServerApplication.java 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,54 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.report;
+
+import javax.ws.rs.core.Application;
+import java.util.HashSet;
+import java.util.Set;
+
+/**
+ * JAX-RS core component.
+ *
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class ServerApplication extends Application
+{
+ HashSet<Object> singletons = new HashSet<Object>();
+
+ public ServerApplication()
+ {
+ singletons.add(new ReportFacade());
+ }
+
+ @Override
+ public Set<Class<?>> getClasses()
+ {
+ HashSet<Class<?>> set = new HashSet<Class<?>>();
+ return set;
+ }
+
+ @Override
+ public Set<Object> getSingletons()
+ {
+ return singletons;
+ }
+}
Added: report-server/trunk/server/src/main/webapp/WEB-INF/jboss-web.xml
===================================================================
--- report-server/trunk/server/src/main/webapp/WEB-INF/jboss-web.xml (rev 0)
+++ report-server/trunk/server/src/main/webapp/WEB-INF/jboss-web.xml 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!DOCTYPE jboss-web PUBLIC
+ "-//JBoss//DTD Web Application 2.4//EN"
+ "http://www.jboss.org/j2ee/dtd/jboss-web_4_2.dtd">
+
+<jboss-web>
+
+ <!--class-loading>
+ <loader-repository>
+ org.bpm.console.server:report-server.war
+ </loader-repository>
+ </class-loading-->
+
+ <!--security-domain>java:/jaas/jbpm-console</security-domain-->
+
+ <context-root>report-server</context-root>
+
+ <!--resource-ref>
+ <res-ref-name>jdbc/JbpmDataSource</res-ref-name>
+ <jndi-name>java:/JbpmDS</jndi-name>
+ </resource-ref>
+ -->
+
+</jboss-web>
Added: report-server/trunk/server/src/main/webapp/WEB-INF/web.xml
===================================================================
--- report-server/trunk/server/src/main/webapp/WEB-INF/web.xml (rev 0)
+++ report-server/trunk/server/src/main/webapp/WEB-INF/web.xml 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,64 @@
+<!DOCTYPE web-app PUBLIC
+ "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
+ "http://java.sun.com/dtd/web-app_2_3.dtd" >
+
+<web-app>
+ <display-name>Report Server</display-name>
+
+ <context-param>
+ <param-name>javax.ws.rs.core.Application</param-name>
+ <param-value>org.jboss.bpm.report.ServerApplication</param-value>
+ </context-param>
+
+ <context-param>
+ <param-name>resteasy.servlet.mapping.prefix</param-name>
+ <param-value>/rs</param-value>
+ </context-param>
+
+ <context-param>
+ <param-name>resteasy.providers</param-name>
+ <param-value>org.jboss.bpm.report.FileWriter</param-value>
+ </context-param>
+
+ <listener>
+ <listener-class>
+ org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap
+ </listener-class>
+ </listener>
+
+ <servlet>
+ <servlet-name>Resteasy</servlet-name>
+ <servlet-class>
+ org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
+ </servlet-class>
+ </servlet>
+
+ <servlet-mapping>
+ <servlet-name>Resteasy</servlet-name>
+ <url-pattern>/rs/*</url-pattern>
+ </servlet-mapping>
+
+ <!--security-constraint>
+ <web-resource-collection>
+ <web-resource-name>Resteasy</web-resource-name>
+ <url-pattern>/rs/*</url-pattern>
+ </web-resource-collection>
+ <auth-constraint>
+ <role-name>admin</role-name>
+ <role-name>user</role-name>
+ </auth-constraint>
+ </security-constraint>
+
+ <login-config>
+ <auth-method>BASIC</auth-method>
+ <realm-name>Report Server</realm-name>
+ </login-config>
+
+ <security-role>
+ <role-name>admin</role-name>
+ </security-role>
+ <security-role>
+ <role-name>user</role-name>
+ </security-role-->
+
+</web-app>
Added: report-server/trunk/server/src/main/webapp/index.html
===================================================================
--- report-server/trunk/server/src/main/webapp/index.html (rev 0)
+++ report-server/trunk/server/src/main/webapp/index.html 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,36 @@
+<html>
+<body>
+
+<h1>Report Server</h1>
+
+<h2>Published REST Url's </h2>
+
+<table border=1 cellpadding=5>
+<tr>
+ <th>Method</th>
+ <th>Context</th>
+ <th>Description</th>
+ <th>Mime Types</th>
+</tr>
+
+<tr>
+ <td colspan=4><h3>Report Management</h3></td>
+</tr>
+
+<tr>
+ <td>GET</td>
+ <td>/rs/report/view/{reportName}</td>
+ <td>View a HTML report from template 'reportName' </td>
+ <td>text/html</td>
+</tr>
+
+<tr>
+ <td>GET</td>
+ <td>/rs/report/view/image/{image}</td>
+ <td>Get images associated with an HTML report
+ (The exported reports refer to tzhis URL)</td>
+ <td>image/*</td>
+</tr>
+</table>
+</body>
+</html>
\ No newline at end of file
Added: report-server/trunk/server/src/main/webapp/loader.gif
===================================================================
(Binary files differ)
Property changes on: report-server/trunk/server/src/main/webapp/loader.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: report-server/trunk/server/src/main/webapp/loadffw.html
===================================================================
--- report-server/trunk/server/src/main/webapp/loadffw.html (rev 0)
+++ report-server/trunk/server/src/main/webapp/loadffw.html 2009-10-26 17:23:53 UTC (rev 858)
@@ -0,0 +1,49 @@
+<html>
+<head>
+ <script language='JavaScript'>
+ // get the current URL
+ var url = window.location.toString();
+ //get the parameters
+ url.match(/\?(.+)$/);
+ var params = RegExp.$1;
+ // split up the query string and store in an
+ // associative array
+ var params = params.split("&");
+ var queryStringList = {};
+
+ for(var i=0;i<params.length;i++)
+ {
+ var tmp = params[i].split("=");
+ queryStringList[tmp[0]] = unescape(tmp[1]);
+ }
+
+ var ffw = "";
+ for(var i in queryStringList)
+ {
+ if(i == "ffw")
+ {
+ ffw = queryStringList[i];
+ break;
+ }
+ }
+
+ alert("0:"+document.location.hostname);
+
+ alert("1:"+params);
+ </script>
+</head>
+<body>
+<br><br>
+<center>
+ <img src="loader.gif" alt="loading ..."/>
+ <h3 style="font-family:sans-serif;">Generating report, please wait...</h3>
+</center>
+<script type="text/javascript">
+ if(ffw != "")
+ {
+ //document.location.href = ffw;
+ alert("2:"+ffw);
+ }
+</script>
+</body>
+</html>
\ No newline at end of file
14 years, 7 months
Overlord SVN: r857 - report-server.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2009-10-26 13:19:55 -0400 (Mon, 26 Oct 2009)
New Revision: 857
Added:
report-server/trunk/
Log:
14 years, 7 months
Overlord SVN: r856 - /.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2009-10-26 13:18:46 -0400 (Mon, 26 Oct 2009)
New Revision: 856
Added:
report-server/
Log:
14 years, 7 months
Overlord SVN: r855 - in bpm-console/branches/hbraun: gui/war and 12 other directories.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2009-10-26 05:36:02 -0400 (Mon, 26 Oct 2009)
New Revision: 855
Added:
bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/common/BaseAction.java
bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/server/
bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/server/ProxyServlet.java
bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/svc/
bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/svc/ProcessMgmtService.java
bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/svc/ProcessMgmtServiceAsync.java
bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/server/svc/
bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/server/svc/ProcessMgmtServiceImpl.java
Modified:
bpm-console/branches/hbraun/BPMC.iws
bpm-console/branches/hbraun/bpmc-toplevel.iml
bpm-console/branches/hbraun/gui/war/gui-war.iml
bpm-console/branches/hbraun/gui/war/pom.xml
bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/common/AbstractRESTAction.java
bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateDefinitionsAction.java
bpm-console/branches/hbraun/gui/war/src/main/resources/org/jboss/bpm/console/Application.gwt.xml
bpm-console/branches/hbraun/gui/war/src/main/webapp/WEB-INF/web.xml
bpm-console/branches/hbraun/server/war/server-war.iml
bpm-console/branches/hbraun/server/war/src/main/webapp/WEB-INF/web.xml
bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/ProcessDefinitionRef.java
bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/ProcessDefinitionRefWrapper.java
Log:
Begin work on GWT RPC integration
Modified: bpm-console/branches/hbraun/BPMC.iws
===================================================================
--- bpm-console/branches/hbraun/BPMC.iws 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/BPMC.iws 2009-10-26 09:36:02 UTC (rev 855)
@@ -144,6 +144,58 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
+ <breakpoint url="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/server/ProxyServlet.java" line="557" class="org.jboss.bpm.console.server.ProxyServlet" package="org.jboss.bpm.console.server">
+ <option name="ENABLED" value="true" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="false" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ <breakpoint url="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/server/ProxyServlet.java" line="181" class="org.jboss.bpm.console.server.ProxyServlet" package="org.jboss.bpm.console.server">
+ <option name="ENABLED" value="true" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="false" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ <breakpoint url="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/server/ProxyServlet.java" line="159" class="org.jboss.bpm.console.server.ProxyServlet" package="org.jboss.bpm.console.server">
+ <option name="ENABLED" value="true" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="false" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
+ <breakpoint url="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/server/ProxyServlet.java" line="323" class="org.jboss.bpm.console.server.ProxyServlet" package="org.jboss.bpm.console.server">
+ <option name="ENABLED" value="true" />
+ <option name="SUSPEND_POLICY" value="SuspendAll" />
+ <option name="LOG_ENABLED" value="false" />
+ <option name="LOG_EXPRESSION_ENABLED" value="false" />
+ <option name="COUNT_FILTER_ENABLED" value="false" />
+ <option name="COUNT_FILTER" value="0" />
+ <option name="CONDITION_ENABLED" value="false" />
+ <option name="CLASS_FILTERS_ENABLED" value="false" />
+ <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+ <option name="CONDITION" value="" />
+ <option name="LOG_MESSAGE" value="" />
+ </breakpoint>
</line_breakpoints>
<breakpoint_any>
<breakpoint>
@@ -217,44 +269,15 @@
<component name="FileColors" enabled="false" enabledForTabs="false" />
<component name="FileEditorManager">
<leaf>
- <file leaf-file-name="SettingsEditor.java" pinned="false" current="true" current-in-tab="true">
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/SettingsEditor.java">
+ <file leaf-file-name="pom.xml" pinned="false" current="true" current-in-tab="true">
+ <entry file="file://$PROJECT_DIR$/gui/war/pom.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="123" column="30" selection-start="3747" selection-end="3747" vertical-scroll-proportion="0.48899755">
+ <state line="187" column="37" selection-start="5480" selection-end="5480" vertical-scroll-proportion="0.100250624">
<folding />
</state>
</provider>
</entry>
</file>
- <file leaf-file-name="console.css" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css">
- <provider selected="true" editor-type-id="text-editor">
- <state line="337" column="35" selection-start="5200" selection-end="5200" vertical-scroll-proportion="0.6926771">
- <folding />
- </state>
- </provider>
- </entry>
- </file>
- <file leaf-file-name="ProcessEditor.java" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/ProcessEditor.java">
- <provider selected="true" editor-type-id="text-editor">
- <state line="100" column="60" selection-start="3634" selection-end="3669" vertical-scroll-proportion="0.52100843">
- <folding>
- <element signature="class#2386:3598" expanded="false" />
- </folding>
- </state>
- </provider>
- </entry>
- </file>
- <file leaf-file-name="PreferencesView.java" pinned="false" current="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/PreferencesView.java">
- <provider selected="true" editor-type-id="text-editor">
- <state line="40" column="13" selection-start="1690" selection-end="1690" vertical-scroll-proportion="0.15647922">
- <folding />
- </state>
- </provider>
- </entry>
- </file>
</leaf>
</component>
<component name="FindManager">
@@ -355,6 +378,144 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
+ <option name="myItemId" value="shared-rpc" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="BPMC.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="shared-rpc" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="BPMC.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="shared-rpc" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="BPMC.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="shared-rpc" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java/org" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java/org/jboss" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java/org/jboss/bpm" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java/org/jboss/bpm/console" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java/org/jboss/bpm/console/server" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java/org/jboss/bpm/console/server/svc" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="BPMC.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="shared-rpc" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java/org" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java/org/jboss" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java/org/jboss/bpm" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/shared/rpc/src/main/java/org/jboss/bpm/console" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="BPMC.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
<option name="myItemId" value="server-war" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
</PATH_ELEMENT>
@@ -412,6 +573,10 @@
<option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server/war/src/main" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server/war/src/main/webapp" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
@@ -435,6 +600,58 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server/war/src/main/webapp" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server/war/src/main/webapp/WEB-INF" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="BPMC.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="server-war" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server/war" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server/war/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server/war/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="BPMC.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="server-war" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server/war" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server/war/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server/war/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
<option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/server/war/src/main/java" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
@@ -522,6 +739,10 @@
<option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/webapp" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
@@ -545,6 +766,58 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/webapp" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/webapp/WEB-INF" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="BPMC.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="gui-war" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="BPMC.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="gui-war" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
<option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/resources" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
@@ -617,25 +890,43 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/resources/org" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/resources/jmaki" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/resources/org/jboss" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/resources/jmaki/xhp" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ </PATH>
+ <PATH>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm" />
+ <option name="myItemId" value="BPMC.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="gui-war" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm/console" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm/console/public" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
@@ -666,6 +957,22 @@
<option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/server" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
@@ -801,7 +1108,7 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/util" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
@@ -851,7 +1158,7 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
- <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/engine" />
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
@@ -935,6 +1242,7 @@
<recent name="" />
</key>
<key name="MoveClassesOrPackagesDialog.RECENTS_KEY">
+ <recent name="org.jboss.bpm.console.server" />
<recent name="org.jboss.bpm.console.client" />
<recent name="org.jboss.bpm.console.client.sam" />
<recent name="org.jboss.bpm.console.client.util" />
@@ -1172,16 +1480,16 @@
</todo-panel>
</component>
<component name="ToolWindowManager">
- <frame x="328" y="52" width="1278" height="980" extended-state="0" />
+ <frame x="357" y="41" width="1284" height="960" extended-state="0" />
<editor active="true" />
<layout>
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
<window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
<window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="7" />
- <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.3213995" order="0" />
+ <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.29392713" order="0" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.39290988" order="1" />
- <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.27420667" order="1" />
+ <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.27376118" order="1" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32992035" order="8" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="6" />
<window_info id="Module Dependencies" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
@@ -1193,7 +1501,7 @@
<window_info id="Maven" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.24818695" order="2" />
<window_info id="File View" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
- <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.39184597" order="4" />
+ <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3914328" order="4" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="0" />
<window_info id="IDEtalk Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32873562" order="8" />
@@ -1280,123 +1588,119 @@
<component name="com.intellij.ide.util.scopeChooser.ScopeChooserConfigurable" proportions="" version="1">
<option name="myLastEditedConfigurable" />
</component>
- <component name="com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectRootMasterDetailsConfigurable" proportions="0.11111111,0.5" version="1">
+ <component name="com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectRootMasterDetailsConfigurable" proportions="0.3805061" version="1">
<option name="myPlainMode" value="false" />
- <option name="myLastEditedConfigurable" value="bpmc-toplevel" />
+ <option name="myLastEditedConfigurable" value="M2 Dep: commons-codec:commons-codec:jar:1.2:compile" />
</component>
<component name="com.intellij.profile.ui.ErrorOptionsConfigurable" proportions="" version="1">
<option name="myLastEditedConfigurable" />
</component>
<component name="editorHistoryManager">
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/LoginView.java">
+ <entry file="file://$PROJECT_DIR$/server/war/src/main/webapp/WEB-INF/web.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="125" column="61" selection-start="3887" selection-end="3887" vertical-scroll-proportion="0.9779951">
+ <state line="30" column="53" selection-start="915" selection-end="915" vertical-scroll-proportion="0.05882353">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/model/DTOParser.java">
+ <entry file="file://$PROJECT_DIR$/server/war/pom.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="271" column="38" selection-start="8886" selection-end="8886" vertical-scroll-proportion="0.6393643">
+ <state line="39" column="66" selection-start="1293" selection-end="1293" vertical-scroll-proportion="0.64547676">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/engine/DeploymentListView.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/common/AbstractRESTAction.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="231" column="50" selection-start="7357" selection-end="7357" vertical-scroll-proportion="0.6845966">
+ <state line="37" column="53" selection-start="1583" selection-end="1583" vertical-scroll-proportion="0.15647922">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingPanel.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/common/BaseAction.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="121" column="52" selection-start="3130" selection-end="3130" vertical-scroll-proportion="0.62064826">
- <folding>
- <element signature="imports" expanded="true" />
- <element signature="class#2047:2242" expanded="false" />
- <element signature="class#2363:2547" expanded="false" />
- </folding>
+ <state line="40" column="3" selection-start="1592" selection-end="1592" vertical-scroll-proportion="0.13565426">
+ <folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/task/AbstractTaskList.java">
+ <entry file="jar:///Users/hbraun/.m2/repository/commons-fileupload/commons-fileupload/1.2.1/commons-fileupload-1.2.1.jar!/org/apache/commons/fileupload/FileUploadException.class">
<provider selected="true" editor-type-id="text-editor">
- <state line="36" column="22" selection-start="1449" selection-end="1449" vertical-scroll-proportion="0.19207683">
+ <state line="5" column="13" selection-start="167" selection-end="167" vertical-scroll-proportion="0.104575165">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/task/OpenTasksView.java">
+ <entry file="jar:///Users/hbraun/.m2/repository/commons-fileupload/commons-fileupload/1.2.1/commons-fileupload-1.2.1.jar!/org/apache/commons/fileupload/servlet/ServletFileUpload.class">
<provider selected="true" editor-type-id="text-editor">
- <state line="209" column="31" selection-start="6845" selection-end="6865" vertical-scroll-proportion="0.41075796">
+ <state line="5" column="13" selection-start="175" selection-end="175" vertical-scroll-proportion="0.18879056">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/Application.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="78" column="51" selection-start="3017" selection-end="3017" vertical-scroll-proportion="-2.190709">
+ <state line="37" column="13" selection-start="1514" selection-end="1514" vertical-scroll-proportion="0.1323764">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/task/TaskDetailView.java">
+ <entry file="file://$PROJECT_DIR$/workspace/workspace-api/src/main/java/org/jboss/bpm/console/client/ConsoleConfig.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="111" column="54" selection-start="3501" selection-end="3501" vertical-scroll-proportion="0.6845966">
+ <state line="83" column="33" selection-start="2822" selection-end="2822" vertical-scroll-proportion="0.7777778">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/engine/JobListView.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/server/ProxyServlet.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="127" column="49" selection-start="4184" selection-end="4184" vertical-scroll-proportion="0.7432763">
- <folding />
+ <state line="128" column="37" selection-start="4935" selection-end="4935" vertical-scroll-proportion="0.026143791">
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/InstanceListView.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/jmaki/xhp/XmlHttpProxyServlet.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="46" column="6" selection-start="1992" selection-end="1992" vertical-scroll-proportion="-1.4083129">
+ <state line="335" column="47" selection-start="11825" selection-end="12541" vertical-scroll-proportion="0.8120915">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/resources/jmaki/xhp/xhp.json">
<provider selected="true" editor-type-id="text-editor">
- <state line="163" column="30" selection-start="5079" selection-end="5354" vertical-scroll-proportion="0.9608802">
- <folding>
- <element signature="method#onChange#0;class#4249:4777" expanded="false" />
- </folding>
+ <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+ <folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/ProcessEditor.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/webapp/WEB-INF/web.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="100" column="60" selection-start="3634" selection-end="3669" vertical-scroll-proportion="0.52100843">
- <folding>
- <element signature="class#2386:3598" expanded="false" />
- </folding>
+ <state line="22" column="21" selection-start="718" selection-end="718" vertical-scroll-proportion="0.5614035">
+ <folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/PreferencesView.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm/console/Application.gwt.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="40" column="13" selection-start="1690" selection-end="1690" vertical-scroll-proportion="0.15647922">
+ <state line="57" column="78" selection-start="2646" selection-end="2646" vertical-scroll-proportion="0.784689">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateDefinitionsAction.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="337" column="35" selection-start="5200" selection-end="5200" vertical-scroll-proportion="0.6926771">
- <folding />
+ <state line="49" column="45" selection-start="2027" selection-end="2027" vertical-scroll-proportion="0.5424837">
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/SettingsEditor.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/pom.xml">
<provider selected="true" editor-type-id="text-editor">
- <state line="123" column="30" selection-start="3747" selection-end="3747" vertical-scroll-proportion="0.48899755">
+ <state line="187" column="37" selection-start="5480" selection-end="5480" vertical-scroll-proportion="0.100250624">
<folding />
</state>
</provider>
Modified: bpm-console/branches/hbraun/bpmc-toplevel.iml
===================================================================
--- bpm-console/branches/hbraun/bpmc-toplevel.iml 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/bpmc-toplevel.iml 2009-10-26 09:36:02 UTC (rev 855)
@@ -273,15 +273,6 @@
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: commons-logging:commons-logging:jar:1.1.1:provided">
- <CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar!/" />
- </CLASSES>
- <JAVADOC />
- <SOURCES />
- </library>
- </orderEntry>
- <orderEntry type="module-library" exported="">
<library name="M2 Dep: junit:junit:jar:3.8.1:test">
<CLASSES>
<root url="jar://$MODULE_DIR$/../../../../../.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar!/" />
@@ -365,15 +356,6 @@
</library>
</orderEntry>
<orderEntry type="module-library" exported="">
- <library name="M2 Dep: commons-fileupload:commons-fileupload:jar:1.2.1:compile">
- <CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-fileupload/commons-fileupload/1.2.1/commons-fileupload-1.2.1.jar!/" />
- </CLASSES>
- <JAVADOC />
- <SOURCES />
- </library>
- </orderEntry>
- <orderEntry type="module-library" exported="">
<library name="M2 Dep: commons-io:commons-io:jar:1.3.2:compile">
<CLASSES>
<root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-io/commons-io/1.3.2/commons-io-1.3.2.jar!/" />
@@ -548,6 +530,42 @@
</SOURCES>
</library>
</orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: commons-httpclient:commons-httpclient:jar:3.1:provided">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: commons-logging:commons-logging:jar:1.1.1:provided">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: commons-fileupload:commons-fileupload:jar:1.2.1:provided">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-fileupload/commons-fileupload/1.2.1/commons-fileupload-1.2.1.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library" exported="">
+ <library name="M2 Dep: commons-codec:commons-codec:jar:1.2:provided">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../.m2/repository/commons-codec/commons-codec/1.2/commons-codec-1.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
<orderEntryProperties />
</component>
</module>
Modified: bpm-console/branches/hbraun/gui/war/gui-war.iml
===================================================================
--- bpm-console/branches/hbraun/gui/war/gui-war.iml 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/gui/war/gui-war.iml 2009-10-26 09:36:02 UTC (rev 855)
@@ -11,21 +11,10 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="module" module-name="shared-rpc" />
<orderEntry type="module" module-name="bpmc-toplevel" />
<orderEntry type="module" module-name="gui-profiles" />
<orderEntry type="module-library">
- <library name="M2 Dep: javax.xml.bind:jaxb-api:jar:2.1:provided">
- <CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/javax/xml/bind/jaxb-api/2.1/jaxb-api-2.1.jar!/" />
- </CLASSES>
- <JAVADOC />
- <SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/javax/xml/bind/jaxb-api/2.1/jaxb-api-2.1-sources.jar!/" />
- <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/javax/xml/bind/jaxb-api/2.1/jaxb-api-2.1-sources.jar!/" />
- </SOURCES>
- </library>
- </orderEntry>
- <orderEntry type="module-library">
<library name="M2 Dep: commons-collections:commons-collections:jar:3.2.1:provided">
<CLASSES>
<root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar!/" />
@@ -35,15 +24,6 @@
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: commons-logging:commons-logging:jar:1.1.1:provided">
- <CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar!/" />
- </CLASSES>
- <JAVADOC />
- <SOURCES />
- </library>
- </orderEntry>
- <orderEntry type="module-library">
<library name="M2 Dep: junit:junit:jar:3.8.1:test">
<CLASSES>
<root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar!/" />
@@ -143,18 +123,6 @@
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: commons-beanutils:commons-beanutils:jar:1.7.0:provided">
- <CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar!/" />
- </CLASSES>
- <JAVADOC />
- <SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0-sources.jar!/" />
- <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0-sources.jar!/" />
- </SOURCES>
- </library>
- </orderEntry>
- <orderEntry type="module-library">
<library name="M2 Dep: commons-configuration:commons-configuration:jar:1.6:provided">
<CLASSES>
<root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/commons-configuration/commons-configuration/1.6/commons-configuration-1.6.jar!/" />
@@ -200,17 +168,74 @@
</library>
</orderEntry>
<orderEntry type="module-library">
+ <library name="M2 Dep: javax.xml.bind:jaxb-api:jar:2.1:provided">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/javax/xml/bind/jaxb-api/2.1/jaxb-api-2.1.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES>
+ <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/javax/xml/bind/jaxb-api/2.1/jaxb-api-2.1-sources.jar!/" />
+ </SOURCES>
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library">
+ <library name="M2 Dep: commons-beanutils:commons-beanutils:jar:1.7.0:provided">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES>
+ <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0-sources.jar!/" />
+ </SOURCES>
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library">
<library name="M2 Dep: javax.activation:activation:jar:1.1:provided">
<CLASSES>
<root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/javax/activation/activation/1.1/activation-1.1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
- <root url="jar://$MAVEN_REPOSITORY$/javax/activation/activation/1.1/activation-1.1-sources.jar!/" />
<root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/javax/activation/activation/1.1/activation-1.1-sources.jar!/" />
</SOURCES>
</library>
</orderEntry>
+ <orderEntry type="module-library">
+ <library name="M2 Dep: commons-logging:commons-logging:jar:1.1.1:provided">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library">
+ <library name="M2 Dep: commons-fileupload:commons-fileupload:jar:1.2.1:provided">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/commons-fileupload/commons-fileupload/1.2.1/commons-fileupload-1.2.1.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library">
+ <library name="M2 Dep: commons-httpclient:commons-httpclient:jar:3.1:provided">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntry type="module-library">
+ <library name="M2 Dep: commons-codec:commons-codec:jar:1.2:provided">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/commons-codec/commons-codec/1.2/commons-codec-1.2.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
<orderEntryProperties />
</component>
</module>
Modified: bpm-console/branches/hbraun/gui/war/pom.xml
===================================================================
--- bpm-console/branches/hbraun/gui/war/pom.xml 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/gui/war/pom.xml 2009-10-26 09:36:02 UTC (rev 855)
@@ -115,6 +115,19 @@
<!-- 3rd party -->
<dependency>
+ <groupId>commons-httpclient</groupId>
+ <artifactId>commons-httpclient</artifactId>
+ <version>3.1</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-fileupload</groupId>
+ <artifactId>commons-fileupload</artifactId>
+ <version>1.2.1</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<scope>provided</scope>
@@ -172,7 +185,7 @@
<value>org.jboss.bpm.console.Application</value>
</compileTargets>
<runTarget>org.jboss.bpm.console.Application/Application.html</runTarget>
- <style>DETAILED</style>
+ <!--style>DETAILED</style-->
<noServer>false</noServer>
<extraJvmArgs>-Xmx256M -Xms256M</extraJvmArgs>
<gwtVersion>${gwt.version}</gwtVersion>
Modified: bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/common/AbstractRESTAction.java
===================================================================
--- bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/common/AbstractRESTAction.java 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/common/AbstractRESTAction.java 2009-10-26 09:36:02 UTC (rev 855)
@@ -29,28 +29,19 @@
import org.jboss.bpm.console.client.LoadingStatusAction;
import org.jboss.bpm.console.client.Registry;
import org.jboss.bpm.console.client.util.ConsoleLog;
-import org.gwt.mosaic.ui.client.MessageBox;
import java.io.IOException;
/**
* @author Heiko.Braun <heiko.braun(a)jboss.com>
*/
-public abstract class AbstractRESTAction implements ActionInterface
-{
- protected ApplicationContext appContext;
-
- protected AbstractRESTAction()
- {
- this.appContext = Registry.get(ApplicationContext.class);;
- }
-
- public abstract String getId();
+public abstract class AbstractRESTAction extends BaseAction
+{
public abstract String getUrl(Object event);
public abstract RequestBuilder.Method getRequestMethod();
public abstract void handleSuccessfulResponse(final Controller controller, final Object event, Response response);
- public void execute(final Controller controller, final Object object)
+ public void doExecute(final Controller controller, final Object object)
{
final String url = getUrl(object);
RequestBuilder builder = new RequestBuilder(getRequestMethod(), URL.encode(url));
@@ -59,41 +50,33 @@
try
{
- controller.handleEvent( LoadingStatusAction.ON );
-
final Request request = builder.sendRequest(null,
new RequestCallback()
{
public void onError(Request request, Throwable exception) {
// Couldn't connect to server (could be timeout, SOP violation, etc.)
handleError(url, exception);
- controller.handleEvent( LoadingStatusAction.OFF );
}
public void onResponseReceived(Request request, Response response) {
- try
+
+ if(response.getText().indexOf("HTTP 401")!=-1) // HACK
{
- if(response.getText().indexOf("HTTP 401")!=-1) // HACK
- {
- appContext.getAuthentication().handleSessionTimeout();
- }
- else if (200 == response.getStatusCode())
- {
- handleSuccessfulResponse(controller, object, response);
- }
- else
- {
- final String msg = response.getText().equals("") ? "Unknown error" : response.getText();
- handleError(
- url,
- new RequestException("HTTP "+ response.getStatusCode()+ ": " + msg)
- );
- }
+ appContext.getAuthentication().handleSessionTimeout();
}
- finally
+ else if (200 == response.getStatusCode())
{
- controller.handleEvent( LoadingStatusAction.OFF );
+ handleSuccessfulResponse(controller, object, response);
}
+ else
+ {
+ final String msg = response.getText().equals("") ? "Unknown error" : response.getText();
+ handleError(
+ url,
+ new RequestException("HTTP "+ response.getStatusCode()+ ": " + msg)
+ );
+ }
+
}
}
);
@@ -121,22 +104,7 @@
{
// Couldn't connect to server
handleError(url, e);
- controller.handleEvent( LoadingStatusAction.OFF );
}
}
- protected void handleError(String url, Throwable t)
- {
- final String out =
- "<ul>"+
- "<li>URL: '" + url + "'\n"+
- "<li>Action: '" + getId() + "'\n" +
- "<li>Exception: '" + t.getClass() +"'"+
- "</ul>\n\n"+
- t.getMessage();
-
- ConsoleLog.error(out, t);
- appContext.displayMessage(out, true);
-
- }
}
Added: bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/common/BaseAction.java
===================================================================
--- bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/common/BaseAction.java (rev 0)
+++ bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/common/BaseAction.java 2009-10-26 09:36:02 UTC (rev 855)
@@ -0,0 +1,79 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.console.client.common;
+
+import org.jboss.bpm.console.client.util.ConsoleLog;
+import org.jboss.bpm.console.client.ApplicationContext;
+import org.jboss.bpm.console.client.LoadingStatusAction;
+import org.jboss.bpm.console.client.Registry;
+import com.mvc4g.client.ActionInterface;
+import com.mvc4g.client.Controller;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public abstract class BaseAction implements ActionInterface
+{
+ protected ApplicationContext appContext;
+
+ public abstract String getId();
+
+ protected BaseAction()
+ {
+ this.appContext = Registry.get(ApplicationContext.class);
+ }
+
+ protected void handleError(String url, Throwable t)
+ {
+ final String out =
+ "<ul>"+
+ "<li>URL: '" + url + "'\n"+
+ "<li>Action: '" + getId() + "'\n" +
+ "<li>Exception: '" + t.getClass() +"'"+
+ "</ul>\n\n"+
+ t.getMessage();
+
+ ConsoleLog.error(out, t);
+ appContext.displayMessage(out, true);
+
+ }
+
+
+ public void execute(Controller controller, Object object)
+ {
+ try
+ {
+ controller.handleEvent( LoadingStatusAction.ON );
+ doExecute(controller, object);
+ }
+ catch(Throwable t)
+ {
+ handleError(getId(), t);
+ }
+ finally
+ {
+ controller.handleEvent( LoadingStatusAction.OFF );
+ }
+ }
+
+ protected abstract void doExecute(Controller controller, Object object);
+}
Modified: bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateDefinitionsAction.java
===================================================================
--- bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateDefinitionsAction.java 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateDefinitionsAction.java 2009-10-26 09:36:02 UTC (rev 855)
@@ -21,16 +21,14 @@
*/
package org.jboss.bpm.console.client.process;
-import com.google.gwt.http.client.RequestBuilder;
-import com.google.gwt.http.client.Response;
-import com.google.gwt.json.client.JSONParser;
-import com.google.gwt.json.client.JSONValue;
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.user.client.rpc.AsyncCallback;
+import com.google.gwt.user.client.rpc.ServiceDefTarget;
import com.mvc4g.client.Controller;
-import org.jboss.bpm.console.client.ApplicationContext;
-import org.jboss.bpm.console.client.URLBuilder;
-import org.jboss.bpm.console.client.common.AbstractRESTAction;
-import org.jboss.bpm.console.client.model.DTOParser;
+import org.jboss.bpm.console.client.common.BaseAction;
import org.jboss.bpm.console.client.model.ProcessDefinitionRef;
+import org.jboss.bpm.console.client.model.svc.ProcessMgmtService;
+import org.jboss.bpm.console.client.model.svc.ProcessMgmtServiceAsync;
import org.jboss.bpm.console.client.util.ConsoleLog;
import java.util.List;
@@ -41,39 +39,44 @@
*
* @author Heiko.Braun <heiko.braun(a)jboss.com>
*/
-public class UpdateDefinitionsAction extends AbstractRESTAction
+public class UpdateDefinitionsAction extends BaseAction
{
public final static String ID = UpdateDefinitionsAction.class.getName();
- public String getId()
- {
- return ID;
- }
+ private ProcessMgmtServiceAsync svc;
- public String getUrl(Object event)
+ public UpdateDefinitionsAction()
{
- return URLBuilder.getInstance().getProcessDefinitionsURL();
+ svc = GWT.create(ProcessMgmtService.class);
+ String s = "http://localhost:8888/org.jboss.bpm.console.Application/proxy/rpc/rpcProcess";//appContext.getConfig().getConsoleServerUrl() + "/rpcProcess";
+ ConsoleLog.debug("RPC "+s);
+ ((ServiceDefTarget) svc).setServiceEntryPoint(s);
}
- public RequestBuilder.Method getRequestMethod()
+ public String getId()
{
- return RequestBuilder.GET;
+ return ID;
}
- public void handleSuccessfulResponse(final Controller controller, final Object event, Response response)
+ protected void doExecute(final Controller controller, final Object object)
{
- long start = System.currentTimeMillis();
+ svc.getProcessDefinitions(
+ new AsyncCallback<List<ProcessDefinitionRef>>()
+ {
+ public void onFailure(Throwable throwable)
+ {
+ handleError(getId(), throwable);
+ }
- DefinitionListView view = (DefinitionListView) controller.getView(DefinitionListView.ID);
- if(view!=null) // may not be initialized (lazy)
- {
- JSONValue json = JSONParser.parse(response.getText());
- List<ProcessDefinitionRef> definitions = DTOParser.parseProcessDefinitions(json);
+ public void onSuccess(List<ProcessDefinitionRef> processDefinitionRefs)
+ {
+ long start = System.currentTimeMillis();
+ DefinitionListView view = (DefinitionListView) controller.getView(DefinitionListView.ID);
+ view.update(processDefinitionRefs);
+ ConsoleLog.info("Loaded " + processDefinitionRefs.size() + " process definitions in " +(System.currentTimeMillis()-start)+" ms");
+ }
+ }
+ );
- view.update(definitions);
-
- ConsoleLog.info("Loaded " + definitions.size() + " process definitions in " +(System.currentTimeMillis()-start)+" ms");
-
- }
}
}
Added: bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/server/ProxyServlet.java
===================================================================
--- bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/server/ProxyServlet.java (rev 0)
+++ bpm-console/branches/hbraun/gui/war/src/main/java/org/jboss/bpm/console/server/ProxyServlet.java 2009-10-26 09:36:02 UTC (rev 855)
@@ -0,0 +1,643 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.console.server;
+
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Enumeration;
+import java.util.List;
+import java.util.Map;
+import java.util.zip.GZIPInputStream;
+import javax.servlet.ServletConfig;
+import javax.servlet.ServletException;
+import javax.servlet.http.Cookie;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.commons.fileupload.FileItem;
+import org.apache.commons.fileupload.FileUploadException;
+import org.apache.commons.fileupload.disk.DiskFileItemFactory;
+import org.apache.commons.fileupload.servlet.ServletFileUpload;
+import org.apache.commons.httpclient.Header;
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.HttpMethod;
+import org.apache.commons.httpclient.NameValuePair;
+import org.apache.commons.httpclient.methods.GetMethod;
+import org.apache.commons.httpclient.methods.PostMethod;
+import org.apache.commons.httpclient.methods.StringRequestEntity;
+import org.apache.commons.httpclient.methods.multipart.ByteArrayPartSource;
+import org.apache.commons.httpclient.methods.multipart.FilePart;
+import org.apache.commons.httpclient.methods.multipart.MultipartRequestEntity;
+import org.apache.commons.httpclient.methods.multipart.Part;
+import org.apache.commons.httpclient.methods.multipart.StringPart;
+
+/**
+ * ProxyServlet from http://edwardstx.net/wiki/attach/HttpProxyServlet/ProxyServlet.java
+ * (This seems to be a derivative of Noodle -- http://noodle.tigris.org/)
+ *
+ * Patched to skip "Transfer-Encoding: chunked" headers, avoid double slashes
+ * in proxied URLs, handle GZip and allow GWT RPC.
+ */
+public class ProxyServlet extends HttpServlet {
+
+ private static final int FOUR_KB = 4196;
+
+ /**
+ * Serialization UID.
+ */
+ private static final long serialVersionUID = 1L;
+ /**
+ * Key for redirect location header.
+ */
+ private static final String STRING_LOCATION_HEADER = "Location";
+ /**
+ * Key for content type header.
+ */
+ private static final String STRING_CONTENT_TYPE_HEADER_NAME = "Content-Type";
+ /**
+ * Key for content length header.
+ */
+ private static final String STRING_CONTENT_LENGTH_HEADER_NAME = "Content-Length";
+ /**
+ * Key for host header
+ */
+ private static final String STRING_HOST_HEADER_NAME = "Host";
+ /**
+ * The directory to use to temporarily store uploaded files
+ */
+ private static final File FILE_UPLOAD_TEMP_DIRECTORY = new File(System.getProperty("java.io.tmpdir"));
+
+ // Proxy host params
+ /**
+ * The host to which we are proxying requests. Default value is "localhost".
+ */
+ private String stringProxyHost = "localhost";
+ /**
+ * The port on the proxy host to wihch we are proxying requests. Default value is 80.
+ */
+ private int intProxyPort = 8080;
+ /**
+ * The (optional) path on the proxy host to which we are proxying requests.
+ * Default value is "".
+ */
+ private String stringProxyPath = "";
+ /**
+ * Setting that allows removing the initial path from client.
+ * Allows specifying /twitter/* as synonym for twitter.com.
+ */
+ private boolean removePrefix;
+ /**
+ * The maximum size for uploaded files in bytes. Default value is 5MB.
+ */
+ private int intMaxFileUploadSize = 5 * 1024 * 1024;
+ private boolean isSecure;
+ private boolean followRedirects;
+
+ /**
+ * Initialize the <code>ProxyServlet</code>
+ * @param servletConfig The Servlet configuration passed in by the servlet container
+ */
+ public void init(ServletConfig servletConfig) {
+ // Get the proxy host
+ String stringProxyHostNew = servletConfig.getInitParameter("proxyHost");
+ if (stringProxyHostNew != null && stringProxyHostNew.length() > 0) {
+ this.setProxyHost(stringProxyHostNew);
+ }
+ // Get the proxy port if specified
+ String stringProxyPortNew = servletConfig.getInitParameter("proxyPort");
+ if (stringProxyPortNew != null && stringProxyPortNew.length() > 0) {
+ this.setProxyPort(Integer.parseInt(stringProxyPortNew));
+ }
+ // Get the proxy path if specified
+ String stringProxyPathNew = servletConfig.getInitParameter("proxyPath");
+ if (stringProxyPathNew != null && stringProxyPathNew.length() > 0) {
+ this.setProxyPath(stringProxyPathNew);
+ }
+ // Get the maximum file upload size if specified
+ String stringMaxFileUploadSize = servletConfig.getInitParameter("maxFileUploadSize");
+ if (stringMaxFileUploadSize != null && stringMaxFileUploadSize.length() > 0) {
+ this.setMaxFileUploadSize(Integer.parseInt(stringMaxFileUploadSize));
+ }
+ }
+
+ /**
+ * Performs an HTTP GET request
+ * @param httpServletRequest The {@link HttpServletRequest} object passed
+ * in by the servlet engine representing the
+ * client request to be proxied
+ * @param httpServletResponse The {@link HttpServletResponse} object by which
+ * we can send a proxied response to the client
+ */
+ public void doGet(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse)
+ throws IOException, ServletException {
+ // Create a GET request
+ String destinationUrl = this.getProxyURL(httpServletRequest);
+ debug("GET Request URL: " + httpServletRequest.getRequestURL(),
+ "Destination URL: " + destinationUrl);
+ GetMethod getMethodProxyRequest = new GetMethod(destinationUrl);
+ // Forward the request headers
+ setProxyRequestHeaders(httpServletRequest, getMethodProxyRequest);
+ setProxyRequestCookies(httpServletRequest, getMethodProxyRequest);
+ // Execute the proxy request
+ this.executeProxyRequest(getMethodProxyRequest, httpServletRequest, httpServletResponse);
+ }
+
+ /**
+ * Performs an HTTP POST request
+ * @param httpServletRequest The {@link HttpServletRequest} object passed
+ * in by the servlet engine representing the
+ * client request to be proxied
+ * @param httpServletResponse The {@link HttpServletResponse} object by which
+ * we can send a proxied response to the client
+ */
+ public void doPost(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse)
+ throws IOException, ServletException {
+ // Create a standard POST request
+ String contentType = httpServletRequest.getContentType();
+ String destinationUrl = this.getProxyURL(httpServletRequest);
+ debug("POST Request URL: " + httpServletRequest.getRequestURL(),
+ " Content Type: " + contentType,
+ " Destination URL: " + destinationUrl);
+ PostMethod postMethodProxyRequest = new PostMethod(destinationUrl);
+ // Forward the request headers
+ setProxyRequestHeaders(httpServletRequest, postMethodProxyRequest);
+ setProxyRequestCookies(httpServletRequest, postMethodProxyRequest);
+ // Check if this is a mulitpart (file upload) POST
+ if (ServletFileUpload.isMultipartContent(httpServletRequest)) {
+ this.handleMultipartPost(postMethodProxyRequest, httpServletRequest);
+ } else {
+ if (contentType == null || PostMethod.FORM_URL_ENCODED_CONTENT_TYPE.equals(contentType)) {
+ this.handleStandardPost(postMethodProxyRequest, httpServletRequest);
+ } else {
+ this.handleContentPost(postMethodProxyRequest, httpServletRequest);
+ }
+ }
+ // Execute the proxy request
+ this.executeProxyRequest(postMethodProxyRequest, httpServletRequest, httpServletResponse);
+ }
+
+ /**
+ * Sets up the given {@link PostMethod} to send the same multipart POST
+ * data as was sent in the given {@link HttpServletRequest}
+ * @param postMethodProxyRequest The {@link PostMethod} that we are
+ * configuring to send a multipart POST request
+ * @param httpServletRequest The {@link HttpServletRequest} that contains
+ * the mutlipart POST data to be sent via the {@link PostMethod}
+ */
+ @SuppressWarnings("unchecked")
+ private void handleMultipartPost(PostMethod postMethodProxyRequest, HttpServletRequest httpServletRequest)
+ throws ServletException {
+ // Create a factory for disk-based file items
+ DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory();
+ // Set factory constraints
+ diskFileItemFactory.setSizeThreshold(this.getMaxFileUploadSize());
+ diskFileItemFactory.setRepository(FILE_UPLOAD_TEMP_DIRECTORY);
+ // Create a new file upload handler
+ ServletFileUpload servletFileUpload = new ServletFileUpload(diskFileItemFactory);
+ // Parse the request
+ try {
+ // Get the multipart items as a list
+ List<FileItem> listFileItems = (List<FileItem>) servletFileUpload.parseRequest(httpServletRequest);
+ // Create a list to hold all of the parts
+ List<Part> listParts = new ArrayList<Part>();
+ // Iterate the multipart items list
+ for (FileItem fileItemCurrent : listFileItems) {
+ // If the current item is a form field, then create a string part
+ if (fileItemCurrent.isFormField()) {
+ StringPart stringPart = new StringPart(
+ fileItemCurrent.getFieldName(), // The field name
+ fileItemCurrent.getString() // The field value
+ );
+ // Add the part to the list
+ listParts.add(stringPart);
+ } else {
+ // The item is a file upload, so we create a FilePart
+ FilePart filePart = new FilePart(
+ fileItemCurrent.getFieldName(), // The field name
+ new ByteArrayPartSource(
+ fileItemCurrent.getName(), // The uploaded file name
+ fileItemCurrent.get() // The uploaded file contents
+ ));
+ // Add the part to the list
+ listParts.add(filePart);
+ }
+ }
+ MultipartRequestEntity multipartRequestEntity = new MultipartRequestEntity(
+ listParts.toArray(new Part[]{}),
+ postMethodProxyRequest.getParams());
+ postMethodProxyRequest.setRequestEntity(multipartRequestEntity);
+ // The current content-type header (received from the client) IS of
+ // type "multipart/form-data", but the content-type header also
+ // contains the chunk boundary string of the chunks. Currently, this
+ // header is using the boundary of the client request, since we
+ // blindly copied all headers from the client request to the proxy
+ // request. However, we are creating a new request with a new chunk
+ // boundary string, so it is necessary that we re-set the
+ // content-type string to reflect the new chunk boundary string
+ postMethodProxyRequest.setRequestHeader(STRING_CONTENT_TYPE_HEADER_NAME, multipartRequestEntity.getContentType());
+ } catch (FileUploadException fileUploadException) {
+ throw new ServletException(fileUploadException);
+ }
+ }
+
+ /**
+ * Sets up the given {@link PostMethod} to send the same standard POST
+ * data as was sent in the given {@link HttpServletRequest}
+ * @param postMethodProxyRequest The {@link PostMethod} that we are
+ * configuring to send a standard POST request
+ * @param httpServletRequest The {@link HttpServletRequest} that contains
+ * the POST data to be sent via the {@link PostMethod}
+ */
+ @SuppressWarnings("unchecked")
+ private void handleStandardPost(PostMethod postMethodProxyRequest, HttpServletRequest httpServletRequest) {
+ // Get the client POST data as a Map
+ Map<String, String[]> mapPostParameters = (Map<String, String[]>) httpServletRequest.getParameterMap();
+ // Create a List to hold the NameValuePairs to be passed to the PostMethod
+ List<NameValuePair> listNameValuePairs = new ArrayList<NameValuePair>();
+ // Iterate the parameter names
+ for (String stringParameterName : mapPostParameters.keySet()) {
+ // Iterate the values for each parameter name
+ String[] stringArrayParameterValues = mapPostParameters.get(stringParameterName);
+ for (String stringParamterValue : stringArrayParameterValues) {
+ // Create a NameValuePair and store in list
+ NameValuePair nameValuePair = new NameValuePair(stringParameterName, stringParamterValue);
+ listNameValuePairs.add(nameValuePair);
+ }
+ }
+ // Set the proxy request POST data
+ postMethodProxyRequest.setRequestBody(listNameValuePairs.toArray(new NameValuePair[]{}));
+ }
+
+ /**
+ * Sets up the given {@link PostMethod} to send the same content POST
+ * data (JSON, XML, etc.) as was sent in the given {@link HttpServletRequest}
+ * @param postMethodProxyRequest The {@link PostMethod} that we are
+ * configuring to send a standard POST request
+ * @param httpServletRequest The {@link HttpServletRequest} that contains
+ * the POST data to be sent via the {@link PostMethod}
+ */
+ private void handleContentPost(PostMethod postMethodProxyRequest, HttpServletRequest httpServletRequest) throws IOException, ServletException {
+ StringBuilder content = new StringBuilder();
+ BufferedReader reader = httpServletRequest.getReader();
+ for (;;) {
+ String line = reader.readLine();
+ if (line == null) break;
+ content.append(line);
+ }
+
+ String contentType = httpServletRequest.getContentType();
+ String postContent = content.toString();
+
+ if (contentType.startsWith("text/x-gwt-rpc")) {
+ String clientHost = httpServletRequest.getLocalName();
+ if (clientHost.equals("127.0.0.1")) {
+ clientHost = "localhost";
+ }
+
+ int clientPort = httpServletRequest.getLocalPort();
+ String clientUrl = clientHost + ((clientPort != 80) ? ":" + clientPort : "");
+ String serverUrl = stringProxyHost + ((intProxyPort != 80) ? ":" + intProxyPort : "") + httpServletRequest.getServletPath();
+ //debug("Replacing client (" + clientUrl + ") with server (" + serverUrl + ")");
+ postContent = postContent.replace(clientUrl , serverUrl);
+ }
+
+ String encoding = httpServletRequest.getCharacterEncoding();
+ debug("POST Content Type: " + contentType + " Encoding: " + encoding,
+ "Content: " + postContent);
+ StringRequestEntity entity;
+ try {
+ entity = new StringRequestEntity(postContent, contentType, encoding);
+ } catch (UnsupportedEncodingException e) {
+ throw new ServletException(e);
+ }
+ // Set the proxy request POST data
+ postMethodProxyRequest.setRequestEntity(entity);
+ }
+
+ /**
+ * Executes the {@link HttpMethod} passed in and sends the proxy response
+ * back to the client via the given {@link HttpServletResponse}
+ * @param httpMethodProxyRequest An object representing the proxy request to be made
+ * @param httpServletResponse An object by which we can send the proxied
+ * response back to the client
+ * @throws IOException Can be thrown by the {@link HttpClient}.executeMethod
+ * @throws ServletException Can be thrown to indicate that another error has occurred
+ */
+ private void executeProxyRequest(
+ HttpMethod httpMethodProxyRequest,
+ HttpServletRequest httpServletRequest,
+ HttpServletResponse httpServletResponse)
+ throws IOException, ServletException {
+ // Create a default HttpClient
+ HttpClient httpClient = new HttpClient();
+ httpMethodProxyRequest.setFollowRedirects(false);
+ // Execute the request
+ int intProxyResponseCode = httpClient.executeMethod(httpMethodProxyRequest);
+ String response = httpMethodProxyRequest.getResponseBodyAsString();
+
+ // Check if the proxy response is a redirect
+ // The following code is adapted from org.tigris.noodle.filters.CheckForRedirect
+ // Hooray for open source software
+ if (intProxyResponseCode >= HttpServletResponse.SC_MULTIPLE_CHOICES /* 300 */ && intProxyResponseCode < HttpServletResponse.SC_NOT_MODIFIED /* 304 */) {
+ String stringStatusCode = Integer.toString(intProxyResponseCode);
+ String stringLocation = httpMethodProxyRequest.getResponseHeader(STRING_LOCATION_HEADER).getValue();
+ if (stringLocation == null) {
+ throw new ServletException("Received status code: " + stringStatusCode + " but no " + STRING_LOCATION_HEADER + " header was found in the response");
+ }
+ // Modify the redirect to go to this proxy servlet rather that the proxied host
+ String stringMyHostName = httpServletRequest.getServerName();
+ if (httpServletRequest.getServerPort() != 80) {
+ stringMyHostName += ":" + httpServletRequest.getServerPort();
+ }
+ stringMyHostName += httpServletRequest.getContextPath();
+ if (followRedirects) {
+ if (stringLocation.contains("jsessionid")) {
+ Cookie cookie = new Cookie("JSESSIONID", stringLocation.substring(stringLocation.indexOf("jsessionid=") + 11));
+ cookie.setPath("/");
+ httpServletResponse.addCookie(cookie);
+ //debug("redirecting: set jessionid (" + cookie.getValue() + ") cookie from URL");
+ } else if (httpMethodProxyRequest.getResponseHeader("Set-Cookie") != null) {
+ Header header = httpMethodProxyRequest.getResponseHeader("Set-Cookie");
+ String[] cookieDetails = header.getValue().split(";");
+ String[] nameValue = cookieDetails[0].split("=");
+
+ Cookie cookie = new Cookie(nameValue[0], nameValue[1]);
+ cookie.setPath("/");
+ //debug("redirecting: setting cookie: " + cookie.getName() + ":" + cookie.getValue() + " on " + cookie.getPath());
+ httpServletResponse.addCookie(cookie);
+ }
+ httpServletResponse.sendRedirect(stringLocation.replace(getProxyHostAndPort() + this.getProxyPath(), stringMyHostName));
+ return;
+ }
+ } else if (intProxyResponseCode == HttpServletResponse.SC_NOT_MODIFIED) {
+ // 304 needs special handling. See:
+ // http://www.ics.uci.edu/pub/ietf/http/rfc1945.html#Code304
+ // We get a 304 whenever passed an 'If-Modified-Since'
+ // header and the data on disk has not changed; server
+ // responds w/ a 304 saying I'm not going to send the
+ // body because the file has not changed.
+ httpServletResponse.setIntHeader(STRING_CONTENT_LENGTH_HEADER_NAME, 0);
+ httpServletResponse.setStatus(HttpServletResponse.SC_NOT_MODIFIED);
+ return;
+ }
+
+ // Pass the response code back to the client
+ httpServletResponse.setStatus(intProxyResponseCode);
+
+ // Pass response headers back to the client
+ Header[] headerArrayResponse = httpMethodProxyRequest.getResponseHeaders();
+ for (Header header : headerArrayResponse) {
+ if (header.getName().equals("Transfer-Encoding") && header.getValue().equals("chunked") ||
+ header.getName().equals("Content-Encoding") && header.getValue().equals("gzip") || // don't copy gzip header
+ header.getName().equals("WWW-Authenticate")) { // don't copy WWW-Authenticate header so browser doesn't prompt on failed basic auth
+ // proxy servlet does not support chunked encoding
+ } else {
+ httpServletResponse.setHeader(header.getName(), header.getValue());
+ }
+ }
+
+ List<Header> responseHeaders = Arrays.asList(headerArrayResponse);
+
+ if (isBodyParameterGzipped(responseHeaders)) {
+ debug("GZipped: true");
+ if (!followRedirects && intProxyResponseCode == HttpServletResponse.SC_MOVED_TEMPORARILY) {
+ response = httpMethodProxyRequest.getResponseHeader(STRING_LOCATION_HEADER).getValue();
+ httpServletResponse.setStatus(HttpServletResponse.SC_OK);
+ intProxyResponseCode = HttpServletResponse.SC_OK;
+ httpServletResponse.setHeader(STRING_LOCATION_HEADER, response);
+ } else {
+ response = new String(ungzip(httpMethodProxyRequest.getResponseBody()));
+ }
+ httpServletResponse.setContentLength(response.length());
+ }
+
+ // Send the content to the client
+ debug("Received status code: " + intProxyResponseCode,
+ "Response: " + response);
+
+ httpServletResponse.getWriter().write(response);
+ }
+
+
+ /**
+ * The response body will be assumed to be gzipped if the GZIP header has been set.
+ *
+ * @param responseHeaders of response headers
+ * @return true if the body is gzipped
+ */
+ private boolean isBodyParameterGzipped(List<Header> responseHeaders) {
+ for (Header header : responseHeaders) {
+ if (header.getValue().equals("gzip")) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ * A highly performant ungzip implementation. Do not refactor this without taking new timings.
+ * See ElementTest in ehcache for timings
+ *
+ * @param gzipped the gzipped content
+ * @return an ungzipped byte[]
+ * @throws java.io.IOException when something bad happens
+ */
+ private byte[] ungzip(final byte[] gzipped) throws IOException {
+ final GZIPInputStream inputStream = new GZIPInputStream(new ByteArrayInputStream(gzipped));
+ ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(gzipped.length);
+ final byte[] buffer = new byte[FOUR_KB];
+ int bytesRead = 0;
+ while (bytesRead != -1) {
+ bytesRead = inputStream.read(buffer, 0, FOUR_KB);
+ if (bytesRead != -1) {
+ byteArrayOutputStream.write(buffer, 0, bytesRead);
+ }
+ }
+ byte[] ungzipped = byteArrayOutputStream.toByteArray();
+ inputStream.close();
+ byteArrayOutputStream.close();
+ return ungzipped;
+ }
+
+ public String getServletInfo() {
+ return "GWT Proxy Servlet";
+ }
+
+ /**
+ * Retrieves all of the headers from the servlet request and sets them on
+ * the proxy request
+ *
+ * @param httpServletRequest The request object representing the client's
+ * request to the servlet engine
+ * @param httpMethodProxyRequest The request that we are about to send to
+ * the proxy host
+ */
+ @SuppressWarnings("unchecked")
+ private void setProxyRequestHeaders(HttpServletRequest httpServletRequest, HttpMethod httpMethodProxyRequest) {
+ // Get an Enumeration of all of the header names sent by the client
+ Enumeration enumerationOfHeaderNames = httpServletRequest.getHeaderNames();
+ while (enumerationOfHeaderNames.hasMoreElements()) {
+ String stringHeaderName = (String) enumerationOfHeaderNames.nextElement();
+ if (stringHeaderName.equalsIgnoreCase(STRING_CONTENT_LENGTH_HEADER_NAME)) {
+ continue;
+ }
+ // As per the Java Servlet API 2.5 documentation:
+ // Some headers, such as Accept-Language can be sent by clients
+ // as several headers each with a different value rather than
+ // sending the header as a comma separated list.
+ // Thus, we get an Enumeration of the header values sent by the client
+ Enumeration enumerationOfHeaderValues = httpServletRequest.getHeaders(stringHeaderName);
+ while (enumerationOfHeaderValues.hasMoreElements()) {
+ String stringHeaderValue = (String) enumerationOfHeaderValues.nextElement();
+ // In case the proxy host is running multiple virtual servers,
+ // rewrite the Host header to ensure that we get content from
+ // the correct virtual server
+ if (stringHeaderName.equalsIgnoreCase(STRING_HOST_HEADER_NAME)) {
+ stringHeaderValue = getProxyHostAndPort();
+ }
+ Header header = new Header(stringHeaderName, stringHeaderValue);
+ // Set the same header on the proxy request
+ httpMethodProxyRequest.setRequestHeader(header);
+ }
+ }
+ }
+
+ /**
+ * Retrieves all of the cookies from the servlet request and sets them on
+ * the proxy request
+ *
+ * @param httpServletRequest The request object representing the client's
+ * request to the servlet engine
+ * @param httpMethodProxyRequest The request that we are about to send to
+ * the proxy host
+ */
+ @SuppressWarnings("unchecked")
+ private void setProxyRequestCookies(HttpServletRequest httpServletRequest, HttpMethod httpMethodProxyRequest) {
+ // Get an array of all of all the cookies sent by the client
+ Cookie[] cookies = httpServletRequest.getCookies();
+ if (cookies == null) {
+ return;
+ }
+
+ for (Cookie cookie : cookies) {
+ cookie.setDomain(stringProxyHost);
+ cookie.setPath(httpServletRequest.getServletPath());
+ httpMethodProxyRequest.setRequestHeader("Cookie", cookie.getName() + "=" + cookie.getValue() + "; Path=" + cookie.getPath());
+ }
+ }
+
+ // Accessors
+ private String getProxyURL(HttpServletRequest httpServletRequest) {
+ // Set the protocol to HTTP
+ String protocol = (isSecure) ? "https://" : "http://";
+ String stringProxyURL = protocol + this.getProxyHostAndPort();
+
+ // simply use whatever servlet path that was part of the request
+ // as opposed to getting a preset/configurable proxy path
+ if (!removePrefix) {
+ stringProxyURL += httpServletRequest.getServletPath();
+ }
+ stringProxyURL += "/";
+
+ // Handle the path given to the servlet
+ String pathInfo = httpServletRequest.getPathInfo();
+ if (pathInfo != null && pathInfo.startsWith("/")) {
+ if (stringProxyURL != null && stringProxyURL.endsWith("/")) {
+ // avoid double '/'
+ stringProxyURL += pathInfo.substring(1);
+ }
+ } else {
+ stringProxyURL += httpServletRequest.getPathInfo();
+ }
+ // Handle the query string
+ if (httpServletRequest.getQueryString() != null) {
+ stringProxyURL += "?" + httpServletRequest.getQueryString();
+ }
+
+ return stringProxyURL;
+ }
+
+ private String getProxyHostAndPort() {
+ if (this.getProxyPort() == 80) {
+ return this.getProxyHost();
+ } else {
+ return this.getProxyHost() + ":" + this.getProxyPort();
+ }
+ }
+
+ protected String getProxyHost() {
+ return this.stringProxyHost;
+ }
+
+ protected void setProxyHost(String stringProxyHostNew) {
+ this.stringProxyHost = stringProxyHostNew;
+ }
+
+ protected int getProxyPort() {
+ return this.intProxyPort;
+ }
+
+ protected void setSecure(boolean secure) {
+ this.isSecure = secure;
+ }
+
+ protected void setFollowRedirects(boolean followRedirects) {
+ this.followRedirects = followRedirects;
+ }
+
+ protected void setProxyPort(int intProxyPortNew) {
+ this.intProxyPort = intProxyPortNew;
+ }
+
+ protected String getProxyPath() {
+ return this.stringProxyPath;
+ }
+
+ protected void setProxyPath(String stringProxyPathNew) {
+ this.stringProxyPath = stringProxyPathNew;
+ }
+
+ protected void setRemovePrefix(boolean removePrefix) {
+ this.removePrefix = removePrefix;
+ }
+
+ protected int getMaxFileUploadSize() {
+ return this.intMaxFileUploadSize;
+ }
+
+ protected void setMaxFileUploadSize(int intMaxFileUploadSizeNew) {
+ this.intMaxFileUploadSize = intMaxFileUploadSizeNew;
+ }
+
+ private void debug(String ... msg) {
+ for (String m : msg) {
+ System.out.println("[DEBUG] " + m);
+ }
+ }
+}
\ No newline at end of file
Modified: bpm-console/branches/hbraun/gui/war/src/main/resources/org/jboss/bpm/console/Application.gwt.xml
===================================================================
--- bpm-console/branches/hbraun/gui/war/src/main/resources/org/jboss/bpm/console/Application.gwt.xml 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/gui/war/src/main/resources/org/jboss/bpm/console/Application.gwt.xml 2009-10-26 09:36:02 UTC (rev 855)
@@ -55,7 +55,9 @@
<entry-point class="org.jboss.bpm.console.client.Application" />
<servlet path="/xhp" class="jmaki.xhp.XmlHttpProxyServlet"/>
-
+ <servlet path="/proxy" class="org.jboss.bpm.console.server.ProxyServlet"/>
+ <servlet path="/rpcProcess" class="org.jboss.bpm.console.server.svc.ProcessMgmtServiceImpl" />
+
<!-- Specify a css to load into your gwt application -->
<stylesheet src='console.css' />
Modified: bpm-console/branches/hbraun/gui/war/src/main/webapp/WEB-INF/web.xml
===================================================================
--- bpm-console/branches/hbraun/gui/war/src/main/webapp/WEB-INF/web.xml 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/gui/war/src/main/webapp/WEB-INF/web.xml 2009-10-26 09:36:02 UTC (rev 855)
@@ -1,23 +1,25 @@
<!DOCTYPE web-app PUBLIC
- "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
- "http://java.sun.com/dtd/web-app_2_3.dtd" >
+ "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
+ "http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
- <display-name>Archetype Created Web Application</display-name>
+ <display-name>BPM Console</display-name>
- <!--servlet>
- <servlet-name>com.jsos.httpproxy.HttpProxyServlet/org.jboss.bpm.console.Application/proxy</servlet-name>
- <servlet-class>com.jsos.httpproxy.HttpProxyServlet</servlet-class>
- <init-param>
- <param-name>host</param-name>
- <param-value>http://localhost:8080/</param-value>
- </init-param>
- </servlet>
+ <!--servlet>
+ <servlet-name>proxy</servlet-name>
+ <servlet-class>org.jboss.bpm.console.server.ProxyServlet</servlet-class>
+ <init-param>
+ <param-name>proxyHost</param-name>
+ <param-value>localhost</param-value>
+ </init-param>
+ <init-param>
+ <param-name>proxyPort</param-name>
+ <param-value>8080</param-value>
+ </init-param>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>proxy</servlet-name>
+ <url-pattern>/org.jboss.bpm.console.Application/proxy</url-pattern>
+ </servlet-mapping-->
- <servlet-mapping>
- <servlet-name>com.jsos.httpproxy.HttpProxyServlet/org.jboss.bpm.console.Application/proxy</servlet-name>
- <url-pattern>/org.jboss.bpm.console.Application/proxy</url-pattern>
- </servlet-mapping-->
-
-
</web-app>
\ No newline at end of file
Modified: bpm-console/branches/hbraun/server/war/server-war.iml
===================================================================
--- bpm-console/branches/hbraun/server/war/server-war.iml 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/server/war/server-war.iml 2009-10-26 09:36:02 UTC (rev 855)
@@ -10,6 +10,7 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="module" module-name="shared-rpc" />
<orderEntry type="module" module-name="bpmc-toplevel" />
<orderEntry type="module-library">
<library name="M2 Dep: org.slf4j:slf4j-simple:jar:1.5.2:compile">
@@ -192,15 +193,6 @@
</library>
</orderEntry>
<orderEntry type="module-library">
- <library name="M2 Dep: com.google.gwt:gwt-servlet:jar:1.5.3:runtime">
- <CLASSES>
- <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/com/google/gwt/gwt-servlet/1.5.3/gwt-servlet-1.5.3.jar!/" />
- </CLASSES>
- <JAVADOC />
- <SOURCES />
- </library>
- </orderEntry>
- <orderEntry type="module-library">
<library name="M2 Dep: javassist:javassist:jar:3.6.0.GA:compile">
<CLASSES>
<root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/javassist/javassist/3.6.0.GA/javassist-3.6.0.GA.jar!/" />
@@ -427,6 +419,15 @@
<SOURCES />
</library>
</orderEntry>
+ <orderEntry type="module-library">
+ <library name="M2 Dep: com.google.gwt:gwt-servlet:jar:1.5.3:runtime">
+ <CLASSES>
+ <root url="jar://$MODULE_DIR$/../../../../../../../.m2/repository/com/google/gwt/gwt-servlet/1.5.3/gwt-servlet-1.5.3.jar!/" />
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
<orderEntryProperties />
</component>
</module>
Modified: bpm-console/branches/hbraun/server/war/src/main/webapp/WEB-INF/web.xml
===================================================================
--- bpm-console/branches/hbraun/server/war/src/main/webapp/WEB-INF/web.xml 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/server/war/src/main/webapp/WEB-INF/web.xml 2009-10-26 09:36:02 UTC (rev 855)
@@ -42,11 +42,22 @@
</servlet-class>
</servlet>
+ <servlet>
+ <servlet-name>rpcProcess</servlet-name>
+ <servlet-class>org.jboss.bpm.console.server.svc.ProcessMgmtServiceImpl</servlet-class>
+ </servlet>
+
<servlet-mapping>
<servlet-name>Resteasy</servlet-name>
<url-pattern>/rs/*</url-pattern>
</servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>rpcProcess</servlet-name>
+ <url-pattern>/rpc/rpcProcess</url-pattern>
+ </servlet-mapping>
+
<security-constraint>
<web-resource-collection>
<web-resource-name>Resteasy</web-resource-name>
Modified: bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/ProcessDefinitionRef.java
===================================================================
--- bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/ProcessDefinitionRef.java 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/ProcessDefinitionRef.java 2009-10-26 09:36:02 UTC (rev 855)
@@ -23,12 +23,13 @@
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
+import java.io.Serializable;
/**
* @author Heiko.Braun <heiko.braun(a)jboss.com>
*/
@XmlRootElement(name="processDefinition")
-public class ProcessDefinitionRef
+public class ProcessDefinitionRef implements Serializable
{
private String id;
Modified: bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/ProcessDefinitionRefWrapper.java
===================================================================
--- bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/ProcessDefinitionRefWrapper.java 2009-10-26 09:29:23 UTC (rev 854)
+++ bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/ProcessDefinitionRefWrapper.java 2009-10-26 09:36:02 UTC (rev 855)
@@ -24,12 +24,13 @@
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import java.util.List;
+import java.io.Serializable;
/**
* @author Heiko.Braun <heiko.braun(a)jboss.com>
*/
@XmlRootElement(name = "wrapper")
-public class ProcessDefinitionRefWrapper
+public class ProcessDefinitionRefWrapper implements Serializable
{
List<ProcessDefinitionRef> definitions;
Added: bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/svc/ProcessMgmtService.java
===================================================================
--- bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/svc/ProcessMgmtService.java (rev 0)
+++ bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/svc/ProcessMgmtService.java 2009-10-26 09:36:02 UTC (rev 855)
@@ -0,0 +1,37 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.console.client.model.svc;
+
+import com.google.gwt.user.client.rpc.RemoteService;
+import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
+import org.jboss.bpm.console.client.model.ProcessDefinitionRef;
+
+import java.util.List;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+@RemoteServiceRelativePath("rpcProcess")
+public interface ProcessMgmtService extends RemoteService
+{
+ List<ProcessDefinitionRef> getProcessDefinitions();
+}
Added: bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/svc/ProcessMgmtServiceAsync.java
===================================================================
--- bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/svc/ProcessMgmtServiceAsync.java (rev 0)
+++ bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/client/model/svc/ProcessMgmtServiceAsync.java 2009-10-26 09:36:02 UTC (rev 855)
@@ -0,0 +1,34 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.console.client.model.svc;
+
+import com.google.gwt.user.client.rpc.AsyncCallback;
+import com.google.gwt.user.client.rpc.RemoteService;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public interface ProcessMgmtServiceAsync extends RemoteService
+{
+ void getProcessDefinitions(AsyncCallback async);
+}
+
Added: bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/server/svc/ProcessMgmtServiceImpl.java
===================================================================
--- bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/server/svc/ProcessMgmtServiceImpl.java (rev 0)
+++ bpm-console/branches/hbraun/shared/rpc/src/main/java/org/jboss/bpm/console/server/svc/ProcessMgmtServiceImpl.java 2009-10-26 09:36:02 UTC (rev 855)
@@ -0,0 +1,49 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.console.server.svc;
+
+import org.jboss.bpm.console.client.model.svc.ProcessMgmtService;
+import org.jboss.bpm.console.client.model.ProcessDefinitionRef;
+import com.google.gwt.user.server.rpc.RemoteServiceServlet;
+
+import java.util.List;
+import java.util.ArrayList;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class ProcessMgmtServiceImpl extends RemoteServiceServlet
+ implements ProcessMgmtService
+{
+
+ public List<ProcessDefinitionRef> getProcessDefinitions()
+ {
+ List<ProcessDefinitionRef> result = new ArrayList<ProcessDefinitionRef>();
+
+ for(int i=0; i<20; i++)
+ {
+ result.add( new ProcessDefinitionRef("gwt-rpc-test", "some process", i));
+ }
+
+ return result;
+ }
+}
14 years, 7 months
Overlord SVN: r854 - bpm-console/branches.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2009-10-26 05:29:23 -0400 (Mon, 26 Oct 2009)
New Revision: 854
Added:
bpm-console/branches/hbraun/
Log:
start serialization work
Copied: bpm-console/branches/hbraun (from rev 853, bpm-console/trunk)
14 years, 7 months
Overlord SVN: r853 - bpm-console/branches.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2009-10-26 05:28:14 -0400 (Mon, 26 Oct 2009)
New Revision: 853
Removed:
bpm-console/branches/hbraun/
Log:
rm user branch
14 years, 7 months
Overlord SVN: r852 - bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2009-10-23 16:25:26 -0400 (Fri, 23 Oct 2009)
New Revision: 852
Modified:
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java
Log:
Fix NPE in task view
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java 2009-10-23 10:01:38 UTC (rev 851)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java 2009-10-23 20:25:26 UTC (rev 852)
@@ -262,7 +262,7 @@
{
this.identity = identity;
this.cachedTasks = tasks;
- pagingPanel.reset();
+ if(isInitialized())pagingPanel.reset();
renderUpdate();
}
14 years, 7 months
Overlord SVN: r851 - in bpm-console/trunk: gui/war/src/main/java/org/jboss/bpm/console/client and 1 other directories.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2009-10-23 06:01:38 -0400 (Fri, 23 Oct 2009)
New Revision: 851
Modified:
bpm-console/trunk/BPMC.iws
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/PreferencesView.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/SettingsEditor.java
bpm-console/trunk/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css
Log:
Cleanup settings layout
Modified: bpm-console/trunk/BPMC.iws
===================================================================
--- bpm-console/trunk/BPMC.iws 2009-10-23 09:27:50 UTC (rev 850)
+++ bpm-console/trunk/BPMC.iws 2009-10-23 10:01:38 UTC (rev 851)
@@ -216,7 +216,46 @@
</component>
<component name="FileColors" enabled="false" enabledForTabs="false" />
<component name="FileEditorManager">
- <leaf />
+ <leaf>
+ <file leaf-file-name="SettingsEditor.java" pinned="false" current="true" current-in-tab="true">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/SettingsEditor.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="123" column="30" selection-start="3747" selection-end="3747" vertical-scroll-proportion="0.48899755">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="console.css" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="337" column="35" selection-start="5200" selection-end="5200" vertical-scroll-proportion="0.6926771">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="ProcessEditor.java" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/ProcessEditor.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="100" column="60" selection-start="3634" selection-end="3669" vertical-scroll-proportion="0.52100843">
+ <folding>
+ <element signature="class#2386:3598" expanded="false" />
+ </folding>
+ </state>
+ </provider>
+ </entry>
+ </file>
+ <file leaf-file-name="PreferencesView.java" pinned="false" current="false" current-in-tab="false">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/PreferencesView.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="40" column="13" selection-start="1690" selection-end="1690" vertical-scroll-proportion="0.15647922">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </file>
+ </leaf>
</component>
<component name="FindManager">
<FindUsagesManager>
@@ -762,6 +801,56 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="BPMC.ipr" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="gui-war" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
<option name="myItemId" value="PsiDirectory:$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/engine" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
@@ -1084,13 +1173,13 @@
</component>
<component name="ToolWindowManager">
<frame x="328" y="52" width="1278" height="980" extended-state="0" />
- <editor active="false" />
+ <editor active="true" />
<layout>
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
<window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
<window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="7" />
- <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.3213995" order="0" />
+ <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.3213995" order="0" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.39290988" order="1" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.27420667" order="1" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32992035" order="8" />
@@ -1199,27 +1288,6 @@
<option name="myLastEditedConfigurable" />
</component>
<component name="editorHistoryManager">
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingCallback.java">
- <provider selected="true" editor-type-id="text-editor">
- <state line="29" column="13" selection-start="1194" selection-end="1194" vertical-scroll-proportion="0.17286915">
- <folding />
- </state>
- </provider>
- </entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css">
- <provider selected="true" editor-type-id="text-editor">
- <state line="336" column="42" selection-start="5185" selection-end="5185" vertical-scroll-proportion="0.72989196">
- <folding />
- </state>
- </provider>
- </entry>
- <entry file="jar:///Users/hbraun/.m2/repository/com/googlecode/gwtmosaic/gwt-mosaic/0.1.10/gwt-mosaic-0.1.10.jar!/org/gwt/mosaic/ui/client/Caption.class">
- <provider selected="true" editor-type-id="text-editor">
- <state line="7" column="61" selection-start="458" selection-end="458" vertical-scroll-proportion="0.12631579">
- <folding />
- </state>
- </provider>
- </entry>
<entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/LoginView.java">
<provider selected="true" editor-type-id="text-editor">
<state line="125" column="61" selection-start="3887" selection-end="3887" vertical-scroll-proportion="0.9779951">
@@ -1241,13 +1309,6 @@
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/ProcessEditor.java">
- <provider selected="true" editor-type-id="text-editor">
- <state line="154" column="68" selection-start="5081" selection-end="5143" vertical-scroll-proportion="0.70537895">
- <folding />
- </state>
- </provider>
- </entry>
<entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingPanel.java">
<provider selected="true" editor-type-id="text-editor">
<state line="121" column="52" selection-start="3130" selection-end="3130" vertical-scroll-proportion="0.62064826">
@@ -1310,6 +1371,36 @@
</state>
</provider>
</entry>
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/ProcessEditor.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="100" column="60" selection-start="3634" selection-end="3669" vertical-scroll-proportion="0.52100843">
+ <folding>
+ <element signature="class#2386:3598" expanded="false" />
+ </folding>
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/PreferencesView.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="40" column="13" selection-start="1690" selection-end="1690" vertical-scroll-proportion="0.15647922">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="337" column="35" selection-start="5200" selection-end="5200" vertical-scroll-proportion="0.6926771">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/SettingsEditor.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="123" column="30" selection-start="3747" selection-end="3747" vertical-scroll-proportion="0.48899755">
+ <folding />
+ </state>
+ </provider>
+ </entry>
</component>
</project>
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/PreferencesView.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/PreferencesView.java 2009-10-23 09:27:50 UTC (rev 850)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/PreferencesView.java 2009-10-23 10:01:38 UTC (rev 851)
@@ -29,6 +29,8 @@
import com.mvc4g.client.ViewInterface;
import org.gwt.mosaic.ui.client.layout.BoxLayout;
import org.gwt.mosaic.ui.client.layout.LayoutPanel;
+import org.gwt.mosaic.ui.client.layout.FillLayoutData;
+import org.gwt.mosaic.ui.client.CaptionLayoutPanel;
import org.jboss.bpm.console.client.common.HeaderLabel;
import java.util.List;
@@ -36,7 +38,7 @@
/**
* @author Heiko.Braun <heiko.braun(a)jboss.com>
*/
-public class PreferencesView extends LayoutPanel implements ViewInterface
+public class PreferencesView extends CaptionLayoutPanel implements ViewInterface
{
public final static String ID = PreferencesView.class.getName();
@@ -52,13 +54,15 @@
public PreferencesView()
{
- super(new BoxLayout(BoxLayout.Orientation.VERTICAL));
+ super("User Preferences");
+
+ LayoutPanel layout = new LayoutPanel(new BoxLayout(BoxLayout.Orientation.VERTICAL));
this.appContext = Registry.get(ApplicationContext.class);
- this.add(new HeaderLabel("User Preferences"));
+ //layout.add(new HeaderLabel("User Preferences"));
LayoutPanel defaultToolPanel = new LayoutPanel(new BoxLayout(BoxLayout.Orientation.HORIZONTAL));
- defaultToolPanel.setPadding(10);
+
defaultToolPanel.add(
new HTML("<b>Default Tool</b><br>" +
"Select the tool that should be loaded upon login.")
@@ -96,6 +100,8 @@
);
// parent
- this.add(defaultToolPanel);
+ layout.add(defaultToolPanel);
+
+ this.add(layout);
}
}
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/SettingsEditor.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/SettingsEditor.java 2009-10-23 09:27:50 UTC (rev 850)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/SettingsEditor.java 2009-10-23 10:01:38 UTC (rev 851)
@@ -87,55 +87,49 @@
layout();
}
- private LayoutPanel createPrefPanel()
+ private CaptionLayoutPanel createPrefPanel()
{
- final ScrollLayoutPanel layoutPanel = new ScrollLayoutPanel(
- new BoxLayout(BoxLayout.Orientation.VERTICAL)
- );
- layoutPanel.setPadding(5);
-
PreferencesView prefView = new PreferencesView();
- layoutPanel.add(prefView);
controller.addView(PreferencesView.ID, prefView);
- return layoutPanel;
+ return prefView;
}
- private LayoutPanel createSystemPanel()
+ private CaptionLayoutPanel createSystemPanel()
{
- final ScrollLayoutPanel layoutPanel = new ScrollLayoutPanel(
- new BoxLayout(BoxLayout.Orientation.VERTICAL)
- );
- layoutPanel.setPadding(10);
+ final CaptionLayoutPanel captionPanel = new CaptionLayoutPanel("System Settings");
+ LayoutPanel layoutPanel = new LayoutPanel(new BoxLayout(BoxLayout.Orientation.VERTICAL));
+
// console info
- HeaderLabel console = new HeaderLabel("Console Info");
+ Label console = new Label("Console Info");
layoutPanel.add(console, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
Grid g1 = new Grid(1,2);
- g1.setWidget(0,0, new Label("Version:"));
- g1.setWidget(0,1, new Label(Version.VERSION));
+ g1.setWidget(0,0, new HTML("Version:"));
+ g1.setWidget(0,1, new HTML(Version.VERSION));
g1.getColumnFormatter().setWidth(0, "20%");
layoutPanel.add(g1, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
// server info
- HeaderLabel server = new HeaderLabel("Server Info");
+ Label server = new Label("Server Info");
layoutPanel.add(server, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
ServerStatusView serverStatus = new ServerStatusView(appContext);
serverStatus.initialize();
Grid g2 = new Grid(1,2);
- g2.setWidget(0,0, new Label("Host:"));
- g2.setWidget(0,1, new Label(appContext.getConfig().getConsoleServerUrl()));
+ g2.setWidget(0,0, new HTML("Host:"));
+ g2.setWidget(0,1, new HTML(appContext.getConfig().getConsoleServerUrl()));
g2.getColumnFormatter().setWidth(0, "20%");
layoutPanel.add(g2, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
LayoutPanel pluginPanel = new LayoutPanel(new BoxLayout(BoxLayout.Orientation.VERTICAL));
- HeaderLabel label = new HeaderLabel("Plugins:");
+ pluginPanel.setPadding(0);
+ Label label = new Label("Plugins:");
pluginPanel.add(label);
pluginPanel.add(serverStatus);
@@ -145,7 +139,8 @@
// view and actions
super.controller.addView(ServerStatusView.ID, serverStatus);
- return layoutPanel;
+ captionPanel.add(layoutPanel);
+ return captionPanel;
}
public String getEditorId()
Modified: bpm-console/trunk/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css
===================================================================
--- bpm-console/trunk/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css 2009-10-23 09:27:50 UTC (rev 850)
+++ bpm-console/trunk/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css 2009-10-23 10:01:38 UTC (rev 851)
@@ -343,4 +343,10 @@
font-size:8px;
background-color:#dfe8f6;
border-bottom: 1px solid #bbbbbb;
+}
+
+/* mosaic overrides */
+
+.mosaic-Label {
+ font-weight:bold;
}
\ No newline at end of file
14 years, 7 months
Overlord SVN: r850 - in bpm-console/trunk: gui/war/src/main/java/org/jboss/bpm/console/client/common and 4 other directories.
by overlord-commits@lists.jboss.org
Author: heiko.braun(a)jboss.com
Date: 2009-10-23 05:27:50 -0400 (Fri, 23 Oct 2009)
New Revision: 850
Added:
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingCallback.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingPanel.java
Modified:
bpm-console/trunk/BPMC.iws
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/engine/DeploymentListView.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/engine/JobListView.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/InstanceListView.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateDefinitionsAction.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateInstancesAction.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AbstractTaskList.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/OpenTasksView.java
bpm-console/trunk/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css
Log:
BPMC-17: Paging support
Modified: bpm-console/trunk/BPMC.iws
===================================================================
--- bpm-console/trunk/BPMC.iws 2009-10-22 13:19:01 UTC (rev 849)
+++ bpm-console/trunk/BPMC.iws 2009-10-23 09:27:50 UTC (rev 850)
@@ -92,7 +92,7 @@
</component>
<component name="DebuggerManager">
<line_breakpoints>
- <breakpoint url="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/model/DTOParser.java" line="248" class="org.jboss.bpm.console.client.model.DTOParser" package="org.jboss.bpm.console.client.model">
+ <breakpoint url="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/common/IFrameWindowPanel.java" line="159" class="org.jboss.bpm.console.client.common.IFrameWindowPanel" package="org.jboss.bpm.console.client.common">
<option name="ENABLED" value="true" />
<option name="SUSPEND_POLICY" value="SuspendAll" />
<option name="LOG_ENABLED" value="false" />
@@ -105,7 +105,7 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
- <breakpoint url="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/common/IFrameWindowPanel.java" line="159" class="org.jboss.bpm.console.client.common.IFrameWindowPanel" package="org.jboss.bpm.console.client.common">
+ <breakpoint url="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java" line="264" class="org.jboss.bpm.console.client.process.DefinitionListView" package="org.jboss.bpm.console.client.process">
<option name="ENABLED" value="true" />
<option name="SUSPEND_POLICY" value="SuspendAll" />
<option name="LOG_ENABLED" value="false" />
@@ -118,7 +118,7 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
- <breakpoint url="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java" line="244" class="org.jboss.bpm.console.client.process.DefinitionListView" package="org.jboss.bpm.console.client.process">
+ <breakpoint url="file://$PROJECT_DIR$/workspace/workspace-api/src/main/java/org/jboss/bpm/console/client/ConsoleConfig.java" line="92" class="org.jboss.bpm.console.client.ConsoleConfig" package="org.jboss.bpm.console.client">
<option name="ENABLED" value="true" />
<option name="SUSPEND_POLICY" value="SuspendAll" />
<option name="LOG_ENABLED" value="false" />
@@ -131,7 +131,7 @@
<option name="CONDITION" value="" />
<option name="LOG_MESSAGE" value="" />
</breakpoint>
- <breakpoint url="file://$PROJECT_DIR$/workspace/workspace-api/src/main/java/org/jboss/bpm/console/client/ConsoleConfig.java" line="92" class="org.jboss.bpm.console.client.ConsoleConfig" package="org.jboss.bpm.console.client">
+ <breakpoint url="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/InstanceListView.java" line="177" class="Class at InstanceListView.java:177" package="org.jboss.bpm.console.client.process">
<option name="ENABLED" value="true" />
<option name="SUSPEND_POLICY" value="SuspendAll" />
<option name="LOG_ENABLED" value="false" />
@@ -216,17 +216,7 @@
</component>
<component name="FileColors" enabled="false" enabledForTabs="false" />
<component name="FileEditorManager">
- <leaf>
- <file leaf-file-name="EngineEditor.java" pinned="false" current="true" current-in-tab="true">
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/engine/EngineEditor.java">
- <provider selected="true" editor-type-id="text-editor">
- <state line="66" column="47" selection-start="2408" selection-end="2408" vertical-scroll-proportion="0.29473683">
- <folding />
- </state>
- </provider>
- </entry>
- </file>
- </leaf>
+ <leaf />
</component>
<component name="FindManager">
<FindUsagesManager>
@@ -1093,14 +1083,14 @@
</todo-panel>
</component>
<component name="ToolWindowManager">
- <frame x="374" y="56" width="1290" height="922" extended-state="0" />
- <editor active="true" />
+ <frame x="328" y="52" width="1278" height="980" extended-state="0" />
+ <editor active="false" />
<layout>
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
<window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
<window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="7" />
- <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.3182917" order="0" />
+ <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.3213995" order="0" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.39290988" order="1" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.27420667" order="1" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32992035" order="8" />
@@ -1112,9 +1102,9 @@
<window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="2" />
<window_info id="Maven" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
- <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.24878049" order="2" />
+ <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.24818695" order="2" />
<window_info id="File View" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
- <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.39290988" order="4" />
+ <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.39184597" order="4" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="0" />
<window_info id="IDEtalk Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32873562" order="8" />
@@ -1209,111 +1199,114 @@
<option name="myLastEditedConfigurable" />
</component>
<component name="editorHistoryManager">
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/report/ReportEditor.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingCallback.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="141" column="0" selection-start="4446" selection-end="4446" vertical-scroll-proportion="0.87580854">
+ <state line="29" column="13" selection-start="1194" selection-end="1194" vertical-scroll-proportion="0.17286915">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/SettingsEditor.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css">
<provider selected="true" editor-type-id="text-editor">
- <state line="171" column="47" selection-start="4897" selection-end="4897" vertical-scroll-proportion="0.85511">
+ <state line="336" column="42" selection-start="5185" selection-end="5185" vertical-scroll-proportion="0.72989196">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/MainLayout.java">
+ <entry file="jar:///Users/hbraun/.m2/repository/com/googlecode/gwtmosaic/gwt-mosaic/0.1.10/gwt-mosaic-0.1.10.jar!/org/gwt/mosaic/ui/client/Caption.class">
<provider selected="true" editor-type-id="text-editor">
- <state line="193" column="91" selection-start="6268" selection-end="6268" vertical-scroll-proportion="0.9028213">
+ <state line="7" column="61" selection-start="458" selection-end="458" vertical-scroll-proportion="0.12631579">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/common/IFrameWindowPanel.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/LoginView.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="108" column="27" selection-start="3582" selection-end="3582" vertical-scroll-proportion="0.4184492">
+ <state line="125" column="61" selection-start="3887" selection-end="3887" vertical-scroll-proportion="0.9779951">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/workspace/workspace-api/src/main/java/org/jboss/bpm/console/client/Menu.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/model/DTOParser.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="45" column="46" selection-start="1812" selection-end="1812" vertical-scroll-proportion="0.20969856">
+ <state line="271" column="38" selection-start="8886" selection-end="8886" vertical-scroll-proportion="0.6393643">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/engine/DeploymentListView.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="162" column="40" selection-start="5566" selection-end="5566" vertical-scroll-proportion="0.47058824">
+ <state line="231" column="50" selection-start="7357" selection-end="7357" vertical-scroll-proportion="0.6845966">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/server/war/src/main/java/org/jboss/bpm/console/server/EngineFacade.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/ProcessEditor.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="59" column="57" selection-start="2219" selection-end="2219" vertical-scroll-proportion="0.48645163">
+ <state line="154" column="68" selection-start="5081" selection-end="5143" vertical-scroll-proportion="0.70537895">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/server/integration/src/main/java/org/jboss/bpm/console/server/plugin/ProcessEnginePlugin.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingPanel.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="45" column="0" selection-start="1570" selection-end="1570" vertical-scroll-proportion="0.45419356">
- <folding />
+ <state line="121" column="52" selection-start="3130" selection-end="3130" vertical-scroll-proportion="0.62064826">
+ <folding>
+ <element signature="imports" expanded="true" />
+ <element signature="class#2047:2242" expanded="false" />
+ <element signature="class#2363:2547" expanded="false" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/ProcessDetailView.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/task/AbstractTaskList.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="48" column="26" selection-start="1969" selection-end="1969" vertical-scroll-proportion="-0.83157897">
+ <state line="36" column="22" selection-start="1449" selection-end="1449" vertical-scroll-proportion="0.19207683">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/engine/ResourcePanel.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/task/OpenTasksView.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="84" column="30" selection-start="2575" selection-end="2575" vertical-scroll-proportion="0.7251613">
+ <state line="209" column="31" selection-start="6845" selection-end="6865" vertical-scroll-proportion="0.41075796">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/engine/DeploymentDetailView.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="197" column="39" selection-start="6220" selection-end="6220" vertical-scroll-proportion="0.84605265">
- <folding>
- <element signature="method#onClick#0;class#2522:3433" expanded="false" />
- <element signature="class#3487:4346" expanded="false" />
- </folding>
+ <state line="78" column="51" selection-start="3017" selection-end="3017" vertical-scroll-proportion="-2.190709">
+ <folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/task/ParticipantPanel.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/task/TaskDetailView.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="71" column="38" selection-start="2530" selection-end="2530" vertical-scroll-proportion="0.64">
+ <state line="111" column="54" selection-start="3501" selection-end="3501" vertical-scroll-proportion="0.6845966">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm/console/Application.gwt.xml">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/engine/JobListView.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="10" column="55" selection-start="404" selection-end="404" vertical-scroll-proportion="0.20645161">
+ <state line="127" column="49" selection-start="4184" selection-end="4184" vertical-scroll-proportion="0.7432763">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/InstanceListView.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="300" column="14" selection-start="4533" selection-end="4533" vertical-scroll-proportion="0.58064514">
+ <state line="46" column="6" selection-start="1992" selection-end="1992" vertical-scroll-proportion="-1.4083129">
<folding />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/engine/EngineEditor.java">
+ <entry file="file://$PROJECT_DIR$/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java">
<provider selected="true" editor-type-id="text-editor">
- <state line="66" column="47" selection-start="2408" selection-end="2408" vertical-scroll-proportion="0.29473683">
- <folding />
+ <state line="163" column="30" selection-start="5079" selection-end="5354" vertical-scroll-proportion="0.9608802">
+ <folding>
+ <element signature="method#onChange#0;class#4249:4777" expanded="false" />
+ </folding>
</state>
</provider>
</entry>
Added: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingCallback.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingCallback.java (rev 0)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingCallback.java 2009-10-23 09:27:50 UTC (rev 850)
@@ -0,0 +1,31 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.console.client.common;
+
+/**
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public interface PagingCallback
+{
+ void rev();
+ void ffw();
+}
Added: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingPanel.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingPanel.java (rev 0)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/PagingPanel.java 2009-10-23 09:27:50 UTC (rev 850)
@@ -0,0 +1,148 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.console.client.common;
+
+import com.google.gwt.user.client.ui.ClickListener;
+import com.google.gwt.user.client.ui.PushButton;
+import com.google.gwt.user.client.ui.Widget;
+import org.gwt.mosaic.ui.client.Caption;
+import org.gwt.mosaic.ui.client.layout.BoxLayout;
+import org.gwt.mosaic.ui.client.layout.LayoutPanel;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Cheap paging helper
+ *
+ * @author Heiko.Braun <heiko.braun(a)jboss.com>
+ */
+public class PagingPanel extends LayoutPanel
+{
+
+ private PagingCallback callback;
+ private int limit = 12;
+ private int page = 0;
+
+ private boolean leftBounds = true;
+ private boolean rightBounds;
+
+ private PushButton revBtn;
+ private PushButton ffwBtn;
+
+ public PagingPanel(final PagingCallback callback)
+ {
+ super(new BoxLayout(BoxLayout.Orientation.HORIZONTAL));
+ setStyleName("bpm-paging-panel");
+
+ this.callback = callback;
+
+ revBtn = new PushButton(Caption.IMAGES.toolCollapseLeft().createImage(),
+ new ClickListener()
+ {
+ public void onClick(Widget widget)
+ {
+ page--;
+ rightBounds=false;
+ callback.rev();
+ }
+ }
+ );
+ this.add(revBtn);
+
+ ffwBtn = new PushButton(Caption.IMAGES.toolCollapseRight().createImage(),
+ new ClickListener()
+ {
+ public void onClick(Widget widget)
+ {
+ page++;
+ leftBounds = false;
+ callback.ffw();
+ }
+ }
+ );
+ this.add(ffwBtn);
+ }
+
+ public void reset()
+ {
+ leftBounds=true;
+ rightBounds=false;
+ page = 0;
+ }
+
+ public List trim(List tmp)
+ {
+ List trimmed = new ArrayList();
+
+ int size = tmp.size();
+ if(limit>=size)
+ {
+ trimmed = tmp;
+ rightBounds=true;
+ }
+ else
+ {
+
+ // leftbounds
+ if(page<=0)
+ {
+ page=0;
+ leftBounds=true;
+ }
+
+ int begin = 0;
+ int end = 0;
+
+ // rightbounds
+ if(page*limit>=size)
+ {
+ begin = (page-1)*limit;
+ rightBounds=true;
+ }
+ else
+ begin = page*limit;
+
+ if(begin+limit>=size)
+ {
+ end = size;
+ rightBounds=true;
+ }
+ else
+ end = begin+limit;
+
+ // select range
+ int i=0;
+ for(Object o : tmp)
+ {
+ if(i>=begin && i<end) trimmed.add(o);
+ i++;
+ }
+
+ }
+
+ revBtn.setEnabled(!leftBounds);
+ ffwBtn.setEnabled(!rightBounds);
+
+ return trimmed;
+ }
+}
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/engine/DeploymentListView.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/engine/DeploymentListView.java 2009-10-22 13:19:01 UTC (rev 849)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/engine/DeploymentListView.java 2009-10-23 09:27:50 UTC (rev 850)
@@ -25,6 +25,7 @@
import com.google.gwt.user.client.ui.ChangeListener;
import com.google.gwt.user.client.ui.ClickListener;
import com.google.gwt.user.client.ui.Widget;
+import com.google.gwt.user.client.ui.PushButton;
import com.mvc4g.client.Controller;
import com.mvc4g.client.Event;
import org.gwt.mosaic.ui.client.ListBox;
@@ -158,7 +159,7 @@
final ToolBar toolBar = new ToolBar();
toolBar.add(
- new ToolButton("Refresh", new ClickListener() {
+ new PushButton("Refresh", new ClickListener() {
public void onClick(Widget sender) {
// force loading
controller.handleEvent(
@@ -169,10 +170,9 @@
)
);
- toolBar.addSeparator();
toolBar.add(
- new ToolButton("Delete", new ClickListener() {
+ new PushButton("Delete", new ClickListener() {
public void onClick(Widget sender) {
DeploymentRef deploymentRef = getSelection();
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/engine/JobListView.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/engine/JobListView.java 2009-10-22 13:19:01 UTC (rev 849)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/engine/JobListView.java 2009-10-23 09:27:50 UTC (rev 850)
@@ -25,6 +25,7 @@
import com.google.gwt.user.client.ui.ChangeListener;
import com.google.gwt.user.client.ui.ClickListener;
import com.google.gwt.user.client.ui.Widget;
+import com.google.gwt.user.client.ui.PushButton;
import com.mvc4g.client.Controller;
import com.mvc4g.client.Event;
import org.gwt.mosaic.ui.client.ListBox;
@@ -159,7 +160,7 @@
// toolbar
final ToolBar toolBar = new ToolBar();
toolBar.add(
- new ToolButton("Refresh", new ClickListener() {
+ new PushButton("Refresh", new ClickListener() {
public void onClick(Widget sender) {
// force loading
controller.handleEvent(
@@ -170,10 +171,8 @@
)
);
- toolBar.addSeparator();
-
toolBar.add(
- new ToolButton("Execute", new ClickListener() {
+ new PushButton("Execute", new ClickListener() {
public void onClick(Widget sender) {
JobRef selection = getSelection();
if(null==selection)
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java 2009-10-22 13:19:01 UTC (rev 849)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java 2009-10-23 09:27:50 UTC (rev 850)
@@ -25,19 +25,22 @@
import com.google.gwt.user.client.ui.ChangeListener;
import com.google.gwt.user.client.ui.ClickListener;
import com.google.gwt.user.client.ui.Widget;
+import com.google.gwt.user.client.ui.PushButton;
import com.mvc4g.client.Controller;
import com.mvc4g.client.Event;
import org.gwt.mosaic.ui.client.ListBox;
import org.gwt.mosaic.ui.client.ToolBar;
import org.gwt.mosaic.ui.client.ToolButton;
-import org.gwt.mosaic.ui.client.DoubleClickListener;
+import org.gwt.mosaic.ui.client.Caption;
import org.gwt.mosaic.ui.client.layout.*;
import org.gwt.mosaic.ui.client.list.DefaultListModel;
-import org.gwt.mosaic.ui.client.list.ListModel;
import org.jboss.bpm.console.client.common.AbstractView;
+import org.jboss.bpm.console.client.common.PagingPanel;
+import org.jboss.bpm.console.client.common.PagingCallback;
import org.jboss.bpm.console.client.icons.ConsoleIconBundle;
import org.jboss.bpm.console.client.model.ProcessDefinitionRef;
+import java.util.ArrayList;
import java.util.List;
/**
@@ -61,7 +64,8 @@
private int currentFilter = FILTER_NONE;
private List<ProcessDefinitionRef> definitions = null;
-
+ private PagingPanel pagingPanel;
+
public DefinitionListView()
{
super();
@@ -82,6 +86,7 @@
{
if(!isInitialized)
{
+
definitionList = new LayoutPanel( new BoxLayout(BoxLayout.Orientation.VERTICAL));
definitionList.setPadding(0);
definitionList.setWidgetSpacing(0);
@@ -96,7 +101,7 @@
// toolbar
final ToolBar toolBar = new ToolBar();
toolBar.add(
- new ToolButton("Refresh", new ClickListener() {
+ new PushButton("Refresh", new ClickListener() {
public void onClick(Widget sender) {
// force loading
controller.handleEvent(
@@ -141,9 +146,24 @@
toolBox.add(filterPanel, new BoxLayoutData(BoxLayoutData.FillStyle.VERTICAL));
- this.definitionList.add(toolBox, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
- this.definitionList.add(listBox, new BoxLayoutData(BoxLayoutData.FillStyle.BOTH));
+ definitionList.add(toolBox, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
+ definitionList.add(listBox, new BoxLayoutData(BoxLayoutData.FillStyle.BOTH));
+ pagingPanel = new PagingPanel(
+ new PagingCallback()
+ {
+ public void rev()
+ {
+ renderFiltered();
+ }
+ public void ffw()
+ {
+ renderFiltered();
+ }
+ }
+ );
+ definitionList.add(pagingPanel,new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
+
// layout
LayoutPanel layout = new LayoutPanel(new BorderLayout());
layout.add(definitionList, new BorderLayoutData(BorderLayout.Region.CENTER));
@@ -168,7 +188,6 @@
"Name", "Version", "Suspended"
}
);
-
listBox.setCellRenderer(new ListBox.CellRenderer<ProcessDefinitionRef>() {
public void renderCell(ListBox<ProcessDefinitionRef> listBox, int row, int column,
@@ -226,7 +245,7 @@
public void update(List<ProcessDefinitionRef> definitions)
{
this.definitions = definitions;
-
+ pagingPanel.reset();
renderFiltered();
}
@@ -239,20 +258,24 @@
model.clear();
+ List<ProcessDefinitionRef> tmp = new ArrayList<ProcessDefinitionRef>();
for(ProcessDefinitionRef def : definitions)
{
if(FILTER_NONE==currentFilter)
{
- model.add(def);
+ tmp.add(def);
}
else
{
boolean showSuspended = (FILTER_SUSPENDED==currentFilter);
if(def.isSuspended()==showSuspended)
- model.add(def);
+ tmp.add(def);
}
}
+ for(ProcessDefinitionRef def : (List<ProcessDefinitionRef>)pagingPanel.trim(tmp) )
+ model.add(def);
+
if(listBox.getSelectedIndex()!=-1)
listBox.setItemSelected(listBox.getSelectedIndex(), false);
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/InstanceListView.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/InstanceListView.java 2009-10-22 13:19:01 UTC (rev 849)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/InstanceListView.java 2009-10-23 09:27:50 UTC (rev 850)
@@ -22,10 +22,7 @@
package org.jboss.bpm.console.client.process;
import com.google.gwt.core.client.GWT;
-import com.google.gwt.user.client.ui.ChangeListener;
-import com.google.gwt.user.client.ui.ClickListener;
-import com.google.gwt.user.client.ui.Widget;
-import com.google.gwt.user.client.ui.HTML;
+import com.google.gwt.user.client.ui.*;
import com.mvc4g.client.Controller;
import com.mvc4g.client.Event;
import org.gwt.mosaic.ui.client.ListBox;
@@ -35,9 +32,7 @@
import org.gwt.mosaic.ui.client.layout.*;
import org.gwt.mosaic.ui.client.list.DefaultListModel;
import org.jboss.bpm.console.client.ApplicationContext;
-import org.jboss.bpm.console.client.common.AbstractView;
-import org.jboss.bpm.console.client.common.IFrameWindowPanel;
-import org.jboss.bpm.console.client.common.IFrameWindowCallback;
+import org.jboss.bpm.console.client.common.*;
import org.jboss.bpm.console.client.icons.ConsoleIconBundle;
import org.jboss.bpm.console.client.model.ProcessDefinitionRef;
import org.jboss.bpm.console.client.model.ProcessInstanceRef;
@@ -73,6 +68,8 @@
private boolean isRiftsawInstance;
+ private PagingPanel pagingPanel;
+
public InstanceListView(ApplicationContext appContext)
{
super();
@@ -98,7 +95,7 @@
instanceList = new LayoutPanel( new BoxLayout(BoxLayout.Orientation.VERTICAL));
instanceList.setPadding(0);
instanceList.setWidgetSpacing(0);
-
+
listBox =
new ListBox<ProcessInstanceRef>(
new String[] {
@@ -151,7 +148,7 @@
final ToolBar toolBar = new ToolBar();
toolBar.add(
- new ToolButton("Refresh", new ClickListener() {
+ new PushButton("Refresh", new ClickListener() {
public void onClick(Widget sender) {
controller.handleEvent(
new Event(
@@ -164,10 +161,10 @@
)
);
- toolBar.addSeparator();
+
toolBar.add(
- new ToolButton("Start", new ClickListener()
+ new PushButton("Start", new ClickListener()
{
public void onClick(Widget sender)
{
@@ -199,7 +196,7 @@
}
);
- iframeWindow.show();
+ iframeWindow.show();
}
else
{
@@ -223,10 +220,10 @@
}}
);
- toolBar.addSeparator();
+
toolBar.add(
- new ToolButton("Terminate", new ClickListener()
+ new PushButton("Terminate", new ClickListener()
{
public void onClick(Widget sender)
{
@@ -263,10 +260,10 @@
)
);
- toolBar.addSeparator();
+
toolBar.add(
- new ToolButton("Delete", new ClickListener()
+ new PushButton("Delete", new ClickListener()
{
public void onClick(Widget sender)
{
@@ -312,20 +309,34 @@
instanceList.add(toolBox, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
instanceList.add(listBox, new BoxLayoutData(BoxLayoutData.FillStyle.BOTH));
+ pagingPanel = new PagingPanel(
+ new PagingCallback()
+ {
+ public void rev()
+ {
+ renderUpdate();
+ }
+
+ public void ffw()
+ {
+ renderUpdate();
+ }
+ }
+ );
+ instanceList.add(pagingPanel, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
+
// cached data?
if(this.cachedInstances!=null)
bindData(this.cachedInstances);
// layout
- LayoutPanel layout = new LayoutPanel(new BorderLayout());
+ LayoutPanel layout = new LayoutPanel(new BorderLayout());
layout.add(instanceList, new BorderLayoutData(BorderLayout.Region.CENTER));
// details
InstanceDetailView detailsView = new InstanceDetailView(appContext);
controller.addView(InstanceDetailView.ID, detailsView);
-
controller.addAction(UpdateInstanceDetailAction.ID, new UpdateInstanceDetailAction());
-
layout.add(detailsView, new BorderLayoutData(BorderLayout.Region.SOUTH,10,200));
this.add(layout);
@@ -334,7 +345,7 @@
}
}
-
+
public ProcessInstanceRef getSelection()
{
ProcessInstanceRef selection = null;
@@ -358,15 +369,20 @@
{
this.currentDefinition = def;
this.cachedInstances = instances;
-
+ if(isInitialized()) pagingPanel.reset();
+ renderUpdate();
+ }
+
+ private void renderUpdate()
+ {
if(isInitialized())
{
- bindData(instances);
+ bindData(this.cachedInstances);
- // clear details
+ // clear details
controller.handleEvent(
new Event(UpdateInstanceDetailAction.ID,
- new InstanceEvent(def, null)
+ new InstanceEvent(this.currentDefinition, null)
)
);
@@ -379,7 +395,8 @@
(DefaultListModel<ProcessInstanceRef>) listBox.getModel();
model.clear();
- for(ProcessInstanceRef inst : instances)
+ List<ProcessInstanceRef> list = pagingPanel.trim(instances);
+ for(ProcessInstanceRef inst : list)
{
model.add(inst);
}
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateDefinitionsAction.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateDefinitionsAction.java 2009-10-22 13:19:01 UTC (rev 849)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateDefinitionsAction.java 2009-10-23 09:27:50 UTC (rev 850)
@@ -62,6 +62,8 @@
public void handleSuccessfulResponse(final Controller controller, final Object event, Response response)
{
+ long start = System.currentTimeMillis();
+
DefinitionListView view = (DefinitionListView) controller.getView(DefinitionListView.ID);
if(view!=null) // may not be initialized (lazy)
{
@@ -69,8 +71,9 @@
List<ProcessDefinitionRef> definitions = DTOParser.parseProcessDefinitions(json);
view.update(definitions);
+
+ ConsoleLog.info("Loaded " + definitions.size() + " process definitions in " +(System.currentTimeMillis()-start)+" ms");
- ConsoleLog.info("Loaded " + definitions.size() + " process definitions");
}
}
}
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateInstancesAction.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateInstancesAction.java 2009-10-22 13:19:01 UTC (rev 849)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/UpdateInstancesAction.java 2009-10-23 09:27:50 UTC (rev 850)
@@ -65,6 +65,8 @@
public void handleSuccessfulResponse(final Controller controller, final Object event, Response response)
{
+ final long start = System.currentTimeMillis();
+
final ProcessDefinitionRef def = (ProcessDefinitionRef)event;
JSONValue json = JSONParser.parse(response.getText());
@@ -72,7 +74,7 @@
InstanceListView view = (InstanceListView) controller.getView(InstanceListView.ID);
view.update(def, instances);
- ConsoleLog.info("Loaded " + instances.size() + " process instance(s)");
+ ConsoleLog.info("Loaded " + instances.size() + " process instance(s) in "+(System.currentTimeMillis()-start)+" ms");
}
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AbstractTaskList.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AbstractTaskList.java 2009-10-22 13:19:01 UTC (rev 849)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AbstractTaskList.java 2009-10-23 09:27:50 UTC (rev 850)
@@ -41,6 +41,7 @@
protected ListBox<TaskRef> listBox;
protected boolean isInitialized;
protected String identity;
+ protected List<TaskRef> cachedTasks;
public AbstractTaskList()
{
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java 2009-10-22 13:19:01 UTC (rev 849)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java 2009-10-23 09:27:50 UTC (rev 850)
@@ -24,18 +24,20 @@
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.ChangeListener;
import com.google.gwt.user.client.ui.ClickListener;
+import com.google.gwt.user.client.ui.PushButton;
import com.google.gwt.user.client.ui.Widget;
import com.mvc4g.client.Event;
import org.gwt.mosaic.ui.client.ListBox;
import org.gwt.mosaic.ui.client.MessageBox;
import org.gwt.mosaic.ui.client.ToolBar;
-import org.gwt.mosaic.ui.client.ToolButton;
import org.gwt.mosaic.ui.client.layout.*;
import org.gwt.mosaic.ui.client.list.DefaultListModel;
import org.jboss.bpm.console.client.ApplicationContext;
import org.jboss.bpm.console.client.ServerPlugins;
import org.jboss.bpm.console.client.common.IFrameWindowCallback;
import org.jboss.bpm.console.client.common.IFrameWindowPanel;
+import org.jboss.bpm.console.client.common.PagingPanel;
+import org.jboss.bpm.console.client.common.PagingCallback;
import org.jboss.bpm.console.client.icons.ConsoleIconBundle;
import org.jboss.bpm.console.client.model.TaskRef;
import org.jboss.bpm.console.client.task.events.DetailViewEvent;
@@ -62,6 +64,8 @@
private boolean hasDispatcherPlugin;
+ private PagingPanel pagingPanel;
+
public AssignedTasksView(ApplicationContext appContext, TaskDetailView detailsView)
{
super();
@@ -136,7 +140,7 @@
final ToolBar toolBar = new ToolBar();
toolBar.add(
- new ToolButton("Refresh", new ClickListener() {
+ new PushButton("Refresh", new ClickListener() {
public void onClick(Widget sender) {
// force loading
controller.handleEvent(
@@ -147,9 +151,8 @@
)
);
- toolBar.addSeparator();
- ToolButton viewBtn = new ToolButton("View", new ClickListener()
+ PushButton viewBtn = new PushButton("View", new ClickListener()
{
public void onClick(Widget sender)
{
@@ -192,10 +195,8 @@
);
toolBar.add(viewBtn);
- toolBar.addSeparator();
-
toolBar.add(
- new ToolButton("Release", new ClickListener() {
+ new PushButton("Release", new ClickListener() {
public void onClick(Widget sender) {
TaskRef selection = getSelection();
@@ -225,6 +226,23 @@
this.taskList.add(toolBox, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
this.taskList.add(listBox, new BoxLayoutData(BoxLayoutData.FillStyle.BOTH));
+ pagingPanel = new PagingPanel(
+ new PagingCallback()
+ {
+ public void rev()
+ {
+ renderUpdate();
+ }
+
+ public void ffw()
+ {
+ renderUpdate();
+ }
+ }
+ );
+
+ this.taskList.add(pagingPanel, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
+
LayoutPanel layout = new LayoutPanel(new BorderLayout());
layout.add(taskList, new BorderLayoutData(BorderLayout.Region.CENTER));
layout.add(detailsView, new BorderLayoutData(BorderLayout.Region.SOUTH, 10 , 200));
@@ -242,9 +260,14 @@
public void update(String identity, List<TaskRef> tasks)
{
-
this.identity = identity;
+ this.cachedTasks = tasks;
+ pagingPanel.reset();
+ renderUpdate();
+ }
+ private void renderUpdate()
+ {
// lazy init
initialize();
@@ -253,7 +276,8 @@
model.clear();
- for(TaskRef task : tasks)
+ List<TaskRef> trimmed = pagingPanel.trim(cachedTasks);
+ for(TaskRef task : trimmed)
{
if(TaskRef.STATE.ASSIGNED ==task.getCurrentState())
model.add(task);
@@ -263,8 +287,9 @@
controller.handleEvent(
new Event(UpdateDetailsAction.ID, new DetailViewEvent("AssignedDetailView", null))
);
-
+
this.invalidate();
+
}
}
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/OpenTasksView.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/OpenTasksView.java 2009-10-22 13:19:01 UTC (rev 849)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/OpenTasksView.java 2009-10-23 09:27:50 UTC (rev 850)
@@ -24,15 +24,17 @@
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.ChangeListener;
import com.google.gwt.user.client.ui.ClickListener;
+import com.google.gwt.user.client.ui.PushButton;
import com.google.gwt.user.client.ui.Widget;
import com.mvc4g.client.Event;
import org.gwt.mosaic.ui.client.ListBox;
import org.gwt.mosaic.ui.client.MessageBox;
import org.gwt.mosaic.ui.client.ToolBar;
-import org.gwt.mosaic.ui.client.ToolButton;
import org.gwt.mosaic.ui.client.layout.*;
import org.gwt.mosaic.ui.client.list.DefaultListModel;
import org.jboss.bpm.console.client.ApplicationContext;
+import org.jboss.bpm.console.client.common.PagingCallback;
+import org.jboss.bpm.console.client.common.PagingPanel;
import org.jboss.bpm.console.client.icons.ConsoleIconBundle;
import org.jboss.bpm.console.client.model.TaskRef;
import org.jboss.bpm.console.client.task.events.DetailViewEvent;
@@ -55,6 +57,8 @@
private SimpleDateFormat dateFormat = new SimpleDateFormat();
+ private PagingPanel pagingPanel;
+
public OpenTasksView(ApplicationContext appContext, TaskDetailView detailView)
{
super();
@@ -132,7 +136,7 @@
final ToolBar toolBar = new ToolBar();
toolBar.add(
- new ToolButton("Refresh", new ClickListener() {
+ new PushButton("Refresh", new ClickListener() {
public void onClick(Widget sender) {
// force loading
controller.handleEvent(
@@ -141,12 +145,10 @@
}
}
)
- );
+ );
- toolBar.addSeparator();
-
toolBar.add(
- new ToolButton("Claim", new ClickListener() {
+ new PushButton("Claim", new ClickListener() {
public void onClick(Widget sender)
{
TaskRef selection = getSelection();
@@ -174,6 +176,23 @@
this.taskList.add(toolBox, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
this.taskList.add(listBox, new BoxLayoutData(BoxLayoutData.FillStyle.BOTH));
+ pagingPanel = new PagingPanel(
+ new PagingCallback()
+ {
+ public void rev()
+ {
+ renderUpdate();
+ }
+
+ public void ffw()
+ {
+ renderUpdate();
+ }
+ }
+ );
+
+ this.taskList.add(pagingPanel, new BoxLayoutData(BoxLayoutData.FillStyle.HORIZONTAL));
+
// main layout
LayoutPanel layout = new LayoutPanel(new BorderLayout());
layout.add(taskList, new BorderLayoutData(BorderLayout.Region.CENTER));
@@ -186,9 +205,14 @@
public void update(String identity, List<TaskRef> tasks)
{
-
this.identity = identity;
+ this.cachedTasks = tasks;
+ pagingPanel.reset();
+ renderUpdate();
+ }
+ private void renderUpdate()
+ {
// lazy init
initialize();
@@ -197,7 +221,8 @@
model.clear();
- for(TaskRef task : tasks)
+ List<TaskRef> trimmed = pagingPanel.trim(cachedTasks);
+ for(TaskRef task : trimmed)
{
if(TaskRef.STATE.OPEN ==task.getCurrentState())
model.add(task);
@@ -207,7 +232,6 @@
controller.handleEvent(
new Event(UpdateDetailsAction.ID, new DetailViewEvent("OpenDetailView", null))
);
-
}
}
Modified: bpm-console/trunk/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css
===================================================================
--- bpm-console/trunk/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css 2009-10-22 13:19:01 UTC (rev 849)
+++ bpm-console/trunk/gui/war/src/main/resources/org/jboss/bpm/console/public/console.css 2009-10-23 09:27:50 UTC (rev 850)
@@ -336,4 +336,11 @@
.bpm-window-layout {
margin: 1px;
+}
+
+.bpm-paging-panel {
+ padding:2px;
+ font-size:8px;
+ background-color:#dfe8f6;
+ border-bottom: 1px solid #bbbbbb;
}
\ No newline at end of file
14 years, 7 months