[overlord-commits] Overlord SVN: r1004 - in activity-monitor/trunk: gui/war/src/main/java/org/jboss/bpm/monitor/gui/client and 5 other directories.
overlord-commits at lists.jboss.org
overlord-commits at lists.jboss.org
Fri Mar 12 06:41:29 EST 2010
Author: heiko.braun at jboss.com
Date: 2010-03-12 06:41:27 -0500 (Fri, 12 Mar 2010)
New Revision: 1004
Added:
activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/public/
activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/public/dataset.js
activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/public/dataset2.js
activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/metric/Grouping.java
Modified:
activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/App.gwt.xml
activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/client/RecentActivityView.java
activity-monitor/trunk/gui/war/war/App.html
activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/DefaultBPAFDataSource.java
activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/json/JsonExport.java
activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/json/XYDataSetJSO.java
Log:
First working chart impl
Modified: activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/App.gwt.xml
===================================================================
--- activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/App.gwt.xml 2010-03-12 09:50:59 UTC (rev 1003)
+++ activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/App.gwt.xml 2010-03-12 11:41:27 UTC (rev 1004)
@@ -5,12 +5,12 @@
<inherits name="com.google.gwt.uibinder.UiBinder"/>
<inherits name="com.google.gwt.resources.Resources" />
+ <inherits name='org.timepedia.chronoscope.Chronoscope'/>
+
<inherits name="org.jboss.errai.common.ErraiCommon"/>
<inherits name="org.jboss.errai.bus.ErraiBus"/>
<inherits name="org.jboss.errai.workspaces.ErraiWorkspaces" />
- <inherits name='org.timepedia.chronoscope.Chronoscope'/>
-
<entry-point class='org.jboss.bpm.monitor.gui.client.MonitorUI'/>
</module>
\ No newline at end of file
Modified: activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/client/RecentActivityView.java
===================================================================
--- activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/client/RecentActivityView.java 2010-03-12 09:50:59 UTC (rev 1003)
+++ activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/client/RecentActivityView.java 2010-03-12 11:41:27 UTC (rev 1004)
@@ -1,6 +1,7 @@
/* jboss.org */
package org.jboss.bpm.monitor.gui.client;
+import com.google.gwt.core.client.GWT;
import org.gwt.mosaic.ui.client.layout.LayoutPanel;
import org.jboss.errai.workspaces.client.api.ProvisioningCallback;
import org.jboss.errai.workspaces.client.api.WidgetProvider;
@@ -51,12 +52,10 @@
final Datasets<Tuple2D> datasets = new Datasets<Tuple2D>();
datasets.add(chronoscope.getDatasetReader().createDatasetFromJson(
- new GwtJsonDataset(getJson("interestRates01")))
+ new GwtJsonDataset(getJson("dataset")))
);
- datasets.add(chronoscope.getDatasetReader().createDatasetFromJson(
- new GwtJsonDataset(getJson("interestRates02")))
- );
+
// MockDatasetFactory datasetFactory = new MockDatasetFactory();
// Dataset mockDataset = datasetFactory.getBasicDataset();
// datasets.add(mockDataset);
@@ -68,7 +67,7 @@
chartPanel.setReadyListener(new ViewReadyCallback() {
public void onViewReady(final View view) {
- Dataset dataset = datasets.get(0);
+ /*Dataset dataset = datasets.get(0);
final Marker m = new Marker(
dataset.getDomainExtrema().midpoint(), "A", 0);
m.addOverlayClickListener(new OverlayClickListener() {
@@ -80,13 +79,15 @@
XYPlot plot = view.getChart().getPlot();
//plot.setDatasetRenderer(1, new BarChartXYRenderer());
plot.addOverlay(m);
- plot.redraw();
+ plot.redraw();*/
}
});
+ panel.add(chartPanel);
}
catch (Exception e)
{
+ GWT.log("Failed to create chart", e);
}
Added: activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/public/dataset.js
===================================================================
--- activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/public/dataset.js (rev 0)
+++ activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/public/dataset.js 2010-03-12 11:41:27 UTC (rev 1004)
@@ -0,0 +1,8 @@
+var dataset = {
+"id": "OrderCheckoutProcess",
+"preferredRenderer": "line",
+"domain": [1267787761970,1267874161970,1267960561970,1268046961970,1268133361970,1268219761970,1268306161970],
+"range": [0,0,0,0,8,26,82],
+"label": "Process Instances last 7 days",
+"axis": "unit"
+}
Added: activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/public/dataset2.js
===================================================================
--- activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/public/dataset2.js (rev 0)
+++ activity-monitor/trunk/gui/war/src/main/java/org/jboss/bpm/monitor/gui/public/dataset2.js 2010-03-12 11:41:27 UTC (rev 1004)
@@ -0,0 +1,9 @@
+var dataset = {
+"id": "unrate",
+"domainscale": 1000,
+"preferredRenderer": "line",
+"domain": [-694306739,-691628339,-689122739,-686444339,-683852339,-681173939,-678581939,-675903539,-673225139,-670633139,-667954739,-665362739,-662684339,-660005939,-657586739,-654908339,-652316339,-649637939,-647045939,-644367539,-641689139,-639097139,-636418739,-633826739,-631148339,-628469939,-626050739,-623372339,-620780339,-618101939,-615509939,-612831539,-610153139,-607561139,-604882739,-602290739,-599612339,-596933939,-594514739,-591836339,-589244339,-586565939,-583973939,-581295539,-578617139,-576025139,-573346739,-570754739,-568076339,-565397939,-562892339,-560213939,-557621939,-554943539,-552351539,-549673139,-546994739,-544402739,-541724339,-539132339,-536453939,-533775539,-531356339,-528677939,-526085939,-523407539,-520815539,-518137139,-515458739,-512866739,-510188339,-507596339,-504917939,-502239539,-499820339,-497141939,-494549939,-491871539,-489279539,-486601139,-483922739,-481330739,-478652339,-476060339,-473381939,-470703539,-468284339,-465605939,-46301393!
9,-460335539,-457743539,-455065139,-452386739,-449794739,-447116339,-444524339,-441845939,-439167539,-436661939,-433983539,-431391539,-428713139,-426121139,-423442739,-420764339,-418172339,-415493939,-412901939,-410223539,-407545139,-405125939,-402447539,-399855539,-397177139,-394585139,-391906739,-389228339,-386636339,-383957939,-381365939,-378687539,-376009139,-373589939,-370911539,-368319539,-365641139,-363049139,-360370739,-357692339,-355100339,-352421939,-349829939,-347151539,-344473139,-342053939,-339375539,-336783539,-334105139,-331513139,-328834739,-326156339,-323564339,-320885939,-318293939,-315615539,-312937139,-310431539,-307753139,-305161139,-302482739,-299890739,-297212339,-294533939,-291941939,-289263539,-286671539,-283993139,-281314739,-278895539,-276217139,-273625139,-270946739,-268354739,-265676339,-262997939,-260405939,-257727539,-255135539,-252457139,-249778739,-247359539,-244681139,-242089139,-239410739,-236818739,-234140339,-231461939,-228869939,-226191!
539,-223599539,-220921139,-218242739,-215823539,-213145139,-21!
0553139,
-207874739,-205282739,-202604339,-199925939,-197333939,-194655539,-192063539,-189385139,-186706739,-184201139,-181522739,-178930739,-176252339,-173660339,-170981939,-168303539,-165711539,-163033139,-160441139,-157762739,-155084339,-152665139,-149986739,-147394739,-144716339,-142124339,-139445939,-136767539,-134175539,-131497139,-128905139,-126226739,-123548339,-121129139,-118450739,-115858739,-113180339,-110588339,-107909939,-105231539,-102639539,-99961139,-97369139,-94690739,-92012339,-89593139,-86914739,-84322739,-81644339,-79052339,-76373939,-73695539,-71103539,-68425139,-65833139,-63154739,-60476339,-57970739,-55292339,-52700339,-50021939,-47429939,-44751539,-42073139,-39481139,-36802739,-34210739,-31532339,-28853939,-26434739,-23756339,-21164339,-18485939,-15893939,-13215539,-10537139,-7945139,-5266739,-2674739,3661,2682061,5101261,7779661,10371661,13050061,15642061,18320461,20998861,23590861,26269261,28861261,31539661,34218061,36637261,39315661,41907661,44586061,471780!
61,49856461,52534861,55126861,57805261,60397261,63075661,65754061,68259661,70938061,73530061,76208461,78800461,81478861,84157261,86749261,89427661,92019661,94698061,97376461,99795661,102474061,105066061,107744461,110336461,113014861,115693261,118285261,120963661,123555661,126234061,128912461,131331661,134010061,136602061,139280461,141872461,144550861,147229261,149821261,152499661,155091661,157770061,160448461,162867661,165546061,168138061,170816461,173408461,176086861,178765261,181357261,184035661,186627661,189306061,191984461,194490061,197168461,199760461,202438861,205030861,207709261,210387661,212979661,215658061,218250061,220928461,223606861,226026061,228704461,231296461,233974861,236566861,239245261,241923661,244515661,247194061,249786061,252464461,255142861,257562061,260240461,262832461,265510861,268102861,270781261,273459661,276051661,278730061,281322061,284000461,286678861,289098061,291776461,294368461,297046861,299638861,302317261,304995661,307587661,310266061,31285!
8061,315536461,318214861,320720461,323398861,325990861,3286692!
61,33126
1261,333939661,336618061,339210061,341888461,344480461,347158861,349837261,352256461,354934861,357526861,360205261,362797261,365475661,368154061,370746061,373424461,376016461,378694861,381373261,383792461,386470861,389062861,391741261,394333261,397011661,399690061,402282061,404960461,407552461,410230861,412909261,415328461,418006861,420598861,423277261,425869261,428547661,431226061,433818061,436496461,439088461,441766861,444445261,446950861,449629261,452221261,454899661,457491661,460170061,462848461,465440461,468118861,470710861,473389261,476067661,478486861,481165261,483757261,486435661,489027661,491706061,494384461,496976461,499654861,502246861,504925261,507603661,510022861,512701261,515293261,517971661,520563661,523242061,525920461,528512461,531190861,533782861,536461261,539139661,541558861,544237261,546829261,549507661,552099661,554778061,557456461,560048461,562726861,565318861,567997261,570675661,573181261,575859661,578451661,581130061,583722061,586400461,589078861,5916!
70861,594349261,596941261,599619661,602298061,604717261,607395661,609987661,612666061,615258061,617936461,620614861,623206861,625885261,628477261,631155661,633834061,636253261,638931661,641523661,644202061,646794061,649472461,652150861,654742861,657421261,660013261,662691661,665370061,667789261,670467661,673059661,675738061,678330061,681008461,683686861,686278861,688957261,691549261,694227661,696906061,699411661,702090061,704682061,707360461,709952461,712630861,715309261,717901261,720579661,723171661,725850061,728528461,730947661,733626061,736218061,738896461,741488461,744166861,746845261,749437261,752115661,754707661,757386061,760064461,762483661,765162061,767754061,770432461,773024461,775702861,778381261,780973261,783651661,786243661,788922061,791600461,794019661,796698061,799290061,801968461,804560461,807238861,809917261,812509261,815187661,817779661,820458061,823136461,825642061,828320461,830912461,833590861,836182861,838861261,841539661,844131661,846810061,849402061,85!
2080461,854758861,857178061,859856461,862448461,865126861,8677!
18861,87
0397261,873075661,875667661,878346061,880938061,883616461,886294861,888714061,891392461,893984461,896662861,899254861,901933261,904611661,907203661,909882061,912474061,915152461,917830861,920250061,922928461,925520461,928198861,930790861,933469261,936147661,938739661,941418061,944010061,946688461,949366861,951872461,954550861,957142861,959821261,962413261,965091661,967770061,970362061,973040461,975632461,978310861,980989261,983408461,986086861,988678861,991357261,993949261,996627661,999306061,1001898061,1004576461,1007168461,1009846861,1012525261,1014944461,1017622861,1020214861,1022893261,1025485261,1028163661,1030842061,1033434061,1036112461,1038704461,1041382861,1044061261,1046480461,1049158861,1051750861,1054429261,1057021261,1059699661,1062378061,1064970061,1067648461,1070240461,1072918861,1075597261,1078102861,1080781261,1083373261,1086051661,1088643661,1091322061,1094000461,1096592461,1099270861,1101862861,1104541261,1107219661,1109638861,1112317261,1114909261,1117587!
661,1120179661,1122858061,1125536461,1128128461,1130806861,1133398861,1136077261,1138755661,1141174861],
+"range": [3.4,3.8,4.0,3.9,3.5,3.6,3.6,3.9,3.8,3.7,3.8,4.0,4.3,4.7,5.0,5.3,6.1,6.2,6.7,6.8,6.6,7.9,6.4,6.6,6.5,6.4,6.3,5.8,5.5,5.4,5.0,4.5,4.4,4.2,4.2,4.3,3.7,3.4,3.4,3.1,3.0,3.2,3.1,3.1,3.3,3.5,3.5,3.1,3.2,3.1,2.9,2.9,3.0,3.0,3.2,3.4,3.1,3.0,2.8,2.7,2.9,2.6,2.6,2.7,2.5,2.5,2.6,2.7,2.9,3.1,3.5,4.5,4.9,5.2,5.7,5.9,5.9,5.6,5.8,6.0,6.1,5.7,5.3,5.0,4.9,4.7,4.6,4.7,4.3,4.2,4.0,4.2,4.1,4.3,4.2,4.2,4.0,3.9,4.2,4.0,4.3,4.3,4.4,4.1,3.9,3.9,4.3,4.2,4.2,3.9,3.7,3.9,4.1,4.3,4.2,4.1,4.4,4.5,5.1,5.2,5.8,6.4,6.7,7.4,7.4,7.3,7.5,7.4,7.1,6.7,6.2,6.2,6.0,5.9,5.6,5.2,5.1,5.0,5.1,5.2,5.5,5.7,5.8,5.3,5.2,4.8,5.4,5.2,5.1,5.4,5.5,5.6,5.5,6.1,6.1,6.6,6.6,6.9,6.9,7.0,7.1,6.9,7.0,6.6,6.7,6.5,6.1,6.0,5.8,5.5,5.6,5.6,5.5,5.5,5.4,5.7,5.6,5.4,5.7,5.5,5.7,5.9,5.7,5.7,5.9,5.6,5.6,5.4,5.5,5.5,5.7,5.5,5.6,5.4,5.4,5.3,5.1,5.2,4.9,5.0,5.1,5.1,4.8,5.0,4.9,5.1,4.7,4.8,4.6,4.6,4.4,4.4,4.3,4.2,4.1,4.0,4.0,3.8,3.8,3.8,3.9,3.8,3.8,3.8,3.7,3.7,3.6,3.8,3.9,3.8,3.8,3.8,3.8,3.9,3.8,3.8,3.8,4.0,3.9,3.8,3.7,3.8,3.7,3.5,3.!
5,3.7,3.7,3.5,3.4,3.4,3.4,3.4,3.4,3.4,3.4,3.4,3.4,3.5,3.5,3.5,3.7,3.7,3.5,3.5,3.9,4.2,4.4,4.6,4.8,4.9,5.0,5.1,5.4,5.5,5.9,6.1,5.9,5.9,6.0,5.9,5.9,5.9,6.0,6.1,6.0,5.8,6.0,6.0,5.8,5.7,5.8,5.7,5.7,5.7,5.6,5.6,5.5,5.6,5.3,5.2,4.9,5.0,4.9,5.0,4.9,4.9,4.8,4.8,4.8,4.6,4.8,4.9,5.1,5.2,5.1,5.1,5.1,5.4,5.5,5.5,5.9,6.0,6.6,7.2,8.1,8.1,8.6,8.8,9.0,8.8,8.6,8.4,8.4,8.4,8.3,8.2,7.9,7.7,7.6,7.7,7.4,7.6,7.8,7.8,7.6,7.7,7.8,7.8,7.5,7.6,7.4,7.2,7.0,7.2,6.9,7.0,6.8,6.8,6.8,6.4,6.4,6.3,6.3,6.1,6.0,5.9,6.2,5.9,6.0,5.8,5.9,6.0,5.9,5.9,5.8,5.8,5.6,5.7,5.7,6.0,5.9,6.0,5.9,6.0,6.3,6.3,6.3,6.9,7.5,7.6,7.8,7.7,7.5,7.5,7.5,7.2,7.5,7.4,7.4,7.2,7.5,7.5,7.2,7.4,7.6,7.9,8.3,8.5,8.6,8.9,9.0,9.3,9.4,9.6,9.8,9.8,10.1,10.4,10.8,10.8,10.4,10.4,10.3,10.2,10.1,10.1,9.4,9.5,9.2,8.8,8.5,8.3,8.0,7.8,7.8,7.7,7.4,7.2,7.5,7.5,7.3,7.4,7.2,7.3,7.3,7.2,7.2,7.3,7.2,7.4,7.4,7.1,7.1,7.1,7.0,7.0,6.7,7.2,7.2,7.1,7.2,7.2,7.0,6.9,7.0,7.0,6.9,6.6,6.6,6.6,6.6,6.3,6.3,6.2,6.1,6.0,5.9,6.0,5.8,5.7,5.7,5.7,5.7,5.4,5.6,5.4,5.4,5.6,5.4,!
5.4,5.3,5.3,5.4,5.2,5.0,5.2,5.2,5.3,5.2,5.2,5.3,5.3,5.4,5.4,5.!
4,5.3,5.
2,5.4,5.4,5.2,5.5,5.7,5.9,5.9,6.2,6.3,6.4,6.6,6.8,6.7,6.9,6.9,6.8,6.9,6.9,7.0,7.0,7.3,7.3,7.4,7.4,7.4,7.6,7.8,7.7,7.6,7.6,7.3,7.4,7.4,7.3,7.1,7.0,7.1,7.1,7.0,6.9,6.8,6.7,6.8,6.6,6.5,6.6,6.6,6.5,6.4,6.1,6.1,6.1,6.0,5.9,5.8,5.6,5.5,5.6,5.4,5.4,5.8,5.6,5.6,5.7,5.7,5.6,5.5,5.6,5.6,5.6,5.5,5.5,5.6,5.6,5.3,5.5,5.1,5.2,5.2,5.4,5.4,5.3,5.2,5.2,5.1,4.9,5.0,4.9,4.8,4.9,4.7,4.6,4.7,4.6,4.6,4.7,4.3,4.4,4.5,4.5,4.5,4.6,4.5,4.4,4.4,4.3,4.4,4.2,4.3,4.2,4.3,4.3,4.2,4.2,4.1,4.1,4.0,4.0,4.1,4.0,3.8,4.0,4.0,4.0,4.1,3.9,3.9,3.9,3.9,4.2,4.2,4.3,4.4,4.3,4.5,4.6,4.9,5.0,5.3,5.5,5.7,5.7,5.7,5.7,5.9,5.8,5.8,5.8,5.7,5.7,5.7,5.9,6.0,5.8,5.9,5.9,6.0,6.1,6.3,6.2,6.1,6.1,6.0,5.9,5.7,5.7,5.6,5.7,5.5,5.6,5.6,5.5,5.4,5.4,5.4,5.4,5.4,5.2,5.4,5.1,5.1,5.1,5.0,5.0,4.9,5.1,4.9,5.0,4.9,4.7,4.8,4.7],
+"label": "Unemployment",
+"axis": "percent"
+}
Modified: activity-monitor/trunk/gui/war/war/App.html
===================================================================
--- activity-monitor/trunk/gui/war/war/App.html 2010-03-12 09:50:59 UTC (rev 1003)
+++ activity-monitor/trunk/gui/war/war/App.html 2010-03-12 11:41:27 UTC (rev 1004)
@@ -1,7 +1,8 @@
<html>
<head>
<title>Errai Application</title>
- <link rel="stylesheet" type="text/css" href="App.css">
+ <link rel="stylesheet" type="text/css" href="App.css">
+ <script language='javascript' src='app/dataset.js'></script>
<script type="text/javascript" language="javascript" src="app/app.nocache.js"></script>
</head>
<body>
Modified: activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/DefaultBPAFDataSource.java
===================================================================
--- activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/DefaultBPAFDataSource.java 2010-03-12 09:50:59 UTC (rev 1003)
+++ activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/DefaultBPAFDataSource.java 2010-03-12 11:41:27 UTC (rev 1004)
@@ -133,7 +133,7 @@
"and e1.processDefinitionID='"+processDefinition+"' "+
"and e1.timeStamp>="+timespan.getStart()+" "+
"and e2.timeStamp<="+timespan.getEnd()+" "+
- "order by e1.timeStamp;");
+ "order by e1.eventID;");
query.addEntity(Event.class);
Modified: activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/json/JsonExport.java
===================================================================
--- activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/json/JsonExport.java 2010-03-12 09:50:59 UTC (rev 1003)
+++ activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/json/JsonExport.java 2010-03-12 11:41:27 UTC (rev 1004)
@@ -4,8 +4,8 @@
import org.jboss.bpm.monitor.model.BPAFDataSource;
import org.jboss.bpm.monitor.model.DefaultBPAFDataSource;
import org.jboss.bpm.monitor.model.bpaf.Event;
-import org.jboss.bpm.monitor.model.bpaf.State;
import org.jboss.bpm.monitor.model.metric.Average;
+import org.jboss.bpm.monitor.model.metric.Grouping;
import org.jboss.bpm.monitor.model.metric.Metrics;
import org.jboss.bpm.monitor.model.metric.Timespan;
@@ -35,81 +35,48 @@
System.out.println("Instances events for: "+timespan + ": "+events.size());
Average avg = Metrics.getInstanceAverage(events);
+
+
+ SortedMap<Date, List<Event>> grouped = groupEventsByUnit(events, timespan);
+
+ /*System.out.println("--");
+ for(Date d : grouped.keySet())
+ System.out.println(d+": "+grouped.get(d).size());*/
+
+ // ----------
+
+
XYDataSetJSO dataSet = new XYDataSetJSO("Process Instances last 7 days", s0);
- Map<Date, Long> sorted = sortEventsByUnit(events, timespan);
-
- for(Date d : sorted.keySet())
- System.out.println(d+": "+sorted.get(d));
-
+ List<Long> domainData = new ArrayList<Long>(grouped.size());
+ List<Long> rangeData = new ArrayList<Long>(grouped.size());
+ for(Date d : grouped.keySet())
+ {
+ domainData.add(d.getTime());
+ rangeData.add(new Integer(grouped.get(d).size()).longValue());
+ }
+
+ dataSet.getDomain().add(domainData);
+ dataSet.getRange().add(rangeData);
dataSet.setAxis("time");
dataSet.setRangeBottom(avg.getMin());
dataSet.setRangeTop(avg.getMax());
+ System.out.println(dataSet.toJSO());
}
- private static Map<Date, Long> sortEventsByUnit(List<Event> events, Timespan timespan)
+ private static SortedMap<Date, List<Event>> groupEventsByUnit(List<Event> events, Timespan timespan)
{
- Map<Date, Long> result = null;
+ SortedMap<Date, List<Event>> result = null;
switch (timespan.getUnit() )
{
case DAY:
- result = groupByDay(events, timespan);
+ result = Grouping.byDay(events, timespan);
break;
}
return result;
}
- private static Map<Date, Long> groupByDay(List<Event> events, Timespan timespan)
- {
- Map<Date, Long> slotCount = new HashMap<Date, Long>();
- // create daily slots first
- Calendar cal = Calendar.getInstance();
- cal.setTimeInMillis(timespan.getStart());
- while(cal.getTimeInMillis()<timespan.getEnd())
- {
- slotCount.put(new Date(cal.getTimeInMillis()), 0l); // left inclusive
- cal.roll(Calendar.DAY_OF_YEAR, 1);
- }
-
- // sort events according to slots
- for(Event e : events)
- {
- State state = e.getEventDetails().getCurrentState();
-
- // only State.Open events matter in this case
- if(State.Open.equals(state))
- {
- for(Date from : slotCount.keySet())
- {
- cal.setTime(from);
- cal.roll(Calendar.DAY_OF_YEAR, 1);
- Date to = cal.getTime();
-
- Date actual = new Date(e.getTimestamp());
-
- if(actual.after(from) && actual.before(to))
- {
- // matching slot
- if(null==slotCount.get(from))
- {
- slotCount.put(from, 1l);
- }
- else
- {
- Long aLong = slotCount.get(from);
- slotCount.put(from, ++aLong);
- }
-
- break;
- }
- }
- }
- }
-
- return slotCount;
- }
-
}
Modified: activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/json/XYDataSetJSO.java
===================================================================
--- activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/json/XYDataSetJSO.java 2010-03-12 09:50:59 UTC (rev 1003)
+++ activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/json/XYDataSetJSO.java 2010-03-12 11:41:27 UTC (rev 1004)
@@ -14,7 +14,7 @@
dataset = {
id: "unique id for this dataset",
mipped: true,
- domain: [ [level 0 values], [level 1 values], ... ],
+ domain: [ [level 0 values], [level 1 values], ... ], => [UTCTimeInMilliseconds_1, UTCtimeInMilliseconds_2, ...]
range: [ [level 0 values], [level 1 values], ... ],
rangeBottom: min over level 0 values,
rangeTop: max over level 0 values,
@@ -27,8 +27,8 @@
String id;
boolean mipped = true;
- List<List<Double>> domain = new ArrayList<List<Double>>();
- List<List<Double>> range = new ArrayList<List<Double>>();
+ List<List<Long>> domain = new ArrayList<List<Long>>();
+ List<List<Long>> range = new ArrayList<List<Long>>();
double rangeBottom, rangeTop;
@@ -65,12 +65,12 @@
this.mipped = mipped;
}
- public List<List<Double>> getDomain()
+ public List<List<Long>> getDomain()
{
return domain;
}
- public List<List<Double>> getRange()
+ public List<List<Long>> getRange()
{
return range;
}
@@ -137,27 +137,31 @@
sb.append("domain:[");
int idx = 1;
- for(List<Double> list : domain)
+ for(List<Long> list : domain)
{
- for(Double d : list)
+ sb.append("[");
+ for(Long d : list)
{
- sb.append("[").append(d).append("]");
+ sb.append(d);
if(idx<list.size()) sb.append(",");
idx++;
}
+ sb.append("]");
}
sb.append("],");
sb.append("range:[");
idx = 1;
- for(List<Double> list : domain)
+ for(List<Long> list : range)
{
- for(Double d : list)
+ sb.append("[");
+ for(Long d : list)
{
- sb.append("[").append(d).append("]");
+ sb.append(d);
if(idx<list.size()) sb.append(",");
idx++;
}
+ sb.append("]");
}
sb.append("],");
Added: activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/metric/Grouping.java
===================================================================
--- activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/metric/Grouping.java (rev 0)
+++ activity-monitor/trunk/model/src/main/java/org/jboss/bpm/monitor/model/metric/Grouping.java 2010-03-12 11:41:27 UTC (rev 1004)
@@ -0,0 +1,58 @@
+/* jboss.org */
+package org.jboss.bpm.monitor.model.metric;
+
+import org.jboss.bpm.monitor.model.bpaf.Event;
+
+import java.util.*;
+
+/**
+ * Grouping algorithms. Non-optimized.<br>
+ * These may show bad execution times when being used on large scale data sets.
+ *
+ * @author: Heiko Braun <hbraun at redhat.com>
+ * @date: Mar 12, 2010
+ */
+public class Grouping
+{
+ public static SortedMap<Date, List<Event>> byDay(List<Event> events, Timespan timespan)
+ {
+ long s0 = System.currentTimeMillis();
+ SortedMap<Date, List<Event>> slotCount = new TreeMap<Date, List<Event>>();
+
+ // create daily slots first
+ final Calendar cal = Calendar.getInstance();
+ cal.setTimeInMillis(timespan.getStart());
+ while(cal.getTimeInMillis()<timespan.getEnd())
+ {
+ slotCount.put(new Date(cal.getTimeInMillis()), new ArrayList<Event>()); // left inclusive
+ cal.roll(Calendar.DAY_OF_YEAR, 1);
+ }
+
+ // sort events according to slots
+ final Set<Date> startingDates = slotCount.keySet();
+ Iterator<Date> it = startingDates.iterator();
+ while(it.hasNext())
+ {
+ Date from = it.next();
+
+ for(Event e : events)
+ {
+ cal.setTime(from);
+ cal.roll(Calendar.DAY_OF_YEAR, 1);
+ Date to = cal.getTime();
+
+ Date actual = new Date(e.getTimestamp());
+
+ if(actual.after(from) && actual.before(to))
+ {
+ slotCount.get(from).add(e);
+ }
+
+ }
+ }
+
+ //System.out.println("exectime: "+(System.currentTimeMillis()-s0)+ " ms");
+ return slotCount;
+ }
+
+}
More information about the overlord-commits
mailing list