modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/graph/ResourceGraphPortlet.java
| 16 +
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/resource/ResourceMetricsPortlet.java
| 10
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractD3GraphListView.java
| 3
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/AbstractGraph.java
| 9
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/AvailabilityLineGraphType.java
| 3
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/HasD3MetricJsniChart.java
| 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricGraphData.java
| 21 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricLineGraph.java
| 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricNvd3BarChartGraph.java
| 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricStackedBarGraph.java
| 4
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/D3GroupGraphListView.java
| 4
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/AvailabilityD3Graph.java
| 120 ----------
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/D3GraphListView.java
| 19 +
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceMetricD3Graph.java
| 4
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityBarView.java
| 28 --
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityD3Graph.java
| 116 +++++++++
modules/enterprise/gui/coregui/src/main/webapp/js/rhq.js
| 13 -
17 files changed, 174 insertions(+), 202 deletions(-)
New commits:
commit 8e7025535b08e84dff3077f76ec99d2c8b73e7f7
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Tue Mar 5 11:53:08 2013 -0800
Charting - Add entity name to dashboard charts. Rename yAxisTitle to chartTitle to
reflect its real purpose.
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/graph/ResourceGraphPortlet.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/graph/ResourceGraphPortlet.java
index 0eb2cd5..482c650 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/graph/ResourceGraphPortlet.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/graph/ResourceGraphPortlet.java
@@ -154,6 +154,7 @@ public class ResourceGraphPortlet extends ResourceMetricD3Graph
implements Custo
Log.debug("Found portlet measurement definition
!" + def);
getJsniChart().setEntityId(resource.getId());
+ getJsniChart().setEntityName(resource.getName());
getJsniChart().setDefinition(def);
queryMetricsDataForDashboardGraphs(resource.getId(),
def);
break;
@@ -196,14 +197,18 @@ public class ResourceGraphPortlet extends ResourceMetricD3Graph
implements Custo
@Override
public void onFailure(Throwable caught) {
CoreGUI.getErrorHandler().handleError(MSG.view_resource_monitor_graphs_loadFailed(),
caught);
- countDownLatch.countDown();
+ if(countDownLatch != null){
+ countDownLatch.countDown();
+ }
}
@Override
public void onSuccess(final
List<List<MeasurementDataNumericHighLowComposite>> measurementData) {
Log.debug("Dashboard Metric data in: " +
(System.currentTimeMillis() - startTime) + " ms.");
graph.getMetricGraphData().setMetricData(measurementData.get(0));
- countDownLatch.countDown();
+ if(countDownLatch != null){
+ countDownLatch.countDown();
+ }
}
});
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/AbstractGraph.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/AbstractGraph.java
index bfe5878..0559732 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/AbstractGraph.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/AbstractGraph.java
@@ -20,7 +20,6 @@ package
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype;
import java.util.List;
-import org.rhq.core.domain.measurement.Availability;
import org.rhq.core.domain.measurement.MeasurementDefinition;
import org.rhq.core.domain.measurement.composite.MeasurementDataNumericHighLowComposite;
import org.rhq.core.domain.measurement.composite.MeasurementOOBComposite;
@@ -60,6 +59,10 @@ public abstract class AbstractGraph implements HasD3MetricJsniChart {
public String getEntityName() {
return metricGraphData.getEntityName();
}
+ @Override
+ public void setEntityName(String entityName) {
+ metricGraphData.setEntityName(entityName);
+ }
public int getDefinitionId() {
return metricGraphData.getDefinitionId();
@@ -159,8 +162,8 @@ public abstract class AbstractGraph implements HasD3MetricJsniChart {
metricGraphData.setChartHeight(chartHeight);
}
- public String getYAxisTitle() {
- return metricGraphData != null ? metricGraphData.getYAxisTitle() : "";
+ public String getChartTitle() {
+ return metricGraphData != null ? metricGraphData.getChartTitle() : "";
}
public String getYAxisUnits() {
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/HasD3MetricJsniChart.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/HasD3MetricJsniChart.java
index 1d7e222..4ae5b59 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/HasD3MetricJsniChart.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/HasD3MetricJsniChart.java
@@ -32,6 +32,8 @@ public interface HasD3MetricJsniChart
{
void drawJsniChart();
void setEntityId(int entityId) ;
+ void setEntityName(String entityName) ;
+ //@todo: defId is redundant to MD
void setDefinitionId(int definitionId) ;
void setDefinition(MeasurementDefinition measurementDefinition) ;
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricGraphData.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricGraphData.java
index 48d892c..bc90a9b 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricGraphData.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricGraphData.java
@@ -112,6 +112,11 @@ public class MetricGraphData implements JsonMetricProducer {
return entityName;
}
+ public void setEntityName(String entityName) {
+ this.entityName = entityName;
+ //this.definition = null;
+ }
+
public int getDefinitionId() {
return definitionId;
}
@@ -207,18 +212,10 @@ public class MetricGraphData implements JsonMetricProducer {
this.chartHeight = chartHeight;
}
- public String getYAxisTitle() {
+ public String getChartTitle() {
+
+ return entityName + " - "+definition.getDisplayName();
- //Log.debug("** Definition: " + definition + ", id: " +
definitionId);
- if (null != definition.getDisplayName() &&
definition.getDisplayName().length() > 55) {
- return definition.getDisplayName().substring(0, 55) + "...";
- } else {
- if (definition == null) {
- return "";
- } else {
- return definition.getDisplayName();
- }
- }
}
/**
@@ -229,7 +226,7 @@ public class MetricGraphData implements JsonMetricProducer {
*/
public String getYAxisUnits() {
if (adjustedMeasurementUnits == null) {
- Log.error("AbstractMetricD3GraphView.adjustedMeasurementUnits is
populated by getJsonMetrics. Make sure it is called first.");
+ Log.warn("AbstractMetricD3GraphView.adjustedMeasurementUnits is
populated by getJsonMetrics. Make sure it is called first.");
return "";
} else {
return adjustedMeasurementUnits.toString();
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricLineGraph.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricLineGraph.java
index 304cd0a..1fa2902 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricLineGraph.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricLineGraph.java
@@ -43,7 +43,7 @@ public final class MetricLineGraph extends AbstractGraph {
chartHandle = "#rChart-"+chartId,
chartSelection = chartHandle + " svg",
json =
$wnd.jQuery.parseJSON(global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData::getJsonMetrics()()),
- yAxisLabel =
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData::getYAxisTitle()(),
+ yAxisLabel =
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData::getChartTitle()(),
yAxisUnits =
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData::getYAxisUnits()(),
xAxisLabel =
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData::getXAxisTitle()();
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricNvd3BarChartGraph.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricNvd3BarChartGraph.java
index a98005c..9d1165e 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricNvd3BarChartGraph.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricNvd3BarChartGraph.java
@@ -44,7 +44,7 @@ public final class MetricNvd3BarChartGraph extends AbstractGraph
chartHandle = "#rChart-"+chartId,
chartSelection = chartHandle + " svg",
json =
$wnd.jQuery.parseJSON(global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData::getJsonMetrics()()),
- yAxisLabel =
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData::getYAxisTitle()(),
+ yAxisLabel =
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData::getChartTitle()(),
yAxisUnits =
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData::getYAxisUnits()(),
xAxisLabel =
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData::getXAxisTitle()(),
displayDayOfWeek =
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData::shouldDisplayDayOfWeekInXAxisLabel()(),
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricStackedBarGraph.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricStackedBarGraph.java
index 3a29511..86c1891 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricStackedBarGraph.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/MetricStackedBarGraph.java
@@ -50,7 +50,7 @@ public final class MetricStackedBarGraph extends AbstractGraph {
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AbstractGraph::getChartHeight()(),
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AbstractGraph::getJsonMetrics()(),
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AbstractGraph::getXAxisTitle()(),
-
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AbstractGraph::getYAxisTitle()(),
+
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AbstractGraph::getChartTitle()(),
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AbstractGraph::getYAxisUnits()(),
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AbstractGraph::getChartTitleMinLabel()(),
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AbstractGraph::getChartTitleAvgLabel()(),
@@ -573,7 +573,7 @@ public final class MetricStackedBarGraph extends AbstractGraph {
console.log("chart id: " + chartContext.chartSelection);
//console.log("Json Data:\n"+chartContext.data);
- createHeader(chartContext.yAxisLabel);
+ createHeader(chartContext.chartTitle);
createMinAvgPeakSidePanel(chartContext.minChartTitle, min,
chartContext.avgChartTitle, avg, chartContext.peakChartTitle, peak,
chartContext.yAxisUnits );
createYAxisGridLines();
createStackedBars();
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceMetricD3Graph.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceMetricD3Graph.java
index fdf5617..682dd0f 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceMetricD3Graph.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceMetricD3Graph.java
@@ -23,7 +23,7 @@ import
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.Abstract
import
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.HasD3MetricJsniChart;
/**
- * A D3 graph representation for graphing metrics.
+ * A D3 graph implementation for graphing metrics.
*/
public class ResourceMetricD3Graph extends AbstractMetricD3GraphView {
@@ -34,13 +34,11 @@ public class ResourceMetricD3Graph extends AbstractMetricD3GraphView
{
*/
public ResourceMetricD3Graph(String locatorId) {
super(locatorId);
- //setChartHeight("150px");
}
public ResourceMetricD3Graph(String locatorId, AbstractGraph graph) {
super(locatorId, graph);
- //setChartHeight("150px");
}
diff --git a/modules/enterprise/gui/coregui/src/main/webapp/js/rhq.js
b/modules/enterprise/gui/coregui/src/main/webapp/js/rhq.js
index 88268e5..6cd3a08 100644
--- a/modules/enterprise/gui/coregui/src/main/webapp/js/rhq.js
+++ b/modules/enterprise/gui/coregui/src/main/webapp/js/rhq.js
@@ -9,7 +9,7 @@
* A ChartContext can be passed to multiple chart renders to display different chart
types
* of that data.
*/
-var ChartContext = function (chartId, chartHeight, metricsData, xAxisLabel, yAxisLabel,
yAxisUnits, minChartTitle, avgChartTitle, peakChartTitle, dateLabel, timeLabel, downLabel,
unknownLabel, noDataLabel, hoverStartLabel,hoverEndLabel, hoverPeriodLabel,
hoverBarLabel)
+var ChartContext = function (chartId, chartHeight, metricsData, xAxisLabel, chartTitle,
yAxisUnits, minChartTitle, avgChartTitle, peakChartTitle, dateLabel, timeLabel, downLabel,
unknownLabel, noDataLabel, hoverStartLabel,hoverEndLabel, hoverPeriodLabel,
hoverBarLabel)
{
"use strict";
if(!(this instanceof ChartContext)){
@@ -21,7 +21,7 @@ var ChartContext = function (chartId, chartHeight, metricsData,
xAxisLabel, yAxi
this.chartHeight = chartHeight;
this.data = jQuery.parseJSON(metricsData); // make into json
this.xAxisLabel = xAxisLabel;
- this.yAxisLabel = yAxisLabel;
+ this.chartTitle = chartTitle;
this.yAxisUnits = yAxisUnits;
this.minChartTitle = minChartTitle;
this.avgChartTitle = avgChartTitle;
@@ -35,14 +35,7 @@ var ChartContext = function (chartId, chartHeight, metricsData,
xAxisLabel, yAxi
this.hoverEndLabel = hoverEndLabel;
this.hoverPeriodLabel = hoverPeriodLabel;
this.hoverBarLabel = hoverBarLabel;
- /**
- * Can be called to validate the charting arguments.
- * @return {boolean}
- */
- this.validate = function ()
- {
- return this.chartId !== undefined && this.data !== undefined;
- };
+
},
AvailChartContext = function (chartId, availData, dateLabel, timeLabel, hoverStartLabel,
hoverEndLabel, hoverBarLabel, availabilityLabel) {
"use strict";
commit 911a5d1aecc873a681d1701dbe4bf360df3ea0bd
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Tue Mar 5 09:20:39 2013 -0800
Charting - Remove chart.drawChart() and use existing chart.drawJsni() instead.
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/graph/ResourceGraphPortlet.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/graph/ResourceGraphPortlet.java
index b2a168e..0eb2cd5 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/graph/ResourceGraphPortlet.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/graph/ResourceGraphPortlet.java
@@ -215,6 +215,8 @@ public class ResourceGraphPortlet extends ResourceMetricD3Graph
implements Custo
@Override
protected void onDraw() {
+ Log.debug("ResourceGraphPortlet.onDraw()");
+
DashboardPortlet storedPortlet = portletWindow.getStoredPortlet();
PropertySimple simple =
storedPortlet.getConfiguration().getSimple(CFG_RESOURCE_ID);
@@ -297,7 +299,7 @@ public class ResourceGraphPortlet extends ResourceMetricD3Graph
implements Custo
@Override
public void redraw() {
- Log.debug("Redraw Portlet and set data");
+ Log.debug("Redraw Portlet Graph and set data");
super.redraw();
removeMembers(getMembers());
@@ -311,7 +313,8 @@ public class ResourceGraphPortlet extends ResourceMetricD3Graph
implements Custo
graph.getMetricGraphData().setEntityId(simple.getIntegerValue());
PropertySimple simpleDefId =
storedPortlet.getConfiguration().getSimple(CFG_DEFINITION_ID);
graph.getMetricGraphData().setDefinitionId(simpleDefId.getIntegerValue());
- drawGraph();
+ drawJsniChart();
+ markForRedraw();
}
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/D3GroupGraphListView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/D3GroupGraphListView.java
index 4954dda..7f58cf2 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/D3GroupGraphListView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/D3GroupGraphListView.java
@@ -137,7 +137,7 @@ public class D3GroupGraphListView extends AbstractD3GraphListView {
}
availabilityGraph.setMetricData(result.get(0));
availabilityGraph.setAvailabilityList(availabilityList);
- availabilityGraph.drawGraph();
+ availabilityGraph.drawJsniChart();
}
}
});
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/D3GraphListView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/D3GraphListView.java
index 4602043..5b997b4 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/D3GraphListView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/D3GraphListView.java
@@ -141,7 +141,7 @@ public class D3GraphListView extends AbstractD3GraphListView {
public void redrawGraphs() {
this.onDraw();
- availabilityGraph.drawGraph();
+ availabilityGraph.drawJsniChart();
}
/**
@@ -215,7 +215,7 @@ public class D3GraphListView extends AbstractD3GraphListView {
// availability data set in there for the dropdowns
already
availabilityGraph.setMetricData(metricsDataList.get(0));
availabilityGraph.setAvailabilityList(availabilityList);
- availabilityGraph.drawGraph();
+ availabilityGraph.drawJsniChart();
}
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityD3Graph.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityD3Graph.java
index fc98af5..8e05abf 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityD3Graph.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityD3Graph.java
@@ -59,7 +59,7 @@ public class AvailabilityD3Graph extends LocatableVLayout implements
Availabilit
super.parentResized();
removeMembers(getMembers());
createGraphMarker();
- drawGraph();
+ drawJsniChart();
}
public void setMetricData(List<MeasurementDataNumericHighLowComposite>
metricData) {
@@ -71,8 +71,13 @@ public class AvailabilityD3Graph extends LocatableVLayout implements
Availabilit
}
/**
- * Create the graph marker to be later filled in with a graph from d3.
+ * Setup the page elements especially the div and svg elements that serve as
+ * placeholders for the d3 stuff to grab onto and add svg tags to render the chart.
+ * Later the drawJsniGraph() is called to actually fill in the div/svg element
+ * created here with the actual svg element.
+ *
*/
+
public void createGraphMarker() {
Log.debug("drawGraph marker in AvailabilityD3Graph for: " +
availabilityGraphType.getChartId());
@@ -87,17 +92,6 @@ public class AvailabilityD3Graph extends LocatableVLayout implements
Availabilit
}
- /**
- * Setup the page elements especially the div and svg elements that serve as
- * placeholders for the d3 stuff to grab onto and add svg tags to render the chart.
- * Later the drawJsniGraph() is called to actually fill in the div/svg element
- * created here with the actual svg element.
- *
- */
- public void drawGraph() {
-
- drawJsniChart();
- }
@Override
public void destroy() {
@@ -109,6 +103,8 @@ public class AvailabilityD3Graph extends LocatableVLayout implements
Availabilit
super.hide();
}
+
+
/**
* Delegate the call to rendering the JSNI chart.
* This way the chart type can be swapped out at any time.
commit 8cd6f96eb42cc3044f3edab51ac37db60b9ea726
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Tue Mar 5 09:09:00 2013 -0800
Charting - Deprecate AvailabilityBarView replaced with AvailabilityD3Graph.
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityBarView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityBarView.java
index 97e9c8a..5d40b1b 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityBarView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityBarView.java
@@ -45,6 +45,7 @@ import
org.rhq.enterprise.gui.coregui.client.util.MeasurementConverterClient;
*
* @author Greg Hinkle
*/
+@Deprecated
public class AvailabilityBarView extends HLayout {
Messages MSG = CoreGUI.getMessages();
@@ -72,7 +73,6 @@ public class AvailabilityBarView extends HLayout {
}
public void onSuccess(PageList<Availability> result) {
- Log.info("\n\n******Dude avail I have: "+result.size());
update(result);
}
});
@@ -133,31 +133,5 @@ public class AvailabilityBarView extends HLayout {
Img rightCap = new Img("availBar/rightCap.png", 8, 28);
addMember(rightCap);
- /* StringBuffer buf = new StringBuffer("<table
cellpadding=\"0\" cellspacing=\"0\" width=\"100%\"><tr
height=\"28\">");
-
- buf.append("<td width=\"8px\"
class=\"availBarLeftCap\"> </td>");
-
-
- for (Availability a : result) {
-
- long endTime = a.getEndTime() != null ? a.getEndTime().getTime() :
System.currentTimeMillis();
-
-
- double width = (((double) (endTime - a.getStartTime().getTime()) / diff) *
100);
- String widthString = width + "%";
- if (width == 0) {
- widthString = "2px";
- }
-
- buf.append("<td width=\"" + widthString + "\"
class=\"" + (a.getAvailabilityType() == AvailabilityType.UP ?
"availBarUp" : "availBarDown") +
"\"> </td>");
- }
- buf.append("<td width=\"8px\"
class=\"availBarRightCap\"> </td>");
- buf.append("</tr></table>");
-
-
- HTMLFlow bar = new HTMLFlow(buf.toString());
-
- addMember(bar);*/
-
}
}
commit 5b308aa4e3cb7106a79e3f9725ee8a72fa676c35
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Tue Mar 5 09:07:57 2013 -0800
Charting - Make availability chart an option on Factory constructor to include
availability or not when creating a D3GraphListView. Move AvailabilityD3Graph to avail
directory.
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/resource/ResourceMetricsPortlet.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/resource/ResourceMetricsPortlet.java
index 6f3aad7..9dc6fa3 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/resource/ResourceMetricsPortlet.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/resource/ResourceMetricsPortlet.java
@@ -58,7 +58,7 @@ import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AvailabilityLineGraphType;
import
org.rhq.enterprise.gui.coregui.client.inventory.common.detail.summary.AbstractActivityView;
import
org.rhq.enterprise.gui.coregui.client.inventory.common.detail.summary.AbstractActivityView.ChartViewWindow;
-import
org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.AvailabilityD3Graph;
+import
org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.avail.AvailabilityD3Graph;
import
org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.D3GraphListView;
import
org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTypeRepository;
import org.rhq.enterprise.gui.coregui.client.util.BrowserUtility;
@@ -279,21 +279,15 @@ public class ResourceMetricsPortlet extends GroupMetricsPortlet {
ChartViewWindow window = new
ChartViewWindow(
recentMeasurementsContent
.extendLocatorId("ChartWindow"), title);
- final AvailabilityD3Graph
availabilityGraph = new AvailabilityD3Graph("avail", new
AvailabilityLineGraphType(resource.getId()));
- // first step in 2 step to
create d3 chart
- // create a placeholder for
avail graph
-
availabilityGraph.createGraphMarker();
final D3GraphListView
graphView = D3GraphListView.createSingleGraph(extendLocatorId("D3Graphs"),
-
resourceComposite.getResource(), md.getId());
+
resourceComposite.getResource(), md.getId(),true);
graphView.addSetButtonClickHandler(new ClickHandler()
{
@Override
public void
onClick(ClickEvent event)
{
-
availabilityGraph.drawGraph();
graphView.redrawGraphs();
-
}
});
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractD3GraphListView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractD3GraphListView.java
index 6ca58c0..0b9613c 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractD3GraphListView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractD3GraphListView.java
@@ -28,7 +28,7 @@ import org.rhq.core.domain.util.PageOrdering;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import
org.rhq.enterprise.gui.coregui.client.components.measurement.UserPreferencesMeasurementRangeEditor;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
-import
org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.AvailabilityD3Graph;
+import
org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.avail.AvailabilityD3Graph;
import org.rhq.enterprise.gui.coregui.client.util.Log;
import org.rhq.enterprise.gui.coregui.client.util.async.CountDownLatch;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableVLayout;
@@ -78,7 +78,6 @@ public abstract class AbstractD3GraphListView extends LocatableVLayout
{
for (Availability availability : availList) {
availabilityList.add(availability);
}
- Log.debug("avail list size: " +
availabilityList.size());
if (countDownLatch != null) {
countDownLatch.countDown();
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/AvailabilityLineGraphType.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/AvailabilityLineGraphType.java
index 30c7b8b..6ef2cde 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/AvailabilityLineGraphType.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/charttype/AvailabilityLineGraphType.java
@@ -86,9 +86,10 @@ public class AvailabilityLineGraphType {
break;
}
else if (availability.getEndTime() == null) {
+ // we are in the last, unbounded avail interval so assume
that the end is now
+ Date now = new Date();
sb.append(" \"availType\":\"" +
availability.getAvailabilityType() + "\", ");
sb.append(" \"availStart\":" +
availability.getStartTime() + ", ");
- Date now = new Date();
sb.append(" \"availEnd\":" +
now.getTime() + ",");
long availDuration = (new Date()).getTime() -
availability.getStartTime();
String availDurationString =
MeasurementConverterClient.format((double)availDuration,
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/D3GroupGraphListView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/D3GroupGraphListView.java
index e23a127..4954dda 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/D3GroupGraphListView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/D3GroupGraphListView.java
@@ -39,7 +39,7 @@ import
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.Availabi
import org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData;
import
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricStackedBarGraph;
import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractD3GraphListView;
-import
org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.AvailabilityD3Graph;
+import
org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.avail.AvailabilityD3Graph;
import
org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.ResourceMetricD3Graph;
import
org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTypeRepository;
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/AvailabilityD3Graph.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/AvailabilityD3Graph.java
deleted file mode 100644
index a8834c8..0000000
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/AvailabilityD3Graph.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * RHQ Management Platform
- * Copyright (C) 2005-2013 Red Hat, Inc.
- * All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation version 2 of the License.
- *
- * This program 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-package org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring;
-
-import java.util.List;
-
-import com.smartgwt.client.widgets.HTMLFlow;
-
-import org.rhq.core.domain.measurement.Availability;
-import org.rhq.core.domain.measurement.composite.MeasurementDataNumericHighLowComposite;
-import org.rhq.core.domain.util.PageList;
-import
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AvailabilityGraph;
-import
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AvailabilityLineGraphType;
-import org.rhq.enterprise.gui.coregui.client.util.Log;
-import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableVLayout;
-
-/**
- * A special graph implementation just for representing Availability (with hovers) for
- * a resource or resource group.
- *
- * @author Mike Thompson
- */
-public class AvailabilityD3Graph extends LocatableVLayout implements AvailabilityGraph {
-
- protected AvailabilityLineGraphType availabilityGraphType;
-
- public AvailabilityD3Graph(String locatorId, AvailabilityLineGraphType graphType) {
- super(locatorId);
- this.availabilityGraphType = graphType;
- setHeight(25);
- setWidth100();
- }
-
- @Override
- protected void onDraw() {
- super.onDraw();
- removeMembers(getMembers());
- createGraphMarker();
- }
-
- @Override
- public void parentResized() {
- super.parentResized();
- removeMembers(getMembers());
- createGraphMarker();
- drawGraph();
- }
-
- public void setMetricData(List<MeasurementDataNumericHighLowComposite>
metricData) {
- availabilityGraphType.setMetricData(metricData);
- }
-
- public void setAvailabilityList(PageList<Availability> availabilityList) {
- availabilityGraphType.setAvailabilityList(availabilityList);
- }
-
- /**
- * Create the graph marker to be later filled in with a graph from d3.
- */
- public void createGraphMarker() {
- Log.debug(" *** drawGraph marker in AvailabilityD3Graph for: " +
availabilityGraphType.getChartId());
-
- StringBuilder divAndSvgDefs = new StringBuilder();
- divAndSvgDefs.append("<div id=\"availChart-" +
availabilityGraphType.getChartId()
- + "\" ><svg
xmlns=\"http://www.w3.org/2000/svg\"
version=\"1.1\" style=\"height:20px;\">");
- divAndSvgDefs.append("</svg></div>");
- HTMLFlow graph = new HTMLFlow(divAndSvgDefs.toString());
- graph.setWidth100();
- graph.setHeight(25);
- addMember(graph);
-
- }
-
- /**
- * Setup the page elements especially the div and svg elements that serve as
- * placeholders for the d3 stuff to grab onto and add svg tags to render the chart.
- * Later the drawJsniGraph() is called to actually fill in the div/svg element
- * created here with the actual svg element.
- *
- */
- public void drawGraph() {
-
- drawJsniChart();
- }
-
- @Override
- public void destroy() {
- super.destroy();
- }
-
- @Override
- public void hide() {
- super.hide();
- }
-
- /**
- * Delegate the call to rendering the JSNI chart.
- * This way the chart type can be swapped out at any time.
- */
- public void drawJsniChart() {
- availabilityGraphType.drawJsniChart();
- }
-
-}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/D3GraphListView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/D3GraphListView.java
index dfb6afa..4602043 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/D3GraphListView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/D3GraphListView.java
@@ -45,6 +45,7 @@ import
org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractD3GraphLis
import
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AvailabilityLineGraphType;
import org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricGraphData;
import
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.MetricStackedBarGraph;
+import
org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.avail.AvailabilityD3Graph;
import
org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTypeRepository;
import org.rhq.enterprise.gui.coregui.client.util.Log;
import org.rhq.enterprise.gui.coregui.client.util.async.Command;
@@ -78,19 +79,25 @@ public class D3GraphListView extends AbstractD3GraphListView {
return new D3GraphListView(locatorId, resource, monitorDetailView);
}
- public static D3GraphListView createSingleGraph(String locatorId, Resource resource,
Integer measurementId) {
+ public static D3GraphListView createSingleGraph(String locatorId, Resource resource,
+ Integer measurementId, boolean
showAvailabilityGraph) {
TreeSet<Integer> definitionIds = new TreeSet<Integer>();
definitionIds.add(measurementId);
- return new D3GraphListView(locatorId, resource, definitionIds, false);
+ return new D3GraphListView(locatorId, resource, definitionIds,
showAvailabilityGraph);
+
+ }
+
+ public static D3GraphListView createSingleGraph(String locatorId, Resource resource,
Integer measurementId) {
+ return
D3GraphListView.createSingleGraph(locatorId,resource,measurementId,false);
}
- private D3GraphListView(String locatorId, Resource resource, Set<Integer>
definitionIds, boolean monitorDetailView) {
+ private D3GraphListView(String locatorId, Resource resource, Set<Integer>
definitionIds, boolean showAvailabilityGraph) {
super(locatorId);
this.resource = resource;
commonConstructorSettings();
this.definitionIds = definitionIds;
- this.showAvailabilityGraph = monitorDetailView;
+ this.showAvailabilityGraph = showAvailabilityGraph;
}
private D3GraphListView(String locatorId, Resource resource, boolean
showAvailabilityGraph) {
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityD3Graph.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityD3Graph.java
new file mode 100644
index 0000000..fc98af5
--- /dev/null
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/avail/AvailabilityD3Graph.java
@@ -0,0 +1,120 @@
+/*
+ * RHQ Management Platform
+ * Copyright (C) 2005-2013 Red Hat, Inc.
+ * All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation version 2 of the License.
+ *
+ * This program 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 General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+package
org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.avail;
+
+import java.util.List;
+
+import com.smartgwt.client.widgets.HTMLFlow;
+
+import org.rhq.core.domain.measurement.Availability;
+import org.rhq.core.domain.measurement.composite.MeasurementDataNumericHighLowComposite;
+import org.rhq.core.domain.util.PageList;
+import
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AvailabilityGraph;
+import
org.rhq.enterprise.gui.coregui.client.inventory.common.charttype.AvailabilityLineGraphType;
+import org.rhq.enterprise.gui.coregui.client.util.Log;
+import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableVLayout;
+
+/**
+ * A special graph implementation just for representing Availability (with hovers) for
+ * a resource or resource group.
+ *
+ * @author Mike Thompson
+ */
+public class AvailabilityD3Graph extends LocatableVLayout implements AvailabilityGraph {
+
+ protected AvailabilityLineGraphType availabilityGraphType;
+
+ public AvailabilityD3Graph(String locatorId, AvailabilityLineGraphType graphType) {
+ super(locatorId);
+ this.availabilityGraphType = graphType;
+ setHeight(25);
+ setWidth100();
+ }
+
+ @Override
+ protected void onDraw() {
+ super.onDraw();
+ removeMembers(getMembers());
+ createGraphMarker();
+ }
+
+ @Override
+ public void parentResized() {
+ super.parentResized();
+ removeMembers(getMembers());
+ createGraphMarker();
+ drawGraph();
+ }
+
+ public void setMetricData(List<MeasurementDataNumericHighLowComposite>
metricData) {
+ availabilityGraphType.setMetricData(metricData);
+ }
+
+ public void setAvailabilityList(PageList<Availability> availabilityList) {
+ availabilityGraphType.setAvailabilityList(availabilityList);
+ }
+
+ /**
+ * Create the graph marker to be later filled in with a graph from d3.
+ */
+ public void createGraphMarker() {
+ Log.debug("drawGraph marker in AvailabilityD3Graph for: " +
availabilityGraphType.getChartId());
+
+ StringBuilder divAndSvgDefs = new StringBuilder();
+ divAndSvgDefs.append("<div id=\"availChart-" +
availabilityGraphType.getChartId()
+ + "\" ><svg
xmlns=\"http://www.w3.org/2000/svg\"
version=\"1.1\" style=\"height:20px;\">");
+ divAndSvgDefs.append("</svg></div>");
+ HTMLFlow graph = new HTMLFlow(divAndSvgDefs.toString());
+ graph.setWidth100();
+ graph.setHeight(25);
+ addMember(graph);
+
+ }
+
+ /**
+ * Setup the page elements especially the div and svg elements that serve as
+ * placeholders for the d3 stuff to grab onto and add svg tags to render the chart.
+ * Later the drawJsniGraph() is called to actually fill in the div/svg element
+ * created here with the actual svg element.
+ *
+ */
+ public void drawGraph() {
+
+ drawJsniChart();
+ }
+
+ @Override
+ public void destroy() {
+ super.destroy();
+ }
+
+ @Override
+ public void hide() {
+ super.hide();
+ }
+
+ /**
+ * Delegate the call to rendering the JSNI chart.
+ * This way the chart type can be swapped out at any time.
+ */
+ public void drawJsniChart() {
+ availabilityGraphType.drawJsniChart();
+ }
+
+}