[rhq] Branch 'mtho11/dual-slider-chart-control' - 4 commits - modules/enterprise
by mike thompson
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/resource/ResourceMetricsPortlet.java | 6
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/graph/ButtonBarDateTimeRangeEditor.java | 4
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/graph/graphtype/StackedBarMetricGraphImpl.java | 25
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/D3GraphListView.java | 6
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/table/MeasurementTableView.java | 7
modules/enterprise/gui/coregui/src/main/webapp/css/bootstrap.css | 766 ----------
modules/enterprise/gui/coregui/src/main/webapp/css/bootstrap.min.css | 96 -
modules/enterprise/gui/coregui/src/main/webapp/js/bootstrap.js | 165 --
modules/enterprise/gui/coregui/src/main/webapp/js/bootstrap.min.js | 7
9 files changed, 5 insertions(+), 1077 deletions(-)
New commits:
commit 09aa4cdbc35c59a3885d2ff31c9c29ab0874ffd0
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Wed Jun 19 12:14:08 2013 -0700
Remove the d3GraphView.addSetButtonClickHandler() as this is now done with new ButtonBarDateTimeEditor.
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 4c47d3f..3a0c67f 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
@@ -282,12 +282,6 @@ public class ResourceMetricsPortlet extends GroupMetricsPortlet {
graphView = D3GraphListView
.createSingleGraph(resourceComposite.getResource(),
md.getId(), true);
- graphView.addSetButtonClickHandler(new ClickHandler() {
- @Override
- public void onClick(ClickEvent event) {
- graphView.redrawGraphs();
- }
- });
window.addItem(graphView);
window.show();
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 5bfb2af..65893ce 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
@@ -46,7 +46,6 @@ import org.rhq.core.domain.util.PageList;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractD3GraphListView;
-import org.rhq.enterprise.gui.coregui.client.inventory.common.graph.ButtonBarDateTimeRangeEditor;
import org.rhq.enterprise.gui.coregui.client.inventory.common.graph.graphtype.AvailabilityOverUnderGraphType;
import org.rhq.enterprise.gui.coregui.client.inventory.common.graph.MetricGraphData;
import org.rhq.enterprise.gui.coregui.client.inventory.common.graph.graphtype.StackedBarMetricGraphImpl;
@@ -116,11 +115,6 @@ public class D3GraphListView extends AbstractD3GraphListView {
setOverflow(Overflow.HIDDEN);
}
- @Deprecated
- public void addSetButtonClickHandler(ClickHandler clickHandler) {
- Log.debug("measurementRangeEditor " + buttonBarDateTimeRangeEditor);
- // graphDateTimeRangeEditor.getSetButton().addClickHandler(clickHandler);
- }
@Override
protected void onDraw() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/table/MeasurementTableView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/table/MeasurementTableView.java
index a326145..9cb5c6a 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/table/MeasurementTableView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/table/MeasurementTableView.java
@@ -189,12 +189,7 @@ public class MeasurementTableView extends Table<MetricsTableDataSource> {
ChartViewWindow window = new ChartViewWindow("");
final D3GraphListView graphListView = D3GraphListView.createMultipleGraphs(
resourceComposite.getResource(), definitionIds, true);
- graphListView.addSetButtonClickHandler(new ClickHandler() {
- @Override
- public void onClick(ClickEvent event) {
- graphListView.redrawGraphs();
- }
- });
+
window.addItem(graphListView);
window.show();
refreshTableInfo();
commit 04358537f17203ba1a7a0a39311a9f3d5aff6e21
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Wed Jun 19 11:45:27 2013 -0700
Eliminate Charting brush resize 'handles' code as that has been removed.
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/graph/graphtype/StackedBarMetricGraphImpl.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/graph/graphtype/StackedBarMetricGraphImpl.java
index 5b4b408..b1f0648 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/graph/graphtype/StackedBarMetricGraphImpl.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/graph/graphtype/StackedBarMetricGraphImpl.java
@@ -538,27 +538,9 @@ public class StackedBarMetricGraphImpl extends AbstractMetricGraph {
}
function createBrush(){
- // slightly modified but originally from crossfilter (http://square.github.com/crossfilter/)
- var resizePath = function (d) {
- var e1 = +(d === "e"),
- e = e1 ? 1 : 0 ,
- x = e ? 1 : -1,
- y = height / 3;
- return "M" + (.5 * x) + "," + y
- + "A6,6 0 0 " + e + " " + (6.5 * x) + "," + (y + 6)
- + "V" + (2 * y - 6)
- + "A6,6 0 0 " + e + " " + (.5 * x) + "," + (2 * y)
- + "Z"
- + "M" + (2.5 * x) + "," + (y + 8)
- + "V" + (2 * y - 8)
- + "M" + (4.5 * x) + "," + (y + 8)
- + "V" + (2 * y - 8);
- },
- brush = $wnd.d3.svg.brush()
+
+ var brush = $wnd.d3.svg.brush()
.x(timeScale)
- //.extent($wnd.d3.extent(chartData, function (d) {
- //return d.x;
- //}))
.on("brushstart", brushstart)
.on("brush", brushmove)
.on("brushend", brushend),
@@ -589,9 +571,6 @@ public class StackedBarMetricGraphImpl extends AbstractMetricGraph {
global.@org.rhq.enterprise.gui.coregui.client.inventory.common.graph.AbstractMetricGraph::redrawGraphs()();
}
- //brushstart();
- //brushmove();
-
function updateDateRangeDisplay(startDate, endDate ) {
//@todo: i18n the date format
var formattedDateRange = startDate.format('MM/DD/YYYY h:mm a') + ' - ' + endDate.format('MM/DD/YYYY h:mm a');
commit 83888bc0e47e1b78150688f17d43cb32754ab7f0
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Wed Jun 19 08:53:37 2013 -0700
Remove bootstrap css and js as it is not needed now for dual slider chart control.
diff --git a/modules/enterprise/gui/coregui/src/main/webapp/css/bootstrap.css b/modules/enterprise/gui/coregui/src/main/webapp/css/bootstrap.css
deleted file mode 100755
index e5e2ce3..0000000
--- a/modules/enterprise/gui/coregui/src/main/webapp/css/bootstrap.css
+++ /dev/null
@@ -1,766 +0,0 @@
-/*!
- * Bootstrap v2.3.1
- *
- * Copyright 2012 Twitter, Inc
- * Licensed under the Apache License v2.0
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Designed and built with all the love in the world @twitter by @mdo and @fat.
- */
-.clearfix {
- *zoom: 1;
-}
-
-.clearfix:before,
-.clearfix:after {
- display: table;
- content: "";
- line-height: 0;
-}
-
-.clearfix:after {
- clear: both;
-}
-
-.hide-text {
- font: 0/0 a;
- color: transparent;
- text-shadow: none;
- background-color: transparent;
- border: 0;
-}
-
-.input-block-level {
- display: block;
- width: 100%;
- min-height: 30px;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-
-.btn {
- display: inline-block;
- *display: inline;
- /* IE7 inline-block hack */
-
- *zoom: 1;
- padding: 4px 12px;
- margin-bottom: 0;
- font-size: 14px;
- line-height: 20px;
- text-align: center;
- vertical-align: middle;
- cursor: pointer;
- color: #333333;
- text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
- background-color: #f5f5f5;
- background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
- background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
- background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
- background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);
- border-color: #e6e6e6 #e6e6e6 #bfbfbf;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- *background-color: #e6e6e6;
- /* Darken IE7 buttons by default so they stand out more given they won't have borders */
-
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
- border: 1px solid #cccccc;
- *border: 0;
- border-bottom-color: #b3b3b3;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
- *margin-left: .3em;
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
- -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
-}
-
-.btn:hover,
-.btn:focus,
-.btn:active,
-.btn.active,
-.btn.disabled,
-.btn[disabled] {
- color: #333333;
- background-color: #e6e6e6;
- *background-color: #d9d9d9;
-}
-
-.btn:active,
-.btn.active {
- background-color: #cccccc \9;
-}
-
-.btn:first-child {
- *margin-left: 0;
-}
-
-.btn:hover,
-.btn:focus {
- color: #333333;
- text-decoration: none;
- background-position: 0 -15px;
- -webkit-transition: background-position 0.1s linear;
- -moz-transition: background-position 0.1s linear;
- -o-transition: background-position 0.1s linear;
- transition: background-position 0.1s linear;
-}
-
-.btn:focus {
- outline: thin dotted #333;
- outline: 5px auto -webkit-focus-ring-color;
- outline-offset: -2px;
-}
-
-.btn.active,
-.btn:active {
- background-image: none;
- outline: 0;
- -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
- -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
- box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
-}
-
-.btn.disabled,
-.btn[disabled] {
- cursor: default;
- background-image: none;
- opacity: 0.65;
- filter: alpha(opacity=65);
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
-}
-
-.btn-large {
- padding: 11px 19px;
- font-size: 17.5px;
- -webkit-border-radius: 6px;
- -moz-border-radius: 6px;
- border-radius: 6px;
-}
-
-.btn-large [class^="icon-"],
-.btn-large [class*=" icon-"] {
- margin-top: 4px;
-}
-
-.btn-small {
- padding: 2px 10px;
- font-size: 11.9px;
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
-}
-
-.btn-small [class^="icon-"],
-.btn-small [class*=" icon-"] {
- margin-top: 0;
-}
-
-.btn-mini [class^="icon-"],
-.btn-mini [class*=" icon-"] {
- margin-top: -1px;
-}
-
-.btn-mini {
- padding: 0 6px;
- font-size: 10.5px;
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
-}
-
-.btn-block {
- display: block;
- width: 100%;
- padding-left: 0;
- padding-right: 0;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-
-.btn-block + .btn-block {
- margin-top: 5px;
-}
-
-input[type="submit"].btn-block,
-input[type="reset"].btn-block,
-input[type="button"].btn-block {
- width: 100%;
-}
-
-.btn-primary.active,
-.btn-warning.active,
-.btn-danger.active,
-.btn-success.active,
-.btn-info.active,
-.btn-inverse.active {
- color: rgba(255, 255, 255, 0.75);
-}
-
-.btn-primary {
- color: #ffffff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
- background-color: #006dcc;
- background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
- background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
- background-image: -o-linear-gradient(top, #0088cc, #0044cc);
- background-image: linear-gradient(to bottom, #0088cc, #0044cc);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0);
- border-color: #0044cc #0044cc #002a80;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- *background-color: #0044cc;
- /* Darken IE7 buttons by default so they stand out more given they won't have borders */
-
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
-}
-
-.btn-primary:hover,
-.btn-primary:focus,
-.btn-primary:active,
-.btn-primary.active,
-.btn-primary.disabled,
-.btn-primary[disabled] {
- color: #ffffff;
- background-color: #0044cc;
- *background-color: #003bb3;
-}
-
-.btn-primary:active,
-.btn-primary.active {
- background-color: #003399 \9;
-}
-
-.btn-warning {
- color: #ffffff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
- background-color: #faa732;
- background-image: -moz-linear-gradient(top, #fbb450, #f89406);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
- background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
- background-image: -o-linear-gradient(top, #fbb450, #f89406);
- background-image: linear-gradient(to bottom, #fbb450, #f89406);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0);
- border-color: #f89406 #f89406 #ad6704;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- *background-color: #f89406;
- /* Darken IE7 buttons by default so they stand out more given they won't have borders */
-
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
-}
-
-.btn-warning:hover,
-.btn-warning:focus,
-.btn-warning:active,
-.btn-warning.active,
-.btn-warning.disabled,
-.btn-warning[disabled] {
- color: #ffffff;
- background-color: #f89406;
- *background-color: #df8505;
-}
-
-.btn-warning:active,
-.btn-warning.active {
- background-color: #c67605 \9;
-}
-
-.btn-danger {
- color: #ffffff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
- background-color: #da4f49;
- background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
- background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
- background-image: -o-linear-gradient(top, #ee5f5b, #bd362f);
- background-image: linear-gradient(to bottom, #ee5f5b, #bd362f);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0);
- border-color: #bd362f #bd362f #802420;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- *background-color: #bd362f;
- /* Darken IE7 buttons by default so they stand out more given they won't have borders */
-
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
-}
-
-.btn-danger:hover,
-.btn-danger:focus,
-.btn-danger:active,
-.btn-danger.active,
-.btn-danger.disabled,
-.btn-danger[disabled] {
- color: #ffffff;
- background-color: #bd362f;
- *background-color: #a9302a;
-}
-
-.btn-danger:active,
-.btn-danger.active {
- background-color: #942a25 \9;
-}
-
-.btn-success {
- color: #ffffff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
- background-color: #5bb75b;
- background-image: -moz-linear-gradient(top, #62c462, #51a351);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));
- background-image: -webkit-linear-gradient(top, #62c462, #51a351);
- background-image: -o-linear-gradient(top, #62c462, #51a351);
- background-image: linear-gradient(to bottom, #62c462, #51a351);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff51a351', GradientType=0);
- border-color: #51a351 #51a351 #387038;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- *background-color: #51a351;
- /* Darken IE7 buttons by default so they stand out more given they won't have borders */
-
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
-}
-
-.btn-success:hover,
-.btn-success:focus,
-.btn-success:active,
-.btn-success.active,
-.btn-success.disabled,
-.btn-success[disabled] {
- color: #ffffff;
- background-color: #51a351;
- *background-color: #499249;
-}
-
-.btn-success:active,
-.btn-success.active {
- background-color: #408140 \9;
-}
-
-.btn-info {
- color: #ffffff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
- background-color: #49afcd;
- background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));
- background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4);
- background-image: -o-linear-gradient(top, #5bc0de, #2f96b4);
- background-image: linear-gradient(to bottom, #5bc0de, #2f96b4);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2f96b4', GradientType=0);
- border-color: #2f96b4 #2f96b4 #1f6377;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- *background-color: #2f96b4;
- /* Darken IE7 buttons by default so they stand out more given they won't have borders */
-
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
-}
-
-.btn-info:hover,
-.btn-info:focus,
-.btn-info:active,
-.btn-info.active,
-.btn-info.disabled,
-.btn-info[disabled] {
- color: #ffffff;
- background-color: #2f96b4;
- *background-color: #2a85a0;
-}
-
-.btn-info:active,
-.btn-info.active {
- background-color: #24748c \9;
-}
-
-.btn-inverse {
- color: #ffffff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
- background-color: #363636;
- background-image: -moz-linear-gradient(top, #444444, #222222);
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222));
- background-image: -webkit-linear-gradient(top, #444444, #222222);
- background-image: -o-linear-gradient(top, #444444, #222222);
- background-image: linear-gradient(to bottom, #444444, #222222);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', GradientType=0);
- border-color: #222222 #222222 #000000;
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
- *background-color: #222222;
- /* Darken IE7 buttons by default so they stand out more given they won't have borders */
-
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
-}
-
-.btn-inverse:hover,
-.btn-inverse:focus,
-.btn-inverse:active,
-.btn-inverse.active,
-.btn-inverse.disabled,
-.btn-inverse[disabled] {
- color: #ffffff;
- background-color: #222222;
- *background-color: #151515;
-}
-
-.btn-inverse:active,
-.btn-inverse.active {
- background-color: #080808 \9;
-}
-
-button.btn,
-input[type="submit"].btn {
- *padding-top: 3px;
- *padding-bottom: 3px;
-}
-
-button.btn::-moz-focus-inner,
-input[type="submit"].btn::-moz-focus-inner {
- padding: 0;
- border: 0;
-}
-
-button.btn.btn-large,
-input[type="submit"].btn.btn-large {
- *padding-top: 7px;
- *padding-bottom: 7px;
-}
-
-button.btn.btn-small,
-input[type="submit"].btn.btn-small {
- *padding-top: 3px;
- *padding-bottom: 3px;
-}
-
-button.btn.btn-mini,
-input[type="submit"].btn.btn-mini {
- *padding-top: 1px;
- *padding-bottom: 1px;
-}
-
-.btn-link,
-.btn-link:active,
-.btn-link[disabled] {
- background-color: transparent;
- background-image: none;
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
-}
-
-.btn-link {
- border-color: transparent;
- cursor: pointer;
- color: #0088cc;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
-}
-
-.btn-link:hover,
-.btn-link:focus {
- color: #005580;
- text-decoration: underline;
- background-color: transparent;
-}
-
-.btn-link[disabled]:hover,
-.btn-link[disabled]:focus {
- color: #333333;
- text-decoration: none;
-}
-
-.btn-group {
- position: relative;
- display: inline-block;
- *display: inline;
- /* IE7 inline-block hack */
-
- *zoom: 1;
- font-size: 0;
- vertical-align: middle;
- white-space: nowrap;
- *margin-left: .3em;
-}
-
-.btn-group:first-child {
- *margin-left: 0;
-}
-
-.btn-group + .btn-group {
- margin-left: 5px;
-}
-
-.btn-toolbar {
- font-size: 0;
- margin-top: 10px;
- margin-bottom: 10px;
-}
-
-.btn-toolbar > .btn + .btn,
-.btn-toolbar > .btn-group + .btn,
-.btn-toolbar > .btn + .btn-group {
- margin-left: 5px;
-}
-
-.btn-group > .btn {
- position: relative;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
-}
-
-.btn-group > .btn + .btn {
- margin-left: -1px;
-}
-
-.btn-group > .btn,
-.btn-group > .dropdown-menu,
-.btn-group > .popover {
- font-size: 12px;
-}
-
-.btn-group > .btn-mini {
- font-size: 10.5px;
-}
-
-.btn-group > .btn-small {
- font-size: 11.9px;
-}
-
-.btn-group > .btn-large {
- font-size: 17.5px;
-}
-
-.btn-group > .btn:first-child {
- margin-left: 0;
- -webkit-border-top-left-radius: 4px;
- -moz-border-radius-topleft: 4px;
- border-top-left-radius: 4px;
- -webkit-border-bottom-left-radius: 4px;
- -moz-border-radius-bottomleft: 4px;
- border-bottom-left-radius: 4px;
-}
-
-.btn-group > .btn:last-child,
-.btn-group > .dropdown-toggle {
- -webkit-border-top-right-radius: 4px;
- -moz-border-radius-topright: 4px;
- border-top-right-radius: 4px;
- -webkit-border-bottom-right-radius: 4px;
- -moz-border-radius-bottomright: 4px;
- border-bottom-right-radius: 4px;
-}
-
-.btn-group > .btn.large:first-child {
- margin-left: 0;
- -webkit-border-top-left-radius: 6px;
- -moz-border-radius-topleft: 6px;
- border-top-left-radius: 6px;
- -webkit-border-bottom-left-radius: 6px;
- -moz-border-radius-bottomleft: 6px;
- border-bottom-left-radius: 6px;
-}
-
-.btn-group > .btn.large:last-child,
-.btn-group > .large.dropdown-toggle {
- -webkit-border-top-right-radius: 6px;
- -moz-border-radius-topright: 6px;
- border-top-right-radius: 6px;
- -webkit-border-bottom-right-radius: 6px;
- -moz-border-radius-bottomright: 6px;
- border-bottom-right-radius: 6px;
-}
-
-.btn-group > .btn:hover,
-.btn-group > .btn:focus,
-.btn-group > .btn:active,
-.btn-group > .btn.active {
- z-index: 2;
-}
-
-.btn-group .dropdown-toggle:active,
-.btn-group.open .dropdown-toggle {
- outline: 0;
-}
-
-.btn-group > .btn + .dropdown-toggle {
- padding-left: 8px;
- padding-right: 8px;
- -webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, .125), inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
- -moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, .125), inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
- box-shadow: inset 1px 0 0 rgba(255, 255, 255, .125), inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
- *padding-top: 5px;
- *padding-bottom: 5px;
-}
-
-.btn-group > .btn-mini + .dropdown-toggle {
- padding-left: 5px;
- padding-right: 5px;
- *padding-top: 2px;
- *padding-bottom: 2px;
-}
-
-.btn-group > .btn-small + .dropdown-toggle {
- *padding-top: 5px;
- *padding-bottom: 4px;
-}
-
-.btn-group > .btn-large + .dropdown-toggle {
- padding-left: 12px;
- padding-right: 12px;
- *padding-top: 7px;
- *padding-bottom: 7px;
-}
-
-.btn-group.open .dropdown-toggle {
- background-image: none;
- -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
- -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
- box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05);
-}
-
-.btn-group.open .btn.dropdown-toggle {
- background-color: #e6e6e6;
-}
-
-.btn-group.open .btn-primary.dropdown-toggle {
- background-color: #0044cc;
-}
-
-.btn-group.open .btn-warning.dropdown-toggle {
- background-color: #f89406;
-}
-
-.btn-group.open .btn-danger.dropdown-toggle {
- background-color: #bd362f;
-}
-
-.btn-group.open .btn-success.dropdown-toggle {
- background-color: #51a351;
-}
-
-.btn-group.open .btn-info.dropdown-toggle {
- background-color: #2f96b4;
-}
-
-.btn-group.open .btn-inverse.dropdown-toggle {
- background-color: #222222;
-}
-
-.btn .caret {
- margin-top: 8px;
- margin-left: 0;
-}
-
-.btn-large .caret {
- margin-top: 6px;
-}
-
-.btn-large .caret {
- border-left-width: 5px;
- border-right-width: 5px;
- border-top-width: 5px;
-}
-
-.btn-mini .caret,
-.btn-small .caret {
- margin-top: 8px;
-}
-
-.dropup .btn-large .caret {
- border-bottom-width: 5px;
-}
-
-.btn-primary .caret,
-.btn-warning .caret,
-.btn-danger .caret,
-.btn-info .caret,
-.btn-success .caret,
-.btn-inverse .caret {
- border-top-color: #ffffff;
- border-bottom-color: #ffffff;
-}
-
-.btn-group-vertical {
- display: inline-block;
- *display: inline;
- /* IE7 inline-block hack */
-
- *zoom: 1;
-}
-
-.btn-group-vertical > .btn {
- display: block;
- float: none;
- max-width: 100%;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- border-radius: 0;
-}
-
-.btn-group-vertical > .btn + .btn {
- margin-left: 0;
- margin-top: -1px;
-}
-
-.btn-group-vertical > .btn:first-child {
- -webkit-border-radius: 4px 4px 0 0;
- -moz-border-radius: 4px 4px 0 0;
- border-radius: 4px 4px 0 0;
-}
-
-.btn-group-vertical > .btn:last-child {
- -webkit-border-radius: 0 0 4px 4px;
- -moz-border-radius: 0 0 4px 4px;
- border-radius: 0 0 4px 4px;
-}
-
-.btn-group-vertical > .btn-large:first-child {
- -webkit-border-radius: 6px 6px 0 0;
- -moz-border-radius: 6px 6px 0 0;
- border-radius: 6px 6px 0 0;
-}
-
-.btn-group-vertical > .btn-large:last-child {
- -webkit-border-radius: 0 0 6px 6px;
- -moz-border-radius: 0 0 6px 6px;
- border-radius: 0 0 6px 6px;
-}
-
-.accordion {
- margin-bottom: 20px;
-}
-
-.accordion-group {
- margin-bottom: 2px;
- border: 1px solid #e5e5e5;
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
-}
-
-.accordion-heading {
- border-bottom: 0;
-}
-
-.accordion-heading .accordion-toggle {
- display: block;
- padding: 8px 15px;
-}
-
-.accordion-toggle {
- cursor: pointer;
-}
-
-.accordion-inner {
- padding: 9px 15px;
- border-top: 1px solid #e5e5e5;
-}
diff --git a/modules/enterprise/gui/coregui/src/main/webapp/css/bootstrap.min.css b/modules/enterprise/gui/coregui/src/main/webapp/css/bootstrap.min.css
deleted file mode 100755
index 4d7b8c7..0000000
--- a/modules/enterprise/gui/coregui/src/main/webapp/css/bootstrap.min.css
+++ /dev/null
@@ -1,96 +0,0 @@
-/*!
- * Bootstrap v2.3.1
- *
- * Copyright 2012 Twitter, Inc
- * Licensed under the Apache License v2.0
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Designed and built with all the love in the world @twitter by @mdo and @fat.
- */
-.clearfix{*zoom:1;}.clearfix:before,.clearfix:after{display:table;content:"";line-height:0;}
-.clearfix:after{clear:both;}
-.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0;}
-.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
-.btn{display:inline-block;*display:inline;*zoom:1;padding:4px 12px;margin-bottom:0;font-size:14px;line-height:20px;text-align:center;vertical-align:middle;cursor:pointer;color:#333333;text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);background-color:#f5f5f5;background-image:-moz-linear-gradient(top, #ffffff, #e6e6e6);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));background-image:-webkit-linear-gradient(top, #ffffff, #e6e6e6);background-image:-o-linear-gradient(top, #ffffff, #e6e6e6);background-image:linear-gradient(to bottom, #ffffff, #e6e6e6);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);*background-color:#e6e6e6;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);border:1px solid #cccccc;*border:0;border-bottom-color:#b
3b3b3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;*margin-left:.3em;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);}.btn:hover,.btn:focus,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333333;background-color:#e6e6e6;*background-color:#d9d9d9;}
-.btn:active,.btn.active{background-color:#cccccc \9;}
-.btn:first-child{*margin-left:0;}
-.btn:hover,.btn:focus{color:#333333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position 0.1s linear;-moz-transition:background-position 0.1s linear;-o-transition:background-position 0.1s linear;transition:background-position 0.1s linear;}
-.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px;}
-.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);}
-.btn.disabled,.btn[disabled]{cursor:default;background-image:none;opacity:0.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;}
-.btn-large{padding:11px 19px;font-size:17.5px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;}
-.btn-large [class^="icon-"],.btn-large [class*=" icon-"]{margin-top:4px;}
-.btn-small{padding:2px 10px;font-size:11.9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
-.btn-small [class^="icon-"],.btn-small [class*=" icon-"]{margin-top:0;}
-.btn-mini [class^="icon-"],.btn-mini [class*=" icon-"]{margin-top:-1px;}
-.btn-mini{padding:0 6px;font-size:10.5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
-.btn-block{display:block;width:100%;padding-left:0;padding-right:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
-.btn-block+.btn-block{margin-top:5px;}
-input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%;}
-.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255, 255, 255, 0.75);}
-.btn-primary{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#006dcc;background-image:-moz-linear-gradient(top, #0088cc, #0044cc);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));background-image:-webkit-linear-gradient(top, #0088cc, #0044cc);background-image:-o-linear-gradient(top, #0088cc, #0044cc);background-image:linear-gradient(to bottom, #0088cc, #0044cc);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0);border-color:#0044cc #0044cc #002a80;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);*background-color:#0044cc;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#ffffff;background-color:#0044cc;*background-color:#003bb3;}
-.btn-primary:active,.btn-primary.active{background-color:#003399 \9;}
-.btn-warning{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#faa732;background-image:-moz-linear-gradient(top, #fbb450, #f89406);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));background-image:-webkit-linear-gradient(top, #fbb450, #f89406);background-image:-o-linear-gradient(top, #fbb450, #f89406);background-image:linear-gradient(to bottom, #fbb450, #f89406);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0);border-color:#f89406 #f89406 #ad6704;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);*background-color:#f89406;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#ffffff;background-color:#f89406;*background-color:#df8505;}
-.btn-warning:active,.btn-warning.active{background-color:#c67605 \9;}
-.btn-danger{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#da4f49;background-image:-moz-linear-gradient(top, #ee5f5b, #bd362f);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));background-image:-webkit-linear-gradient(top, #ee5f5b, #bd362f);background-image:-o-linear-gradient(top, #ee5f5b, #bd362f);background-image:linear-gradient(to bottom, #ee5f5b, #bd362f);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0);border-color:#bd362f #bd362f #802420;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);*background-color:#bd362f;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#ffffff;background-color:#bd362f;*background-color:#a9302a;}
-.btn-danger:active,.btn-danger.active{background-color:#942a25 \9;}
-.btn-success{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#5bb75b;background-image:-moz-linear-gradient(top, #62c462, #51a351);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));background-image:-webkit-linear-gradient(top, #62c462, #51a351);background-image:-o-linear-gradient(top, #62c462, #51a351);background-image:linear-gradient(to bottom, #62c462, #51a351);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff51a351', GradientType=0);border-color:#51a351 #51a351 #387038;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);*background-color:#51a351;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#ffffff;background-color:#51a351;*background-color:#499249;}
-.btn-success:active,.btn-success.active{background-color:#408140 \9;}
-.btn-info{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#49afcd;background-image:-moz-linear-gradient(top, #5bc0de, #2f96b4);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));background-image:-webkit-linear-gradient(top, #5bc0de, #2f96b4);background-image:-o-linear-gradient(top, #5bc0de, #2f96b4);background-image:linear-gradient(to bottom, #5bc0de, #2f96b4);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2f96b4', GradientType=0);border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);*background-color:#2f96b4;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#ffffff;background-color:#2f96b4;*background-color:#2a85a0;}
-.btn-info:active,.btn-info.active{background-color:#24748c \9;}
-.btn-inverse{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#363636;background-image:-moz-linear-gradient(top, #444444, #222222);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222));background-image:-webkit-linear-gradient(top, #444444, #222222);background-image:-o-linear-gradient(top, #444444, #222222);background-image:linear-gradient(to bottom, #444444, #222222);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', GradientType=0);border-color:#222222 #222222 #000000;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);*background-color:#222222;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);}.btn-inverse:hover,.btn-inverse:focus,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#ffffff;background-color:#222222;*background-color:#151515;}
-.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9;}
-button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px;}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0;}
-button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px;}
-button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px;}
-button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px;}
-.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;}
-.btn-link{border-color:transparent;cursor:pointer;color:#0088cc;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;}
-.btn-link:hover,.btn-link:focus{color:#005580;text-decoration:underline;background-color:transparent;}
-.btn-link[disabled]:hover,.btn-link[disabled]:focus{color:#333333;text-decoration:none;}
-.btn-group{position:relative;display:inline-block;*display:inline;*zoom:1;font-size:0;vertical-align:middle;white-space:nowrap;*margin-left:.3em;}.btn-group:first-child{*margin-left:0;}
-.btn-group+.btn-group{margin-left:5px;}
-.btn-toolbar{font-size:0;margin-top:10px;margin-bottom:10px;}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group{margin-left:5px;}
-.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;}
-.btn-group>.btn+.btn{margin-left:-1px;}
-.btn-group>.btn,.btn-group>.dropdown-menu,.btn-group>.popover{font-size:14px;}
-.btn-group>.btn-mini{font-size:10.5px;}
-.btn-group>.btn-small{font-size:11.9px;}
-.btn-group>.btn-large{font-size:17.5px;}
-.btn-group>.btn:first-child{margin-left:0;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px;}
-.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px;}
-.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-top-left-radius:6px;-moz-border-radius-topleft:6px;border-top-left-radius:6px;-webkit-border-bottom-left-radius:6px;-moz-border-radius-bottomleft:6px;border-bottom-left-radius:6px;}
-.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;-moz-border-radius-topright:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;-moz-border-radius-bottomright:6px;border-bottom-right-radius:6px;}
-.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2;}
-.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0;}
-.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);box-shadow:inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);*padding-top:5px;*padding-bottom:5px;}
-.btn-group>.btn-mini+.dropdown-toggle{padding-left:5px;padding-right:5px;*padding-top:2px;*padding-bottom:2px;}
-.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px;}
-.btn-group>.btn-large+.dropdown-toggle{padding-left:12px;padding-right:12px;*padding-top:7px;*padding-bottom:7px;}
-.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);}
-.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6;}
-.btn-group.open .btn-primary.dropdown-toggle{background-color:#0044cc;}
-.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406;}
-.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f;}
-.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351;}
-.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4;}
-.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222222;}
-.btn .caret{margin-top:8px;margin-left:0;}
-.btn-large .caret{margin-top:6px;}
-.btn-large .caret{border-left-width:5px;border-right-width:5px;border-top-width:5px;}
-.btn-mini .caret,.btn-small .caret{margin-top:8px;}
-.dropup .btn-large .caret{border-bottom-width:5px;}
-.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#ffffff;border-bottom-color:#ffffff;}
-.btn-group-vertical{display:inline-block;*display:inline;*zoom:1;}
-.btn-group-vertical>.btn{display:block;float:none;max-width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;}
-.btn-group-vertical>.btn+.btn{margin-left:0;margin-top:-1px;}
-.btn-group-vertical>.btn:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0;}
-.btn-group-vertical>.btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px;}
-.btn-group-vertical>.btn-large:first-child{-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0;}
-.btn-group-vertical>.btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;}
-.accordion{margin-bottom:20px;}
-.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}
-.accordion-heading{border-bottom:0;}
-.accordion-heading .accordion-toggle{display:block;padding:8px 15px;}
-.accordion-toggle{cursor:pointer;}
-.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5;}
diff --git a/modules/enterprise/gui/coregui/src/main/webapp/js/bootstrap.js b/modules/enterprise/gui/coregui/src/main/webapp/js/bootstrap.js
deleted file mode 100755
index b5ca464..0000000
--- a/modules/enterprise/gui/coregui/src/main/webapp/js/bootstrap.js
+++ /dev/null
@@ -1,165 +0,0 @@
-/* ===================================================
- * bootstrap-transition.js v2.3.1
- * http://twitter.github.com/bootstrap/javascript.html#transitions
- * ===================================================
- * Copyright 2012 Twitter, Inc.
- *
- * 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.
- * ========================================================== */
-
-
-!function ($) {
-
- "use strict"; // jshint ;_;
-
-
- /* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
- * ======================================================= */
-
- $(function () {
-
- $.support.transition = (function () {
-
- var transitionEnd = (function () {
-
- var el = document.createElement('bootstrap')
- , transEndEventNames = {
- 'WebkitTransition' : 'webkitTransitionEnd'
- , 'MozTransition' : 'transitionend'
- , 'OTransition' : 'oTransitionEnd otransitionend'
- , 'transition' : 'transitionend'
- }
- , name
-
- for (name in transEndEventNames){
- if (el.style[name] !== undefined) {
- return transEndEventNames[name]
- }
- }
-
- }())
-
- return transitionEnd && {
- end: transitionEnd
- }
-
- })()
-
- })
-
-}(window.jQuery);
-/* ============================================================
- * bootstrap-button.js v2.3.1
- * http://twitter.github.com/bootstrap/javascript.html#buttons
- * ============================================================
- * Copyright 2012 Twitter, Inc.
- *
- * 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.
- * ============================================================ */
-
-
-!function ($) {
-
- "use strict"; // jshint ;_;
-
-
- /* BUTTON PUBLIC CLASS DEFINITION
- * ============================== */
-
- var Button = function (element, options) {
- this.$element = $(element)
- this.options = $.extend({}, $.fn.button.defaults, options)
- }
-
- Button.prototype.setState = function (state) {
- var d = 'disabled'
- , $el = this.$element
- , data = $el.data()
- , val = $el.is('input') ? 'val' : 'html'
-
- state = state + 'Text'
- data.resetText || $el.data('resetText', $el[val]())
-
- $el[val](data[state] || this.options[state])
-
- // push to event loop to allow forms to submit
- setTimeout(function () {
- state == 'loadingText' ?
- $el.addClass(d).attr(d, d) :
- $el.removeClass(d).removeAttr(d)
- }, 0)
- }
-
- Button.prototype.toggle = function () {
- var $parent = this.$element.closest('[data-toggle="buttons-radio"]')
-
- $parent && $parent
- .find('.active')
- .removeClass('active')
-
- this.$element.toggleClass('active')
- }
-
-
- /* BUTTON PLUGIN DEFINITION
- * ======================== */
-
- var old = $.fn.button
-
- $.fn.button = function (option) {
- return this.each(function () {
- var $this = $(this)
- , data = $this.data('button')
- , options = typeof option == 'object' && option
- if (!data) $this.data('button', (data = new Button(this, options)))
- if (option == 'toggle') data.toggle()
- else if (option) data.setState(option)
- })
- }
-
- $.fn.button.defaults = {
- loadingText: 'loading...'
- }
-
- $.fn.button.Constructor = Button
-
-
- /* BUTTON NO CONFLICT
- * ================== */
-
- $.fn.button.noConflict = function () {
- $.fn.button = old
- return this
- }
-
-
- /* BUTTON DATA-API
- * =============== */
-
- $(document).on('click.button.data-api', '[data-toggle^=button]', function (e) {
- var $btn = $(e.target)
- if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
- $btn.button('toggle')
- })
-
-}(window.jQuery);
\ No newline at end of file
diff --git a/modules/enterprise/gui/coregui/src/main/webapp/js/bootstrap.min.js b/modules/enterprise/gui/coregui/src/main/webapp/js/bootstrap.min.js
deleted file mode 100755
index ba3c81a..0000000
--- a/modules/enterprise/gui/coregui/src/main/webapp/js/bootstrap.min.js
+++ /dev/null
@@ -1,7 +0,0 @@
-/**
-* Bootstrap.js by @fat & @mdo
-* plugins: bootstrap-transition.js, bootstrap-button.js
-* Copyright 2012 Twitter, Inc.
-* http://www.apache.org/licenses/LICENSE-2.0.txt
-*/
-!function(a){a(function(){a.support.transition=function(){var a=function(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},c;for(c in b)if(a.style[c]!==undefined)return b[c]}();return a&&{end:a}}()})}(window.jQuery),!function(a){var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.button.defaults,c)};b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.data(),e=c.is("input")?"val":"html";a+="Text",d.resetText||c.data("resetText",c[e]()),c[e](d[a]||this.options[a]),setTimeout(function(){a=="loadingText"?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.closest('[data-toggle="buttons-radio"]');a&&a.find(".active").removeClass("active"),this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(t
his),e=d.data("button"),f=typeof c=="object"&&c;e||d.data("button",e=new b(this,f)),c=="toggle"?e.toggle():c&&e.setState(c)})},a.fn.button.defaults={loadingText:"loading..."},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle")})}(window.jQuery)
\ No newline at end of file
commit 85b69b5e7391ecbfc36ea006f4022b6536ff5ab0
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Tue Jun 18 20:36:10 2013 -0700
Button alignment with form and form height change.
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/graph/ButtonBarDateTimeRangeEditor.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/graph/ButtonBarDateTimeRangeEditor.java
index 2dfaaf1..2cda97b 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/graph/ButtonBarDateTimeRangeEditor.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/graph/ButtonBarDateTimeRangeEditor.java
@@ -255,7 +255,7 @@ public class ButtonBarDateTimeRangeEditor extends EnhancedVLayout {
setIsModal(true);
setShowModalMask(true);
setWidth(450);
- setHeight(300);
+ setHeight(340);
setShowResizer(true);
setCanDragResize(true);
centerInPage();
@@ -281,7 +281,7 @@ public class ButtonBarDateTimeRangeEditor extends EnhancedVLayout {
this.addItem(form);
HLayout buttonHLayout = new HLayout();
- buttonHLayout.setMargin(15);
+ buttonHLayout.setMargin(75);
buttonHLayout.setMembersMargin(20);
IButton cancelButton = new IButton(MSG.common_buttonbar_custom_cancel());
cancelButton.addClickHandler(new ClickHandler() {
10 years, 11 months
[rhq] modules/enterprise
by Jay Shaughnessy
modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-server.bat | 15 ++++++----
modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-storage-installer.bat | 2 -
modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-storage.bat | 10 +++++-
modules/enterprise/server/appserver/src/main/bin-resources/bin/wrapper/rhq-server-wrapper.conf | 10 +++++-
modules/enterprise/server/appserver/src/main/bin-resources/bin/wrapper/rhq-storage-wrapper.conf | 10 +++++-
5 files changed, 35 insertions(+), 12 deletions(-)
New commits:
commit c2ca9cd6da3fa6290e875593009486efda0631a3
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Wed Jun 19 14:56:21 2013 -0400
Beef up RUN_AS/RUN_AS_ME option for the server and storage windows services.
Make sure the RUN_AS options can be used without hanging rhqctl on a
password prompt. These are now like the agent, although by default
RHQ_STORAGE_PASSWORD_PROMPT is set false for storage and server, since they
are primarily installed via rhqctl. It still defaults to true for the
agent-wrapper, since agents are primarily not installed by rhqctl.
diff --git a/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-server.bat b/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-server.bat
index 0991caa..cfdc8ea 100644
--- a/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-server.bat
+++ b/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-server.bat
@@ -42,13 +42,16 @@ rem the wrapper log file will go.
rem
rem RHQ_SERVER_RUN_AS - if defined, then when the Windows Service is
rem installed, the value is the domain\username of the
-rem user that the Windows Service will run as
+rem user that the Windows Service will run as. It is
+rem important to also set RHQ_SERVER_PASSWORD for the
+rem current user account.
rem
rem RHQ_SERVER_RUN_AS_ME - if defined, then when the Windows Service is
-rem installed, the domain\username of the
-rem user that the Windows Service will run as will
-rem be the current user (.\%USERNAME%). This takes
-rem precedence over RHQ_SERVER_RUN_AS.
+rem installed, the domain\username of the user that the Windows
+rem Service will run as will be the current user (.\%USERNAME%).
+rem This takes precedence over RHQ_SERVER_RUN_AS. It is
+rem important to also set RHQ_SERVER_PASSWORD for the
+rem current user account.
rem
rem Note that you cannot define custom Java VM parameters or command line
rem arguments to pass to the RHQ Server standalone.sh. If you wish to pass in
@@ -168,6 +171,8 @@ if defined RHQ_SERVER_DEBUG set _DEBUG_OPTS=wrapper.debug=true
rem Determine what user the Windows Service will run as.
if defined RHQ_SERVER_RUN_AS set _WRAPPER_NTSERVICE_ACCOUNT="wrapper.ntservice.account=%RHQ_SERVER_RUN_AS%"
if defined RHQ_SERVER_RUN_AS_ME set _WRAPPER_NTSERVICE_ACCOUNT="wrapper.ntservice.account=.\%USERNAME%"
+rem This service is typically installed by rhqctl, so assume we don't want to prompt
+if not defined RHQ_SERVER_PASSWORD_PROMPT set RHQ_SERVER_PASSWORD_PROMPT=false
if /i "%1"=="console" (
rem START SERVER
diff --git a/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-storage-installer.bat b/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-storage-installer.bat
index 5b96ff0..43ccd3b 100644
--- a/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-storage-installer.bat
+++ b/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-storage-installer.bat
@@ -4,7 +4,7 @@ rem ============================================================================
rem RHQ Storage Installer Script
rem
rem This file is used to complete the installation of the RHQ storage Server on a
-rem UNIX platform.
+rem Windows platform.
rem
rem This script is customizable by setting the following environment variables:
rem
diff --git a/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-storage.bat b/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-storage.bat
index 3ab4442..3201ae5 100644
--- a/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-storage.bat
+++ b/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhq-storage.bat
@@ -42,12 +42,16 @@ rem the wrapper log file will go.
rem
rem RHQ_STORAGE_RUN_AS - if defined, then when the Windows Service is
rem installed, the value is the domain\username of the
-rem user that the Windows Service will run as
+rem user that the Windows Service will run as. It is
+rem important to also set RHQ_STORAGE_PASSWORD for the
+rem current user account.
rem
rem RHQ_STORAGE_RUN_AS_ME - if defined, then when the Windows Service is
rem installed, the domain\username of the user that the Windows
rem Service will run as will be the current user (.\%USERNAME%).
-rem This takes precedence over RHQ_STORAGE_RUN_AS.
+rem This takes precedence over RHQ_STORAGE_RUN_AS. It is
+rem important to also set RHQ_STORAGE_PASSWORD for the
+rem current user account.
rem
rem Note that you cannot define custom Java VM parameters or command line
rem arguments to pass to Cassandra. If you wish to pass in specific arguments,
@@ -187,6 +191,8 @@ if defined RHQ_STORAGE_DEBUG set _DEBUG_OPTS=wrapper.debug=true
rem Determine what user the Windows Service will run as.
if defined RHQ_STORAGE_RUN_AS set _WRAPPER_NTSERVICE_ACCOUNT="wrapper.ntservice.account=%RHQ_STORAGE_RUN_AS%"
if defined RHQ_STORAGE_RUN_AS_ME set _WRAPPER_NTSERVICE_ACCOUNT="wrapper.ntservice.account=.\%USERNAME%"
+rem This service is typically installed by rhqctl, so assume we don't want to prompt
+if not defined RHQ_STORAGE_PASSWORD_PROMPT set RHQ_STORAGE_PASSWORD_PROMPT=false
if /i "%1"=="console" (
rem START STORAGE NODE
diff --git a/modules/enterprise/server/appserver/src/main/bin-resources/bin/wrapper/rhq-server-wrapper.conf b/modules/enterprise/server/appserver/src/main/bin-resources/bin/wrapper/rhq-server-wrapper.conf
index c5afd1b..dc41ed9 100644
--- a/modules/enterprise/server/appserver/src/main/bin-resources/bin/wrapper/rhq-server-wrapper.conf
+++ b/modules/enterprise/server/appserver/src/main/bin-resources/bin/wrapper/rhq-server-wrapper.conf
@@ -26,6 +26,12 @@
# set.RHQ_SERVER_JAVA_EXE_FILE_PATH - Java executable
# set.RHQ_SERVER_OS_PLATFORM - The operating system platform name
# set.RHQ_SERVER_WRAPPER_LOG_DIR_PATH - The Java Service Wrapper's log file (helpful if installing, uninstalling or starting fails)
+# set.RHQ_SERVER_PASSWORD_PROMPT - TRUE if password needs to be typed on
+# the console when installing. FALSE
+# requires RHQ_SERVER_PASSWORD to be set.
+# set.RHQ_SERVER_PASSWORD - the password of the user that is to
+# run the service. Only used if
+# RHQ_SERVER_PASSWORD_PROMPT is FALSE.
#*****************************************************************************
# Load in the specific environment for the RHQ Server instance to start
@@ -171,8 +177,8 @@ wrapper.ntservice.console=FALSE
# If prompt is true, the user will be prompted for the password. If false,
# the password configuration property will be used.
#wrapper.ntservice.account=.\username
-wrapper.ntservice.password.prompt=TRUE
-#wrapper.ntservice.password=xyz
+wrapper.ntservice.password.prompt=%RHQ_SERVER_PASSWORD_PROMPT%
+wrapper.ntservice.password=%RHQ_SERVER_PASSWORD%
#*****************************************************************************
# Wrapper UNIX Service Properties
diff --git a/modules/enterprise/server/appserver/src/main/bin-resources/bin/wrapper/rhq-storage-wrapper.conf b/modules/enterprise/server/appserver/src/main/bin-resources/bin/wrapper/rhq-storage-wrapper.conf
index 306df82..14f2ff1 100644
--- a/modules/enterprise/server/appserver/src/main/bin-resources/bin/wrapper/rhq-storage-wrapper.conf
+++ b/modules/enterprise/server/appserver/src/main/bin-resources/bin/wrapper/rhq-storage-wrapper.conf
@@ -27,6 +27,12 @@
# set.RHQ_SERVER_JAVA_EXE_FILE_PATH - Java executable
# set.RHQ_STORAGE_OS_PLATFORM - The operating system platform name
# set.RHQ_STORAGE_WRAPPER_LOG_DIR_PATH - The Java Service Wrapper's log file (helpful if installing, uninstalling or starting fails)
+# set.RHQ_STORAGE_PASSWORD_PROMPT - TRUE if password needs to be typed on
+# the console when installing. FALSE
+# requires RHQ_STORAGE_PASSWORD to be set.
+# set.RHQ_STORAGE_PASSWORD - the password of the user that is to
+# run the service. Only used if
+# RHQ_STORAGE_PASSWORD_PROMPT is FALSE.
#*****************************************************************************
# Load in the specific environment for the RHQ Storage Node instance to start
@@ -156,8 +162,8 @@ wrapper.ntservice.console=FALSE
# If prompt is true, the user will be prompted for the password. If false,
# the password configuration property will be used.
#wrapper.ntservice.account=.\username
-wrapper.ntservice.password.prompt=TRUE
-#wrapper.ntservice.password=xyz
+wrapper.ntservice.password.prompt=%RHQ_STORAGE_PASSWORD_PROMPT%
+wrapper.ntservice.password=%RHQ_STORAGE_PASSWORD%
#*****************************************************************************
# Wrapper UNIX Service Properties
10 years, 11 months
[rhq] modules/enterprise
by mazz
modules/enterprise/server/appserver/src/main/bin-resources/bin/rhqctl | 30 +++++-----
modules/enterprise/server/appserver/src/main/bin-resources/bin/rhqctl.bat | 26 ++++----
2 files changed, 28 insertions(+), 28 deletions(-)
New commits:
commit 59ec01dd518b9b3ebe929d61186bbee8f74c69c6
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Wed Jun 19 14:27:32 2013 -0400
fix comments in rhqctl
diff --git a/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhqctl b/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhqctl
index 1c537c6..73dda06 100644
--- a/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhqctl
+++ b/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhqctl
@@ -1,16 +1,16 @@
#!/bin/sh
# =============================================================================
-# RHQ Storage Installer Script
+# RHQ Control Script
#
-# This file is used to complete the installation of the RHQ storage Server on a
-# UNIX platform.
+# This file is used to perform install/upgrade/start/stop commands for
+# RHQ Servers (and their associated storage nodes/agents) on a UNIX platform.
#
# This script is customizable by setting the following environment variables:
#
# RHQ_CONTROL_DEBUG - If this is defined, the script will emit debug
-# messages. If this is not defined or set to "false"
-# debug messages are not emitted.
+# messages. If this is not defined or set to "false"
+# debug messages are not emitted.
#
# RHQ_SERVER_HOME - Defines where the server's home install directory is.
# If not defined, it will be assumed to be the parent
@@ -39,18 +39,18 @@
# Server's embedded JRE will be used.
#
# RHQ_CONTROL_JAVA_OPTS - Java VM command line options to be
-# passed into the Java VM. If this is not defined
-# this script will pass in a default set of options.
-# If you only want to add options to the defaults,
-# then you will want to use
-# RHQ_CONTROL_ADDITIONAL_JAVA_OPTS instead.
+# passed into the Java VM. If this is not defined
+# this script will pass in a default set of options.
+# If you only want to add options to the defaults,
+# then you will want to use
+# RHQ_CONTROL_ADDITIONAL_JAVA_OPTS instead.
#
# RHQ_CONTROL_ADDITIONAL_JAVA_OPTS - additional Java VM command
-# line options to be passed into the VM.
-# This is added to RHQ_CONTROL_JAVA_OPTS; it
-# is mainly used to augment the
-# default set of options. This can be
-# left unset if it is not needed.
+# line options to be passed into the VM.
+# This is added to RHQ_CONTROL_JAVA_OPTS;
+# it is mainly used to augment the
+# default set of options. This can be
+# left unset if it is not needed.
#
# If the embedded JRE is to be used but is not available, the fallback
# JRE to be used will be determined by the JAVA_HOME environment variable.
diff --git a/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhqctl.bat b/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhqctl.bat
index d86c4f7..43910c1 100644
--- a/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhqctl.bat
+++ b/modules/enterprise/server/appserver/src/main/bin-resources/bin/rhqctl.bat
@@ -1,15 +1,15 @@
@echo off
rem =============================================================================
-rem RHQ Storage Installer Script
+rem RHQ Control Script
rem This file is used to control the RHQ components on a Windows machine.
rem This script is customizable by setting the following environment variables:
rem RHQ_CONTROL_DEBUG - If this is defined, the script will emit debug
-rem messages. If this is not defined or set to "false"
-rem debug messages are not emitted.
+rem messages. If this is not defined or set to "false"
+rem debug messages are not emitted.
rem RHQ_SERVER_HOME - Defines where the server's home install directory is.
rem If not defined, it will be assumed to be the parent
@@ -36,18 +36,18 @@ rem $RHQ_SERVER_JAVA_HOME\bin\java
rem is used.
rem RHQ_CONTROL_JAVA_OPTS - Java VM command line options to be
-rem passed into the Java VM. If this is not defined
-rem this script will pass in a default set of options.
-rem If you only want to add options to the defaults,
-rem then you will want to use
-rem RHQ_CONTROL_ADDITIONAL_JAVA_OPTS instead.
+rem passed into the Java VM. If this is not defined
+rem this script will pass in a default set of options.
+rem If you only want to add options to the defaults,
+rem then you will want to use
+rem RHQ_CONTROL_ADDITIONAL_JAVA_OPTS instead.
rem RHQ_CONTROL_ADDITIONAL_JAVA_OPTS - additional Java VM command
-rem line options to be passed into the VM.
-rem This is added to RHQ_CONTROL_JAVA_OPTS; it
-rem is mainly used to augment the
-rem default set of options. This can be
-rem left unset if it is not needed.
+rem line options to be passed into the VM.
+rem This is added to RHQ_CONTROL_JAVA_OPTS;
+rem it is mainly used to augment the
+rem default set of options. This can be
+rem left unset if it is not needed.
rem =============================================================================
10 years, 11 months
[rhq] modules/enterprise
by snegrea
modules/enterprise/server/jar/pom.xml | 6 ++++++
1 file changed, 6 insertions(+)
New commits:
commit 7e512faae456aed3334b83363a7b2425009ea069
Author: Stefan Negrea <snegrea(a)redhat.com>
Date: Wed Jun 19 11:39:57 2013 -0500
Add Cassandra schema manager dependency to the list for server jar.
diff --git a/modules/enterprise/server/jar/pom.xml b/modules/enterprise/server/jar/pom.xml
index 70f90ae..6732dad 100644
--- a/modules/enterprise/server/jar/pom.xml
+++ b/modules/enterprise/server/jar/pom.xml
@@ -62,6 +62,12 @@
<dependency>
<groupId>org.rhq</groupId>
+ <artifactId>rhq-cassandra-schema</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.rhq</groupId>
<artifactId>rhq-core-client-api</artifactId>
<version>${project.version}</version>
</dependency>
10 years, 11 months
[rhq] modules/common modules/enterprise
by snegrea
modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/AbstractManager.java | 24 +++
modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/SchemaManager.java | 6
modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/TopologyManager.java | 21 ++
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/scheduler/jobs/StorageNodeMaintenanceJob.java | 79 ++++++++--
4 files changed, 108 insertions(+), 22 deletions(-)
New commits:
commit b41bd6adf3567c5baa9bc1d8dcc4658a3858590a
Author: Stefan Negrea <snegrea(a)redhat.com>
Date: Wed Jun 19 10:32:04 2013 -0500
Update storage node maintanance job to:
1) Run the topology change via the schema manager if necessary
2) Update the seed list
3) Retrieve live configuration from the storage service
diff --git a/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/AbstractManager.java b/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/AbstractManager.java
index 4f74a78..6cecbb2 100644
--- a/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/AbstractManager.java
+++ b/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/AbstractManager.java
@@ -69,6 +69,8 @@ public class AbstractManager {
private static final String SCHEMA_EXISTS_QUERY = "SELECT * FROM system.schema_keyspaces WHERE keyspace_name = 'rhq';";
private static final String VERSION_COLUMNFAMILY_EXISTS_QUERY = "SELECT * from system.schema_columnfamilies WHERE keyspace_name='rhq' AND columnfamily_name='schema_version';";
private static final String VERSION_QUERY = "SELECT version FROM rhq.schema_version";
+ private static final String REPLICATION_FACTOR_QUERY = "SELECT strategy_options FROM system.schema_keyspaces where keyspace_name='rhq';";
+
private final Log log = LogFactory.getLog(AbstractManager.class);
@@ -248,4 +250,26 @@ public class AbstractManager {
log.info("Shutting down connections");
session.getCluster().shutdown();
}
+
+ protected int getReplicationFactor() {
+ int replicationFactor = 1;
+ try {
+ String replicationFactorString = "replication_factor\"";
+
+ ResultSet resultSet = session.execute(REPLICATION_FACTOR_QUERY);
+ Row row = resultSet.one();
+
+ String resultString = row.getString(0);
+ resultString = resultString.substring(resultString.indexOf(replicationFactorString)
+ + replicationFactorString.length());
+ resultString = resultString.substring(resultString.indexOf('"') + 1);
+ resultString = resultString.substring(0, resultString.indexOf('"'));
+
+ replicationFactor = Integer.parseInt(resultString);
+ } catch (Exception e) {
+ log.error(e);
+ }
+
+ return replicationFactor;
+ }
}
diff --git a/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/SchemaManager.java b/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/SchemaManager.java
index 923065c..fcb8d94 100644
--- a/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/SchemaManager.java
+++ b/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/SchemaManager.java
@@ -69,9 +69,9 @@ public class SchemaManager {
version.drop();
}
- public void updateTopology() throws Exception {
+ public boolean updateTopology() throws Exception {
TopologyManager topology = new TopologyManager(username, password, nodes);
- topology.updateTopology();
+ return topology.updateTopology();
}
private static List<StorageNode> parseNodeInformation(String... nodes) {
@@ -97,7 +97,7 @@ public class SchemaManager {
if (args.length < 4) {
System.out.println("Usage : command username password nodes...");
System.out.println("\n");
- System.out.println("Commands : install | drop ");
+ System.out.println("Commands : install | drop | topology");
System.out.println("Node format: hostname|thriftPort|nativeTransportPort");
return;
diff --git a/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/TopologyManager.java b/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/TopologyManager.java
index 87e2a18..850c383 100644
--- a/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/TopologyManager.java
+++ b/modules/common/cassandra-schema/src/main/java/org/rhq/cassandra/schema/TopologyManager.java
@@ -64,28 +64,39 @@ public class TopologyManager extends AbstractManager {
super(username, password, nodes);
}
- public void updateTopology() throws Exception {
+ public boolean updateTopology() throws Exception {
+ boolean result = false;
+
initCluster();
if (schemaExists()) {
log.info("Applying topology updates...");
- this.updateReplicationFactor(nodes.size());
+ result = this.updateReplicationFactor(nodes.size());
this.updateGCGrace(nodes.size());
} else {
log.info("Topology updates cannot be applied because the schema is not installed.");
}
shutdown();
+
+ return result;
}
private boolean updateReplicationFactor(int numberOfNodes) throws Exception {
log.info("Starting to execute " + Task.UpdateReplicationFactor + " task.");
int replicationFactor = 1;
- if (numberOfNodes < 4) {
- replicationFactor = numberOfNodes;
- } else {
+
+ if (numberOfNodes == 2) {
+ replicationFactor = 2;
+ } else if (numberOfNodes == 3) {
+ replicationFactor = 2;
+ } else if (numberOfNodes > 3) {
replicationFactor = 3;
}
+ if (getReplicationFactor() == replicationFactor) {
+ return false;
+ }
+
log.info("Applying file " + Task.UpdateReplicationFactor.getFile() + " for " + Task.UpdateReplicationFactor
+ " task.");
for (String query : this.getSteps(Task.UpdateReplicationFactor.getFile())) {
diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/scheduler/jobs/StorageNodeMaintenanceJob.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/scheduler/jobs/StorageNodeMaintenanceJob.java
index c6a64fb..f492fa0 100644
--- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/scheduler/jobs/StorageNodeMaintenanceJob.java
+++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/scheduler/jobs/StorageNodeMaintenanceJob.java
@@ -27,6 +27,7 @@ import org.apache.commons.logging.LogFactory;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
+import org.rhq.cassandra.schema.SchemaManager;
import org.rhq.core.domain.cloud.StorageNode;
import org.rhq.core.domain.common.JobTrigger;
import org.rhq.core.domain.configuration.Configuration;
@@ -41,6 +42,7 @@ import org.rhq.core.domain.operation.bean.ResourceOperationSchedule;
import org.rhq.core.domain.resource.Resource;
import org.rhq.core.domain.util.PageControl;
import org.rhq.core.domain.util.PageList;
+import org.rhq.core.util.StringUtil;
import org.rhq.enterprise.server.cloud.StorageNodeManagerLocal;
import org.rhq.enterprise.server.operation.OperationManagerLocal;
import org.rhq.enterprise.server.util.LookupUtil;
@@ -67,6 +69,8 @@ public class StorageNodeMaintenanceJob extends AbstractStatefulJob {
private final static String UPDATE_SEEDS_LIST = "updateSeedsList";
private final static String SEEDS_LIST = "seedsList";
private final static String SUCCEED_PROPERTY = "succeed";
+ private static final String USERNAME_PROP = "rhq.cassandra.username";
+ private static final String PASSWORD_PROP = "rhq.cassandra.password";
@Override
public void executeJobCode(JobExecutionContext arg0) throws JobExecutionException {
@@ -80,14 +84,36 @@ public class StorageNodeMaintenanceJob extends AbstractStatefulJob {
//3. Wait for the all storage nodes to be part of the same cluster
storageNodes = waitForClustering(storageNodes);
- //4. Run repair operation on all the storage nodes
- for (StorageNode storageNode : storageNodes) {
- Resource resource = storageNode.getResource();
- runNodeMaintenanceOperation(resource);
+ //4. Update topology
+ boolean topologyUpdated = updateTopology(storageNodes);
+
+ //5. Run repair operation on all the storage nodes if topology(replication factor was updated)
+ if (topologyUpdated) {
+ List<String> seedList = new ArrayList<String>();
+ for (StorageNode storageNode : storageNodes) {
+ seedList.add(storageNode.getAddress());
+ }
+
+ for (StorageNode storageNode : storageNodes) {
+ Resource resource = storageNode.getResource();
+ runNodeMaintenance(resource, seedList);
+ }
+ }
+ }
+
+ private boolean updateTopology(List<StorageNode> storageNodes) throws JobExecutionException {
+ String username = getRequiredStorageProperty(USERNAME_PROP);
+ String password = getRequiredStorageProperty(PASSWORD_PROP);
+ SchemaManager schemaManager = new SchemaManager(username, password, storageNodes);
+ try{
+ return schemaManager.updateTopology();
+ } catch (Exception e) {
+ log.error(e);
}
+
+ return false;
}
- @SuppressWarnings("unchecked")
private List<StorageNode> waitForClustering(List<StorageNode> storageNodes) {
List<String> existingEndpoints = new ArrayList<String>();
for (StorageNode storageNode : storageNodes) {
@@ -108,14 +134,23 @@ public class StorageNodeMaintenanceJob extends AbstractStatefulJob {
List<Resource> childResources = LookupUtil.getResourceManager().findResourcesByCriteria(
LookupUtil.getSubjectManager().getOverlord(), c);
+
+
for (Resource childResource : childResources) {
if (STORAGE_SERVICE.equals(childResource.getName())) {
- PropertyList propertyList = childResource.getResourceConfiguration().getList(
- LOAD_MAP_PROPERTY);
- List<Property> actualList = propertyList.getList();
- for (Property property : actualList) {
- PropertyMap map = (PropertyMap) property;
- endpoints.add(map.get(ENDPOINT_PROPERTY).toString());
+ try {
+ PropertyList propertyList = LookupUtil
+ .getConfigurationManager()
+ .getLiveResourceConfiguration(LookupUtil.getSubjectManager().getOverlord(),
+ childResource.getId(), true).getList(LOAD_MAP_PROPERTY);
+
+ List<Property> actualList = propertyList.getList();
+ for (Property property : actualList) {
+ PropertyMap map = (PropertyMap) property;
+ endpoints.add(map.get(ENDPOINT_PROPERTY).toString());
+ }
+ } catch (Exception e) {
+ log.error("Error fetching live configuration for resource " + resource.getId());
}
break;
@@ -149,7 +184,7 @@ public class StorageNodeMaintenanceJob extends AbstractStatefulJob {
return storageNodes;
}
- private void runNodeMaintenanceOperation(Resource resource) {
+ private void runNodeMaintenance(Resource resource, List<String> seedList) {
OperationManagerLocal operationManager = LookupUtil.getOperationManager();
try {
@@ -161,8 +196,14 @@ public class StorageNodeMaintenanceJob extends AbstractStatefulJob {
List<Property> properties = new ArrayList<Property>();
properties.add(new PropertySimple(RUN_REPAIR_PROPERTY, Boolean.TRUE));
- properties.add(new PropertySimple(UPDATE_SEEDS_LIST, Boolean.FALSE));
- properties.add(new PropertyList(SEEDS_LIST));
+ properties.add(new PropertySimple(UPDATE_SEEDS_LIST, Boolean.TRUE));
+
+ PropertyList seedListProperty = new PropertyList(SEEDS_LIST);
+ for (String seed : seedList) {
+ seedListProperty.add(new PropertySimple("seed", seed));
+ }
+ properties.add(seedListProperty);
+
Configuration config = new Configuration();
config.setProperties(properties);
newSchedule.setParameters(config);
@@ -244,4 +285,14 @@ public class StorageNodeMaintenanceJob extends AbstractStatefulJob {
iteration++;
}
}
+
+ private String getRequiredStorageProperty(String property) throws JobExecutionException {
+ String value = System.getProperty(property);
+ if (StringUtil.isEmpty(property)) {
+ throw new JobExecutionException("The system property [" + property + "] is not set. The RHQ "
+ + "server will not be able connect to the RHQ storage node(s). This property should be defined "
+ + "in rhq-server.properties.");
+ }
+ return value;
+ }
}
10 years, 11 months
[rhq] modules/enterprise
by John Sanda
modules/enterprise/server/itests-2/pom.xml | 1 -
1 file changed, 1 deletion(-)
New commits:
commit 2d2a2ac358b7da452397c856bbf58434aa9bdc41
Author: John Sanda <jsanda(a)redhat.com>
Date: Wed Jun 19 11:22:42 2013 -0400
adding DataPurgeJobTest back for inclusion in jenkins build
The last build that excluded it did not get hund up but I am not certain if
this test class is in fact the culprit.
diff --git a/modules/enterprise/server/itests-2/pom.xml b/modules/enterprise/server/itests-2/pom.xml
index af2ea60..319ab23 100644
--- a/modules/enterprise/server/itests-2/pom.xml
+++ b/modules/enterprise/server/itests-2/pom.xml
@@ -558,7 +558,6 @@
<configuration>
<skipTests>${skipTests}</skipTests>
<excludes>
- <exclude>**/DataPurgeJobTest.java</exclude>
<!-- NOTE: PERF GROUP EXCLUDED (SEE BZ 874696) -->
<exclude>org/rhq/**/performance/**/*.java</exclude>
10 years, 11 months
[rhq] modules/core
by snegrea
modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java | 11 +++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
New commits:
commit 3aa76ccf7db7a0a721cf5c0fb12f2a6b3a49b5be
Author: Stefan Negrea <snegrea(a)redhat.com>
Date: Tue Jun 18 16:38:31 2013 -0500
The properties were not linked properly back to the configuration entity when using setProperties method.
diff --git a/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java b/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java
index 591d2e9..b1e6e22 100644
--- a/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java
+++ b/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java
@@ -25,7 +25,6 @@ package org.rhq.core.domain.configuration;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashMap;
@@ -493,6 +492,12 @@ public class Configuration implements Serializable, Cloneable, AbstractPropertyM
return propertiesProxy;
}
+ /**
+ * This method removes the existing set of properties and adds the properties
+ * that got passed as argument to the list of properties.
+ *
+ * @param properties new set of properties
+ */
public void setProperties(Collection<Property> properties) {
//propertiesProxy is a mere view of the properties map.
//thus, if one obtained an instance of propertiesProxy from the #getProperties() method and then tried to
@@ -505,9 +510,9 @@ public class Configuration implements Serializable, Cloneable, AbstractPropertyM
return;
}
- this.properties = new HashMap<String, Property>();
+ this.properties.clear();
for (Property p : properties) {
- this.properties.put(p.getName(), p);
+ this.put(p);
}
}
10 years, 11 months
[rhq] modules/enterprise
by Heiko W. Rupp
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/alert/AlertManagerBean.java | 21 +++++-----
1 file changed, 12 insertions(+), 9 deletions(-)
New commits:
commit 6543f9887c518eedb657992df72a6f2e0675974c
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Wed Jun 19 15:49:48 2013 +0200
BZ 965350 Prevent NPE if the server plugin manager is not yet started.
diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/alert/AlertManagerBean.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/alert/AlertManagerBean.java
index d7edc6c..0e4283a 100644
--- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/alert/AlertManagerBean.java
+++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/alert/AlertManagerBean.java
@@ -611,7 +611,10 @@ public class AlertManagerBean implements AlertManagerLocal, AlertManagerRemote {
AlertNotificationLog notificationLog = null;
String senderName = alertNotification.getSenderName();
- if (senderName == null) {
+ if (alertSenderPluginManager == null) {
+ notificationLog = new AlertNotificationLog(alert,senderName, ResultState.FAILURE,
+ "Notification was not sent as alert sender plugins are not yet initialized ");
+ } else if (senderName == null) {
notificationLog = new AlertNotificationLog(alert, senderName, ResultState.FAILURE, "Sender '"
+ senderName + "' is not defined");
} else {
@@ -1031,20 +1034,20 @@ public class AlertManagerBean implements AlertManagerLocal, AlertManagerRemote {
if (isShort) {
if (configNameRegex == null || configNameRegex.length() == 0) {
if (pathNameRegex == null || pathNameRegex.length() == 0) {
- // neither a config name regex nor path regex was specified
+ // neither a config name regex nor path regex was specified
str.append(AlertI18NFactory.getMessage(AlertI18NResourceKeys.ALERT_DRIFT_SHORT));
} else {
- // a path name regex was specified, but not a config name regex
+ // a path name regex was specified, but not a config name regex
str.append(AlertI18NFactory.getMessage(AlertI18NResourceKeys.ALERT_DRIFT_ONLYPATHS_SHORT,
pathNameRegex));
}
} else {
if (pathNameRegex == null || pathNameRegex.length() == 0) {
- // a config name regex was specified, but not a path name regex
+ // a config name regex was specified, but not a path name regex
str.append(AlertI18NFactory.getMessage(AlertI18NResourceKeys.ALERT_DRIFT_ONLYCONFIG_SHORT,
configNameRegex));
} else {
- // both a config name regex and a path regex was specified
+ // both a config name regex and a path regex was specified
str.append(AlertI18NFactory.getMessage(AlertI18NResourceKeys.ALERT_DRIFT_CONFIGPATHS_SHORT,
pathNameRegex, configNameRegex));
}
@@ -1052,20 +1055,20 @@ public class AlertManagerBean implements AlertManagerLocal, AlertManagerRemote {
} else {
if (configNameRegex == null || configNameRegex.length() == 0) {
if (pathNameRegex == null || pathNameRegex.length() == 0) {
- // neither a config name regex nor path regex was specified
+ // neither a config name regex nor path regex was specified
str.append(AlertI18NFactory.getMessage(AlertI18NResourceKeys.ALERT_DRIFT));
} else {
- // a path name regex was specified, but not a config name regex
+ // a path name regex was specified, but not a config name regex
str.append(AlertI18NFactory.getMessage(AlertI18NResourceKeys.ALERT_DRIFT_ONLYPATHS,
pathNameRegex));
}
} else {
if (pathNameRegex == null || pathNameRegex.length() == 0) {
- // a config name regex was specified, but not a path name regex
+ // a config name regex was specified, but not a path name regex
str.append(AlertI18NFactory.getMessage(AlertI18NResourceKeys.ALERT_DRIFT_ONLYCONFIG,
configNameRegex));
} else {
- // both a config name regex and a path regex was specified
+ // both a config name regex and a path regex was specified
str.append(AlertI18NFactory.getMessage(AlertI18NResourceKeys.ALERT_DRIFT_CONFIGPATHS,
pathNameRegex, configNameRegex));
}
10 years, 11 months
[rhq] modules/enterprise
by John Sanda
modules/enterprise/server/itests-2/pom.xml | 1 +
1 file changed, 1 insertion(+)
New commits:
commit eecad4da551794d406830337748398240d77a01e
Author: John Sanda <jsanda(a)redhat.com>
Date: Wed Jun 19 09:09:53 2013 -0400
temporarily disable test class while debugging jenkins issues
diff --git a/modules/enterprise/server/itests-2/pom.xml b/modules/enterprise/server/itests-2/pom.xml
index 319ab23..af2ea60 100644
--- a/modules/enterprise/server/itests-2/pom.xml
+++ b/modules/enterprise/server/itests-2/pom.xml
@@ -558,6 +558,7 @@
<configuration>
<skipTests>${skipTests}</skipTests>
<excludes>
+ <exclude>**/DataPurgeJobTest.java</exclude>
<!-- NOTE: PERF GROUP EXCLUDED (SEE BZ 874696) -->
<exclude>org/rhq/**/performance/**/*.java</exclude>
10 years, 11 months
[rhq] modules/core
by Heiko W. Rupp
modules/core/plugin-container/src/main/java/org/rhq/core/pc/PluginContainer.java | 30 +++++-----
modules/core/plugin-container/src/main/java/org/rhq/core/pc/event/EventManager.java | 8 ++
2 files changed, 21 insertions(+), 17 deletions(-)
New commits:
commit 5dbd4d288614df3e0cd4d661ad7ed3b25cd74be2
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Wed Jun 19 15:03:47 2013 +0200
BZ 949065 Prevent a NPE if Events show up before the EventManager is fully initialized.
Reviewed by mazz.
diff --git a/modules/core/plugin-container/src/main/java/org/rhq/core/pc/PluginContainer.java b/modules/core/plugin-container/src/main/java/org/rhq/core/pc/PluginContainer.java
index 3705505..4f6a9a1 100644
--- a/modules/core/plugin-container/src/main/java/org/rhq/core/pc/PluginContainer.java
+++ b/modules/core/plugin-container/src/main/java/org/rhq/core/pc/PluginContainer.java
@@ -164,7 +164,7 @@ public class PluginContainer {
}
private PluginContainer() {
- // for why we need to do this, see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6727821
+ // for why we need to do this, see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6727821
try {
Configuration.getConfiguration();
} catch (Throwable t) {
@@ -260,10 +260,10 @@ public class PluginContainer {
/**
* If the plugin container has been initialized, the plugins have started work, and the container is
- * not actively shutting down, this returns <code>true</code>.
- *
+ * not actively shutting down, this returns <code>true</code>.
+ *
* <p>Note! that there is no locking on this method. Therefore it returns quickly and is likely correct, but if
- * called outside of locking the return value is not guaranteed. As such, use this only as a lightweight check.</p>
+ * called outside of locking the return value is not guaranteed. As such, use this only as a lightweight check.</p>
*
* @return <code>true</code> if the plugin container was initialized, started and is not shutting down; <code>false</code> otherwise
*/
@@ -281,14 +281,14 @@ public class PluginContainer {
* <p>If the plugin container has already been initialized, this method does nothing and returns.</p>
*/
public void initialize() {
- // this quick guard is OK but doesn't prevent several calls to initialize() from stacking up while waiting for the lock
+ // this quick guard is OK but doesn't prevent several calls to initialize() from stacking up while waiting for the lock
if (started) {
log.info("Plugin container is already initialized.");
}
Lock lock = obtainWriteLock();
try {
- // this guard prevents us from executing initialize logic multiple times in a row
+ // this guard prevents us from executing initialize logic multiple times in a row
if (started) {
return;
}
@@ -317,7 +317,7 @@ public class PluginContainer {
operationManager = new OperationManager();
resourceFactoryManager = new ResourceFactoryManager();
contentManager = new ContentManager();
- eventManager = new EventManager();
+ eventManager = new EventManager(configuration);
supportManager = new SupportManager();
bundleManager = new BundleManager();
driftManager = new DriftManager();
@@ -358,7 +358,7 @@ public class PluginContainer {
* this method does nothing and returns.
*/
public boolean shutdown() {
- // this quick guard is OK but doesn't prevent several calls to shutdown() from stacking up while waiting for the lock
+ // this quick guard is OK but doesn't prevent several calls to shutdown() from stacking up while waiting for the lock
if (!isRunning()) {
log.info("Plugin container is already shut down.");
}
@@ -367,7 +367,7 @@ public class PluginContainer {
// end up deadlocked.
Lock lock = (configuration.isWaitForShutdownServiceTermination()) ? obtainReadLock() : obtainWriteLock();
try {
- // this guard prevents us from executing shutdown logic multiple times in a row
+ // this guard prevents us from executing shutdown logic multiple times in a row
if (!isRunning()) {
return true;
}
@@ -471,7 +471,7 @@ public class PluginContainer {
Introspector.flushCaches();
LogFactory.releaseAll();
- // for why we need to do this, see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6727821
+ // for why we need to do this, see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6727821
try {
Configuration.setConfiguration(null);
} catch (Throwable t) {
@@ -740,10 +740,10 @@ public class PluginContainer {
/**
* Add the callback listener to notify when the plugin container is initialized. If this method is invoked and
* the PC is already initialized, then <code>listener</code> will be invoked immediately.
- *
+ *
* @param name associated with the listener
* @param listener The callback object to notify. If a listener with the supplied name is registered, it
- * will be replaced with the newly supplied listner.
+ * will be replaced with the newly supplied listner.
*/
public void addInitializationListener(String name, InitializationListener listener) {
synchronized (initListenersLock) {
@@ -756,10 +756,10 @@ public class PluginContainer {
}
/**
- * Add the callback listener to notify when the plugin container is shutdown. Unlike
- * {@link #addInitializationListener(String, InitializationListener)} the <code>listener</code> will
+ * Add the callback listener to notify when the plugin container is shutdown. Unlike
+ * {@link #addInitializationListener(String, InitializationListener)} the <code>listener</code> will
* not be invoked immediately if the PC is already shutdown. It will only be invoked on future shutdowns.
- *
+ *
* @param name associated with the listener
* @param listener The callback object to notify. If a listener with the supplied name is registered, it
* will be replaced with the newly supplied listener.
diff --git a/modules/core/plugin-container/src/main/java/org/rhq/core/pc/event/EventManager.java b/modules/core/plugin-container/src/main/java/org/rhq/core/pc/event/EventManager.java
index db8e65d..64bca8b 100644
--- a/modules/core/plugin-container/src/main/java/org/rhq/core/pc/event/EventManager.java
+++ b/modules/core/plugin-container/src/main/java/org/rhq/core/pc/event/EventManager.java
@@ -70,9 +70,13 @@ public class EventManager implements ContainerService {
private Map<PollerKey, Runnable> pollerThreads;
private SigarProxy sigar;
- public void initialize() {
+ public EventManager(PluginContainerConfiguration configuration) {
+ this.pcConfig = configuration;
this.activeReport = new EventReport(this.pcConfig.getEventReportMaxPerSource(), this.pcConfig
.getEventReportMaxTotal());
+ }
+
+ public void initialize() {
// Schedule sender thread(s) to send Event reports to the Server periodically.
EventSenderRunner senderRunner = new EventSenderRunner(this);
@@ -101,7 +105,7 @@ public class EventManager implements ContainerService {
}
public void setConfiguration(PluginContainerConfiguration config) {
- this.pcConfig = config;
+ // Was already passed in the constructor
}
void publishEvents(@NotNull Set<Event> events, @NotNull Resource resource) {
10 years, 11 months