[esb-java-dev] svn commit r673 - in esb/java/trunk: . modules/core/src/main/java/org/wso2/esb/persistence modules/core/src/main/java/org/wso2/esb/persistence/dao modules/core/src/main/java/org/wso2/esb/services modules/core/src/main/java/org/wso2/esb/services/utils modules/core/src/main/java/org/wso2/esb/statistics modules/core/src/main/java/org/wso2/esb/statistics/persistence modules/distribution modules/distribution/src/main/www/extensions/core modules/distribution/src/main/www/extensions/core/css modules/distribution/src/main/www/extensions/core/js modules/distribution/src/main/www/extensions/core/xslt/statistics

svn at wso2.com svn at wso2.com
Thu Feb 1 20:31:45 PST 2007


Author: indika
Date: Thu Feb  1 20:30:50 2007
New Revision: 673

Added:
   esb/java/trunk/modules/core/src/main/java/org/wso2/esb/services/utils/GraphData.java
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph1.html
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph2.html
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph3.html
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph4.html
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/js/graphs.js
Modified:
   esb/java/trunk/modules/core/src/main/java/org/wso2/esb/persistence/PersistenceManager.java
   esb/java/trunk/modules/core/src/main/java/org/wso2/esb/persistence/dao/StatisticsDAO.java
   esb/java/trunk/modules/core/src/main/java/org/wso2/esb/services/ServiceAdmin.java
   esb/java/trunk/modules/core/src/main/java/org/wso2/esb/statistics/StatisticsReporterThread.java
   esb/java/trunk/modules/core/src/main/java/org/wso2/esb/statistics/persistence/StatisticsDBUtils.java
   esb/java/trunk/modules/distribution/pom.xml
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/css/wso2-esb.css
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/js.html
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/js/statistics.js
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/commonstatistics.xsl
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_epr.xsl
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_ps.xsl
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_seq.xsl
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_servers.xsl
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_service_type.xsl
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/psstatistics.xsl
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/serverstatistics.xsl
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/statistics.xsl
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/statisticshome.xsl
   esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/syapseservicestatistics.xsl
   esb/java/trunk/pom.xml
Log:
add Graphs(pie chart ) for displaying statistics 

Modified: esb/java/trunk/modules/core/src/main/java/org/wso2/esb/persistence/PersistenceManager.java
==============================================================================
--- esb/java/trunk/modules/core/src/main/java/org/wso2/esb/persistence/PersistenceManager.java	(original)
+++ esb/java/trunk/modules/core/src/main/java/org/wso2/esb/persistence/PersistenceManager.java	Thu Feb  1 20:30:50 2007
@@ -21,6 +21,8 @@
 import org.wso2.esb.persistence.dataobject.StatisticsDO;
 import org.wso2.esb.util.HibernateConfig;
 
+import java.util.List;
+
 /**
  *
  *
@@ -96,4 +98,8 @@
         return new StatisticsDAO(hbConfig).createAnewObject(hqlQuery);
     }
 
+    public List selectCustomObjectList(String hqlQuery) {
+            return new StatisticsDAO(hbConfig).selectCustomObjectList(hqlQuery);
+    }
+
 }

Modified: esb/java/trunk/modules/core/src/main/java/org/wso2/esb/persistence/dao/StatisticsDAO.java
==============================================================================
--- esb/java/trunk/modules/core/src/main/java/org/wso2/esb/persistence/dao/StatisticsDAO.java	(original)
+++ esb/java/trunk/modules/core/src/main/java/org/wso2/esb/persistence/dao/StatisticsDAO.java	Thu Feb  1 20:30:50 2007
@@ -100,4 +100,8 @@
         return selectUnique(hqlQuery);
     }
 
+
+    public List selectCustomObjectList(String hqlQuery) {
+           return select(hqlQuery);
+    }
 }

Modified: esb/java/trunk/modules/core/src/main/java/org/wso2/esb/services/ServiceAdmin.java
==============================================================================
--- esb/java/trunk/modules/core/src/main/java/org/wso2/esb/services/ServiceAdmin.java	(original)
+++ esb/java/trunk/modules/core/src/main/java/org/wso2/esb/services/ServiceAdmin.java	Thu Feb  1 20:30:50 2007
@@ -22,9 +22,13 @@
 import org.wso2.esb.persistence.PersistenceManager;
 import org.wso2.esb.persistence.dataobject.StatisticsDO;
 import org.wso2.esb.services.utils.StatisticsData;
+import org.wso2.esb.services.utils.GraphData;
 import org.wso2.esb.statistics.persistence.StatisticsDBUtils;
 import org.wso2.esb.util.HibernateConfigFactory;
 
+import java.util.List;
+import java.util.Iterator;
+
 /**
  *
  *
@@ -208,6 +212,44 @@
         }
     }
 
+    public GraphData getDataForGraph() throws ServiceBusException {
+        GraphData graphData = new GraphData();
+        List serverData = StatisticsDBUtils.getTotalCountForServerS(pm, Constants.PROXYSERVICE_STATISTICS);
+        List psData = StatisticsDBUtils.getTotalCountForCategory(pm, Constants.PROXYSERVICE_STATISTICS);
+        List epData = StatisticsDBUtils.getTotalCountForCategory(pm, Constants.ENDPOINT_STATISTICS);
+        List sequenceData = StatisticsDBUtils.getTotalCountForCategory(pm, Constants.SEQUENCE_STATISTICS);
+        String serverDataStr = "";
+        String psDataStr = "";
+        String epDataStr = "";
+        String sequenceDataStr = "";
+
+        for (Iterator iterator = serverData.iterator(); iterator.hasNext();) {
+            Object[] row = (Object[]) iterator.next();
+            serverDataStr += row[0] + "-[" + row[1] + "]-," + row[1] + ";";
+        }
+        for (Iterator iterator = psData.iterator(); iterator.hasNext();) {
+            Object[] row = (Object[]) iterator.next();
+            String name = (String) row[0];
+            if (!name.equals("SynapseService")) {
+                psDataStr += row[0] + "-[" + row[1] + "]-," + row[1] + ";";
+            }
+        }
+        for (Iterator iterator = epData.iterator(); iterator.hasNext();) {
+            Object[] row = (Object[]) iterator.next();
+            epDataStr += row[0] + "-[" + row[1] + "]-," + row[1] + ";";
+        }
+        for (Iterator iterator = sequenceData.iterator(); iterator.hasNext();) {
+            Object[] row = (Object[]) iterator.next();
+            sequenceDataStr += row[0] + "-[" + row[1] + "]-," + row[1] + ";";
+        }
+
+        graphData.setEndPointData(epDataStr);
+        graphData.setProxyServiceData(psDataStr);
+        graphData.setSequenceData(sequenceDataStr);
+        graphData.setServerData(serverDataStr);
+        return graphData;
+    }
+
     public String[] listEndPoint() throws ServiceBusException {
         StatisticsDO[] statisticsRecords = StatisticsDBUtils.getStatistics(pm, Constants.ENDPOINT_STATISTICS, 0);
         String[] names = new String[statisticsRecords.length];

Added: esb/java/trunk/modules/core/src/main/java/org/wso2/esb/services/utils/GraphData.java
==============================================================================
--- (empty file)
+++ esb/java/trunk/modules/core/src/main/java/org/wso2/esb/services/utils/GraphData.java	Thu Feb  1 20:30:50 2007
@@ -0,0 +1,61 @@
+/*
+* Copyright 2004,2005 The Apache Software Foundation.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+*      http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package org.wso2.esb.services.utils;
+
+/**
+ *
+ *
+ */
+
+public class GraphData {
+
+    private String serverData;
+    private String sequenceData;
+    private String proxyServiceData;
+    private String endPointData;
+
+    public String getServerData() {
+        return serverData;
+    }
+
+    public void setServerData(String serverData) {
+        this.serverData = serverData;
+    }
+
+    public String getSequenceData() {
+        return sequenceData;
+    }
+
+    public void setSequenceData(String sequenceData) {
+        this.sequenceData = sequenceData;
+    }
+
+    public String getProxyServiceData() {
+        return proxyServiceData;
+    }
+
+    public void setProxyServiceData(String proxyServiceData) {
+        this.proxyServiceData = proxyServiceData;
+    }
+
+    public String getEndPointData() {
+        return endPointData;
+    }
+
+    public void setEndPointData(String endPointData) {
+        this.endPointData = endPointData;
+    }
+}

Modified: esb/java/trunk/modules/core/src/main/java/org/wso2/esb/statistics/StatisticsReporterThread.java
==============================================================================
--- esb/java/trunk/modules/core/src/main/java/org/wso2/esb/statistics/StatisticsReporterThread.java	(original)
+++ esb/java/trunk/modules/core/src/main/java/org/wso2/esb/statistics/StatisticsReporterThread.java	Thu Feb  1 20:30:50 2007
@@ -59,7 +59,7 @@
     public void run() {
         while (!isInterrupted()) {
             StatisticsCollector statisticsCollector = synapseEnvironment.getStatisticsCollector();           
-            log.info("Statistics Reporter is running");
+           // log.info("Statistics Reporter is running");
             if (statisticsCollector != null) {
                     // report sequence statistics to database
                     for (Iterator sequenceStatistics = statisticsCollector.getSequenceStatistics(); sequenceStatistics.hasNext();)

Modified: esb/java/trunk/modules/core/src/main/java/org/wso2/esb/statistics/persistence/StatisticsDBUtils.java
==============================================================================
--- esb/java/trunk/modules/core/src/main/java/org/wso2/esb/statistics/persistence/StatisticsDBUtils.java	(original)
+++ esb/java/trunk/modules/core/src/main/java/org/wso2/esb/statistics/persistence/StatisticsDBUtils.java	Thu Feb  1 20:30:50 2007
@@ -21,6 +21,8 @@
 import org.wso2.esb.persistence.PersistenceManager;
 import org.wso2.esb.persistence.dataobject.StatisticsDO;
 
+import java.util.List;
+
 
 /**
  * The Util class to access STATISTICS table
@@ -241,10 +243,20 @@
                 " and " + DIRECTION_ + " = " + direction + "";
         return pm.createAnewObjectFromStatistics(queryString);
     }
+     public static List getTotalCountForServerS(PersistenceManager pm,int category) {
+        String queryString = "select  " + SERVER_ID_ + " ,sum(totalCount) from  " + Constants.DBAccess.STATISTICS_DO + " "+
+                " Where " + CATEGORY_ + "= " + category +" group by "+SERVER_ID_+" ";
 
+        return pm.selectCustomObjectList(queryString);
+    }
     public static Object getServersIds(PersistenceManager pm) {
         String queryString = "select distinct " + SERVER_ID_ + " from  " + Constants.DBAccess.STATISTICS_DO + " ";
         return pm.createAnewObjectFromStatistics(queryString);
     }
 
+   public static List getTotalCountForCategory(PersistenceManager pm,int category) {
+        String queryString = "select " + NAME_ + ",sum(totalCount) from  " + Constants.DBAccess.STATISTICS_DO + " "  +
+        " Where " + CATEGORY_ + "= " + category + " group by "+NAME_+" ";
+        return pm.selectCustomObjectList(queryString);
+    }
 }

Modified: esb/java/trunk/modules/distribution/pom.xml
==============================================================================
--- esb/java/trunk/modules/distribution/pom.xml	(original)
+++ esb/java/trunk/modules/distribution/pom.xml	Thu Feb  1 20:30:50 2007
@@ -77,6 +77,14 @@
                                 <type>zip</type>
                                 <outputDirectory>target/temp/lib</outputDirectory>
                             </artifactItem>
+                            
+                            <artifactItem>
+                                <groupId>org.wso2.adminui</groupId>
+                                <artifactId>wso2-adminui-graphs-zip</artifactId>
+                                <version>${wso2.adminui.version.graphs}</version>
+                                <type>zip</type>
+                                <outputDirectory>target/temp/lib</outputDirectory>
+                            </artifactItem>
 
                             <artifactItem>
                                 <groupId>xerces</groupId>
@@ -125,7 +133,8 @@
                         <tasks>
                             <unzip src="target/temp/lib/wso2-adminui-zip-${wso2.adminui.version}.zip"
                                 dest="target/temp/lib/www-raw"/>
-
+                            <unzip src="target/temp/lib/wso2-adminui-graphs-zip-${wso2.adminui.version.graphs}.zip"
+                                   dest="target/temp/lib/www-raw"/>
                             <filter token="server_name" value="${server.name}"/>
                             <filter token="server_short_name" value="${server.short.name}"/>
                             <filter token="esb_version" value="${wso2.esb.version}"/>

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/css/wso2-esb.css
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/css/wso2-esb.css	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/css/wso2-esb.css	Thu Feb  1 20:30:50 2007
@@ -196,8 +196,7 @@
     padding: 5px;
     width: 450px;
     height:200px;
-    position:absolute;
-
+    position:absolute;     
     _margin-top:40;
     _height:190px;
 }

Added: esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph1.html
==============================================================================
--- (empty file)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph1.html	Thu Feb  1 20:30:50 2007
@@ -0,0 +1,20 @@
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"
+      xmlns:xlink="http://www.w3.org/1999/xlink">
+<head></head>
+<script language="javascript" src="js/mochikit/MochiKit.js"></script>
+<script language="javascript" src="js/plotkit/Base.js"></script>
+<script language="javascript" src="js/plotkit/Layout.js"></script>
+<script language="javascript" src="js/plotkit/Canvas.js"></script>
+<script language="javascript" src="js/plotkit/SweetCanvas.js"></script>
+<script language="javascript" src="js/plotkit/excanvas.js"></script>
+<script language="javascript" src="js/statistics.js"></script>
+<script language="javascript">
+    MochiKit.DOM.addLoadEvent(drawServerGraph);
+</script>
+
+<body>
+<div>
+    <canvas id="graph" height="150" width="430"></canvas>
+</div>
+</body>
+</html>

Added: esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph2.html
==============================================================================
--- (empty file)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph2.html	Thu Feb  1 20:30:50 2007
@@ -0,0 +1,20 @@
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"
+      xmlns:xlink="http://www.w3.org/1999/xlink">
+<head></head>
+<script language="javascript" src="js/mochikit/MochiKit.js"></script>
+<script language="javascript" src="js/plotkit/Base.js"></script>
+<script language="javascript" src="js/plotkit/Layout.js"></script>
+<script language="javascript" src="js/plotkit/Canvas.js"></script>
+<script language="javascript" src="js/plotkit/SweetCanvas.js"></script>
+<script language="javascript" src="js/plotkit/excanvas.js"></script>
+<script language="javascript" src="js/statistics.js"></script>
+<script language="javascript">
+    MochiKit.DOM.addLoadEvent(drawProxyServiceGraph);
+</script>
+
+<body>
+<div>
+    <canvas id="graph" height="150" width="430"></canvas>
+</div>
+</body>
+</html>

Added: esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph3.html
==============================================================================
--- (empty file)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph3.html	Thu Feb  1 20:30:50 2007
@@ -0,0 +1,20 @@
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"
+      xmlns:xlink="http://www.w3.org/1999/xlink">
+<head></head>
+<script language="javascript" src="js/mochikit/MochiKit.js"></script>
+<script language="javascript" src="js/plotkit/Base.js"></script>
+<script language="javascript" src="js/plotkit/Layout.js"></script>
+<script language="javascript" src="js/plotkit/Canvas.js"></script>
+<script language="javascript" src="js/plotkit/SweetCanvas.js"></script>
+<script language="javascript" src="js/plotkit/excanvas.js"></script>
+<script language="javascript" src="js/statistics.js"></script>
+<script language="javascript">
+    MochiKit.DOM.addLoadEvent(drawEndPointGraph);
+</script>
+
+<body>
+<div>
+    <canvas id="graph" height="150" width="430"></canvas>
+</div>
+</body>
+</html>

Added: esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph4.html
==============================================================================
--- (empty file)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/graph4.html	Thu Feb  1 20:30:50 2007
@@ -0,0 +1,20 @@
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"
+      xmlns:xlink="http://www.w3.org/1999/xlink">
+<head></head>
+<script language="javascript" src="js/mochikit/MochiKit.js"></script>
+<script language="javascript" src="js/plotkit/Base.js"></script>
+<script language="javascript" src="js/plotkit/Layout.js"></script>
+<script language="javascript" src="js/plotkit/Canvas.js"></script>
+<script language="javascript" src="js/plotkit/SweetCanvas.js"></script>
+<script language="javascript" src="js/plotkit/excanvas.js"></script>
+<script language="javascript" src="js/statistics.js"></script>
+<script language="javascript">
+    MochiKit.DOM.addLoadEvent(drawSequencesGraph);
+</script>
+
+<body>
+<div>
+    <canvas id="graph" height="150" width="430"></canvas>
+</div>
+</body>
+</html>

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/js.html
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/js.html	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/js.html	Thu Feb  1 20:30:50 2007
@@ -8,8 +8,6 @@
 <script language="javascript" src="extensions/core/js/esb.js"></script>
 <script language="javascript" src="extensions/core/js/mediators.js"></script>
 <script language="javascript" src="extensions/core/js/registry.js"></script>
-<script language="javascript" src="extensions/core/js/save.js"></script>
-<!--<script language="javascript" src="extensions/core/js/esb_statistics.js"></script>-->
 <script language="javascript" src="extensions/core/js/commons.js"></script>
 <script language="javascript" src="extensions/core/js/config.js"></script>
 <script language="javascript" src="extensions/core/js/_proxyservices.js"></script>
@@ -17,6 +15,13 @@
 <script language="javascript" src="extensions/core/js/mediators/property.js"></script>
 <script language="javascript" src="extensions/core/js/mediators/mediators.js"></script>
 <script language="javascript" src="extensions/core/js/statistics.js"></script>
+<script language="javascript" src="extensions/core/js/graphs.js"></script>
+<script language="javascript" src="extensions/core/js/mochikit/MochiKit.js"></script>
+<script language="javascript" src="extensions/core/js/plotkit/Base.js"></script>
+<script language="javascript" src="extensions/core/js/plotkit/Layout.js"></script>
+<script language="javascript" src="extensions/core/js/plotkit/Canvas.js"></script>
+<script language="javascript" src="extensions/core/js/plotkit/SweetCanvas.js"></script>
+<script language="javascript" src="extensions/core/js/plotkit/excanvas.js"></script>
 <!--
   ~ Copyright (c) 2006, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
   ~

Added: esb/java/trunk/modules/distribution/src/main/www/extensions/core/js/graphs.js
==============================================================================
--- (empty file)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/js/graphs.js	Thu Feb  1 20:30:50 2007
@@ -0,0 +1,31 @@
+/*This js mainly concern with the data structures related to graphs*/
+
+//////////////////////////////////////////////////////////////////////
+
+function DataSetArray() {
+    this.dataSet = new Array();
+}
+function XTicksArray() {
+    this.array = new Array();
+}
+function getXTicks() {
+    return this.array;
+}
+function getDataSets() {
+    return this.dataSet;
+}
+function addXTicks(name) {
+    this.array[this.array.length] = {v:this.array.length,label:name};
+}
+function addData(value) {
+    //    alert(value);
+    this.dataSet[this.dataSet.length] = [this.dataSet.length,value];
+}
+
+
+XTicksArray.prototype.get = getXTicks;
+XTicksArray.prototype.add = addXTicks;
+
+DataSetArray.prototype.get = getDataSets;
+DataSetArray.prototype.add = addData;
+

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/js/statistics.js
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/js/statistics.js	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/js/statistics.js	Thu Feb  1 20:30:50 2007
@@ -14,18 +14,165 @@
  * limitations under the License.
  */
 var xslFilepath  ;
+var serverDataSet ;
+var proxyServiceDataSet ;
+var endPointDataSet ;
+var sequenceDataSet ;
+
+var xTicksArrayServerGraph ;
+var xTicksArrayProxyServiceGraph ;
+var xTicksArrayEndPointGraph ;
+var xTicksArraySequenceGraph ;
+
+var showGraphDivHome = false;
+var showGraphDivInterval = 0;
+var REFRESH_GRAPHS = 70000;
+
+function draw(xTicks, dataset) {
+    var options = {
+        "IECanvasHTC": "/plotkit/iecanvas.htc",
+        "axisLabelColor": Color.blackColor(),
+        "axisLabelFont": "Arial",
+        "axisLabelFontSize": 12,
+        "axisLabelWidth": 180,
+        "colorScheme": PlotKit.Base.palette(PlotKit.Base.baseColors()[0]),
+        "padding": {left: 2, right: 2, top: 2, bottom: 2},
+        "xTicks": xTicks,
+        "pieRadius": 0.3,
+        "drawYAxis": false
+    };
+
+    var layout = new PlotKit.Layout("pie", options);
+    layout.addDataset("sqrt", dataset);
+    layout.evaluate();
+    var canvas = MochiKit.DOM.getElement("graph");
+    var plotter = new PlotKit.SweetCanvasRenderer(canvas, layout, options);
+    plotter.render();
+
+}
+function drawServerGraph() {
+    draw(top.xTicksArrayServerGraph.get(), top.serverDataSet.get());
+}
+function drawProxyServiceGraph() {
+    draw(top.xTicksArrayProxyServiceGraph.get(), top.proxyServiceDataSet.get());
+}
+function drawEndPointGraph() {
+    draw(top.xTicksArrayEndPointGraph.get(), top.endPointDataSet.get());
+}
+function drawSequencesGraph() {
+    draw(top.xTicksArraySequenceGraph.get(), top.sequenceDataSet.get());
+}
 function globalStatisticsSettings() {
     var objDiv = document.getElementById("divStatistics");
     showStatistics();
 }
-function showStatistics() {
+function fillDataForGraph(xTicksArray, dataSetArray, valueStr) {
+    var values = valueStr.split(";");
+    for (var i = 0; i < values.length - 1; i++) {
+        var aValue = values[i].split(",");
+        xTicksArray.add(aValue[0]);
+        dataSetArray.add(parseFloat(aValue[1]));
+    }
+}
+function loadDataSets() {
+    var body_xml = '<ns1:getDataForGraphRequest xmlns:ns1="http://org.apache.synapse/xsd">' +
+                   ' </ns1:getDataForGraphRequest>';
+    var callURL = serverURL + "/" + "ServiceAdmin" + "/" + "getDataForGraph";
+    send("getDataForGraph", body_xml, "", callURL, "", false, loadDataSetsCallBack);
+}
+function loadDataSetsCallBack() {
     if (!onError()) {
         return;
     }
+    var data = getBody(xhReq.responseXML);
+    var browsername = navigator.appName;
+    var serverStr ;
+    var psStr ;
+    var epStr ;
+    var seqStr ;
+    try {
+        if (browsername.indexOf(NETSCAPE_BROWSER_NAME) != -1) {
+            serverStr = data.getElementsByTagName("serverData")[0].textContent;
+            psStr = data.getElementsByTagName("proxyServiceData")[0].textContent;
+            epStr = data.getElementsByTagName("endPointData")[0].textContent;
+            seqStr = data.getElementsByTagName("sequenceData")[0].textContent;
+        }
+        else if (browsername.indexOf(IE_BROWSER_NAME) != -1) {
+            serverStr = data.getElementsByTagName("serverData")[0].text;
+            psStr = data.getElementsByTagName("proxyServiceData")[0].text;
+            epStr = data.getElementsByTagName("endPointData")[0].text;
+            seqStr = data.getElementsByTagName("sequenceData")[0].text;
+        }
+    }
+    catch(e)
+    {
+    }
+    if (serverStr != "") {
+        serverDataSet = new DataSetArray();
+        xTicksArrayServerGraph = new XTicksArray();
+        fillDataForGraph(xTicksArrayServerGraph, serverDataSet, serverStr);
+    }
+    if (psStr != "") {
+        proxyServiceDataSet = new DataSetArray();
+        xTicksArrayProxyServiceGraph = new XTicksArray();
+        fillDataForGraph(xTicksArrayProxyServiceGraph, proxyServiceDataSet, psStr);
+    }
+    if (epStr != "") {
+        endPointDataSet = new DataSetArray();
+        xTicksArrayEndPointGraph = new XTicksArray();
+        fillDataForGraph(xTicksArrayEndPointGraph, endPointDataSet, epStr);
+    }
+    if (seqStr != "") {
+        sequenceDataSet = new DataSetArray();
+        xTicksArraySequenceGraph = new XTicksArray();
+        fillDataForGraph(xTicksArraySequenceGraph, sequenceDataSet, seqStr);
+    }
     var objDiv = document.getElementById("divStatistics");
     callbackhelper("statistics/statisticshome.xsl", objDiv);
     showOnlyOneMain(objDiv);
+
+    var graphObj = document.getElementById('divServerGraph');
+    if (serverStr != "") {
+        graphObj.src = "extensions/core/graph1.html";
+    }
+    var graphObj2 = document.getElementById('divProxyServiceGraph');
+    if (psStr != "") {
+        graphObj2.src = "extensions/core/graph2.html";
+    }
+    var graphObj3 = document.getElementById('divEndPointsGraph');
+    if (epStr != "") {
+        graphObj3.src = "extensions/core/graph3.html";
+    }
+    var graphObj4 = document.getElementById('divSequencesGraph');
+    if (seqStr != "") {
+        graphObj4.src = "extensions/core/graph4.html";
+    }
+    if (showGraphDivInterval == 0) {
+        showGraphDivInterval = setInterval('refreshGraphs()', REFRESH_GRAPHS);
+    }
+
 }
+function showStatistics() {
+    loadDataSets();
+    if (!onError()) {
+        return;
+    }
+
+}
+
+function refreshGraphs() {
+    if (document.getElementById("divStatistics").style.display == 'none') {
+        clearInterval(showGraphDivInterval);
+        showGraphDivInterval = 0;
+        // this is to counter if focus to divHome is vanished.
+        return false;
+
+    }
+
+    loadDataSets();
+
+}
+
 function showServersInTree(serverid) {
     var body_xml = '<ns1:getSingleServerStatisticsRequest xmlns:ns1="http://org.apache.synapse/xsd">' +
                    '<serverID>' + serverid + '</serverID>' +
@@ -53,7 +200,6 @@
     }
     var data = getBody(xhReq.responseXML);
     var objDiv = document.getElementById("divStatistics");
-    // alert('xml  :  ' + xmlSerializerToString(data));
     callbackhelper("statistics/list_ps.xsl", objDiv);
     showOnlyOneMain(objDiv);
 }

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/commonstatistics.xsl
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/commonstatistics.xsl	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/commonstatistics.xsl	Thu Feb  1 20:30:50 2007
@@ -24,7 +24,6 @@
                     <tbody>
                         <tr>
                             <td>
-                                <br></br>
                                 <table class="stat1">
                                     <th>Server Name</th>
                                     <th>Message Flow Direction</th>
@@ -54,8 +53,7 @@
                 <i>
                     <font style='color: brown'>Currently there are no Statistics present</font>
                 </i>
-                <br/>
-                <br/>
+                <br/>               
             </xsl:otherwise>
         </xsl:choose>
     </xsl:template>

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_epr.xsl
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_epr.xsl	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_epr.xsl	Thu Feb  1 20:30:50 2007
@@ -56,8 +56,7 @@
                                                 </img>
                                                 <a href="#">
                                                     <xsl:value-of select="concat('EndPoint Name - ',child::text())"/>
-                                                </a>
-                                                <br/>
+                                                </a>                                                 
                                             </span>
                                         </div>
                                     </td>

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_ps.xsl
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_ps.xsl	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_ps.xsl	Thu Feb  1 20:30:50 2007
@@ -56,8 +56,7 @@
                                                 </img>
                                                 <a href="#">
                                                     <xsl:value-of select="concat('Proxy Service Name - ',child::text())"/>
-                                                </a>
-                                                <br/>
+                                                </a>                                                 
                                             </span>
                                         </div>
                                     </td>

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_seq.xsl
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_seq.xsl	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_seq.xsl	Thu Feb  1 20:30:50 2007
@@ -56,8 +56,7 @@
                                                 </img>
                                                 <a href="#">
                                                     <xsl:value-of select="concat('Sequence Name - ',child::text())"/>
-                                                </a>
-                                                <br/>
+                                                </a>                                                 
                                             </span>
                                         </div>
                                     </td>
@@ -73,7 +72,6 @@
                             Present</font>
                     </i>
                     <br/>
-                    <br/>
                 </xsl:otherwise>
             </xsl:choose>
         </div>

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_servers.xsl
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_servers.xsl	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_servers.xsl	Thu Feb  1 20:30:50 2007
@@ -55,8 +55,7 @@
                                                 </img>
                                                 <a href="#">
                                                     <xsl:value-of select="concat('Server Name - ',child::text())"/>
-                                                </a>
-                                                <br/>
+                                                </a>                                                  
                                             </span>
                                         </div>
                                     </td>

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_service_type.xsl
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_service_type.xsl	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/list_service_type.xsl	Thu Feb  1 20:30:50 2007
@@ -54,8 +54,7 @@
                                             </xsl:attribute>
                                             <img src="extensions/core/images/tree_closed.gif"><xsl:attribute name="id">Proxy_Services_img</xsl:attribute>
                                             </img>
-                                            <a href="#">Proxy Services</a>
-                                            <br/>
+                                            <a href="#">Proxy Services</a>                                              
                                         </span>
                                     </div>
                                 </td>
@@ -71,7 +70,6 @@
                                             <img src="extensions/core/images/tree_closed.gif"><xsl:attribute name="id">Synapse_Service_img</xsl:attribute>
                                             </img>
                                             <a href="#">Synapse Service </a>
-                                            <br/>
                                         </span>
                                     </div>
                                 </td>

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/psstatistics.xsl
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/psstatistics.xsl	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/psstatistics.xsl	Thu Feb  1 20:30:50 2007
@@ -24,8 +24,8 @@
             <a href="#" onClick="javascript:globalStatisticsSettings(); return false;">
                 System Statistics &#160;</a>
             &#160;&gt;&#160;
-            <a href="#" onClick="javascript:listServers(); return false;">
-                Servers Statistics &#160;</a>
+            <a href="#" onClick="javascript:listProxyServices(); return false;">
+               ProxyServices Statistics &#160;</a>
             &#160;&gt;&#160; Proxy Service Statistics
             <br></br>
         </h4>

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/serverstatistics.xsl
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/serverstatistics.xsl	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/serverstatistics.xsl	Thu Feb  1 20:30:50 2007
@@ -24,7 +24,6 @@
                     <tbody>
                         <tr>
                             <td>
-                                <br></br>
                                 <table class="stat1">
                                     <th>Server Name</th>
                                     <th>Message Flow Direction</th>

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/statistics.xsl
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/statistics.xsl	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/statistics.xsl	Thu Feb  1 20:30:50 2007
@@ -23,7 +23,6 @@
                 <table class="sample1">
                     <tbody>
                         <tr>
-                            <br></br>
                             <td>
                                 <div>
                                     <table class="stat1">

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/statisticshome.xsl
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/statisticshome.xsl	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/statisticshome.xsl	Thu Feb  1 20:30:50 2007
@@ -34,6 +34,11 @@
                         <xsl:text>Servers Statistics Summary</xsl:text>
                     </xsl:element>
                 </h4>
+                <iframe>
+                        <xsl:attribute name="id">divServerGraph</xsl:attribute>
+                        <xsl:attribute name="frameborder">0</xsl:attribute>
+                        <xsl:attribute name="scrolling">no</xsl:attribute>
+                </iframe>
             </div>
             <div id="boxtwo1">
                 <h4>
@@ -44,6 +49,11 @@
                         <xsl:text>Proxy Services Statistics Summary</xsl:text>
                     </xsl:element>
                 </h4>
+                 <iframe>
+                        <xsl:attribute name="id">divProxyServiceGraph</xsl:attribute>
+                        <xsl:attribute name="frameborder">0</xsl:attribute>
+                        <xsl:attribute name="scrolling">no</xsl:attribute>
+                </iframe>
             </div>
             <div id="boxthree1">
                 <h4>
@@ -51,8 +61,13 @@
                         <xsl:attribute name="href">#</xsl:attribute>
                         <xsl:attribute name="onClick">javascript:listEndPoint(); return false;
                         </xsl:attribute>
-                        <xsl:text>End Points Statistics Summary</xsl:text>
+                        <xsl:text>EndPoints Statistics Summary</xsl:text>
                     </xsl:element>
+                    <iframe>
+                        <xsl:attribute name="id">divEndPointsGraph</xsl:attribute>
+                        <xsl:attribute name="frameborder">0</xsl:attribute>
+                        <xsl:attribute name="scrolling">no</xsl:attribute>
+                   </iframe>
                 </h4>
             </div>
             <div id="boxfour1">
@@ -63,6 +78,11 @@
                         </xsl:attribute>
                         <xsl:text>Sequences Statistics Summary</xsl:text>
                     </xsl:element>
+                    <iframe>
+                        <xsl:attribute name="id">divSequencesGraph</xsl:attribute>
+                        <xsl:attribute name="frameborder">0</xsl:attribute>
+                        <xsl:attribute name="scrolling">no</xsl:attribute>                           
+                    </iframe>
                 </h4>
             </div>
         </div>

Modified: esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/syapseservicestatistics.xsl
==============================================================================
--- esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/syapseservicestatistics.xsl	(original)
+++ esb/java/trunk/modules/distribution/src/main/www/extensions/core/xslt/statistics/syapseservicestatistics.xsl	Thu Feb  1 20:30:50 2007
@@ -24,8 +24,8 @@
             <a href="#" onClick="javascript:globalStatisticsSettings(); return false;">
                 System Statistics &#160;</a>
             &#160;&gt;&#160;
-            <a href="#" onClick="javascript:listServers(); return false;">
-                Servers Statistics &#160;</a>
+            <a href="#" onClick="javascript:listProxyServices(); return false;">
+                ProxyServices Statistics &#160;</a>
             &#160;&gt;&#160; Synapse Service Statistics
             <br></br>
         </h4>

Modified: esb/java/trunk/pom.xml
==============================================================================
--- esb/java/trunk/pom.xml	(original)
+++ esb/java/trunk/pom.xml	Thu Feb  1 20:30:50 2007
@@ -336,7 +336,14 @@
                 </exclusion>
             </exclusions>
         </dependency>
-
+        <!--  -->
+         <dependency>
+            <groupId>ws-commons</groupId>
+            <artifactId>tcpmon</artifactId>
+            <version>1.0</version>
+            <type>jar</type>
+            <scope>provided</scope>
+        </dependency>
         <!-- AdminUI -->
         <dependency>
             <groupId>org.wso2.adminui</groupId>
@@ -351,6 +358,12 @@
             <type>zip</type>
             <scope>provided</scope>
         </dependency>
+         <dependency>
+            <groupId>org.wso2.adminui</groupId>
+            <artifactId>wso2-adminui-graphs-zip</artifactId>
+            <version>${wso2.adminui.version.graphs}</version>
+            <type>zip</type>
+        </dependency>
 
         <!-- Synapse Jars-->
         <dependency>
@@ -862,7 +875,7 @@
         <wso2wsas.version>1.2-SNAPSHOT</wso2wsas.version>
         <wso2wsf.version>1.2-SNAPSHOT</wso2wsf.version>
         <wso2.adminui.version>1.1</wso2.adminui.version>
-
+        <wso2.adminui.version.graphs>1.1</wso2.adminui.version.graphs>
         <synapse.version>SNAPSHOT</synapse.version>
         <spring.version>1.2.6</spring.version>
         <js.version>1.6R2</js.version>




More information about the Esb-java-dev mailing list