modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java
| 13 +-
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/ReportExporter.java
| 64 +++++++---
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/DriftHistoryView.java
| 15 ++
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/SubsystemResourceDriftView.java
| 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/OperationHistoryView.java
| 15 ++
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/alert/SubsystemRecentAlertsView.java
| 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/operation/SubsystemOperationHistoryListView.java
| 3
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
| 3
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_de.properties
| 2
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ja.properties
| 2
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_pt.properties
| 2
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_zh.properties
| 2
12 files changed, 102 insertions(+), 23 deletions(-)
New commits:
commit e41bce9fbb06df7ec2b4e84a356dcfab268927a0
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Fri Mar 30 11:48:02 2012 -0700
[BZ 800453] Export Csv Reports. Craft urls for date filtering reports.
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/ReportExporter.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/ReportExporter.java
index d0ff226..6cbe4d3 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/ReportExporter.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/ReportExporter.java
@@ -20,16 +20,14 @@
*/
package org.rhq.enterprise.gui.coregui.client.components;
-import java.util.Set;
-
import com.google.gwt.core.client.GWT;
import com.google.gwt.http.client.URL;
import com.google.gwt.user.client.Window;
-
-import org.rhq.enterprise.gui.coregui.client.CoreGUI;
-import org.rhq.enterprise.gui.coregui.client.Messages;
import org.rhq.enterprise.gui.coregui.client.util.StringUtility;
+import java.util.Date;
+import java.util.Set;
+
/**
* Exporter for building urls to reports (csv).
* The reports are RESTful urls opened up in a new window.
@@ -38,8 +36,6 @@ import org.rhq.enterprise.gui.coregui.client.util.StringUtility;
*/
public class ReportExporter {
- private static final Messages MSG = CoreGUI.getMessages();
-
private static final String BASE_URL =
GWT.getHostPageBaseURL().replace("coregui/","")+"rest/1/reports/";
private static final String FORMAT = "csv"; //CSV is all we need right now
@@ -66,6 +62,10 @@ public class ReportExporter {
String[] driftCategories;
String driftPath;
+ // Date filtering
+ Date fromDate;
+ Date toDate;
+
/**
* Private constructors to force use of static factory creation pattern.
@@ -87,25 +87,39 @@ public class ReportExporter {
return new ReportExporter(reportUrl);
}
- public static ReportExporter createExporterForRecentDrift(String reportUrl, String
definition,
- String snapshot, String[]
driftCategories, String path) {
- ReportExporter newExportDialog = new ReportExporter(reportUrl);
- newExportDialog.setDriftCategories(driftCategories);
- newExportDialog.setDriftDefinition(definition);
- newExportDialog.setDriftPath(path);
- newExportDialog.setDriftSnapshot(snapshot);
- return newExportDialog;
+ public static ReportExporter createStandardExporter(String reportUrl, Date fromDate,
Date toDate) {
+ ReportExporter newExporter = new ReportExporter(reportUrl);
+ newExporter.setFromDate(fromDate);
+ newExporter.setToDate(toDate);
+ return newExporter;
}
- public static ReportExporter createExporterForRecentAlerts(String reportUrl, String[]
alertPriorityList) {
+ public static ReportExporter createExporterForRecentDrift(String reportUrl, String
definition,
+ String snapshot, String[]
driftCategories, String path,
+ Date fromDate, Date toDate)
{
+ ReportExporter newExporter = new ReportExporter(reportUrl);
+ newExporter.setDriftCategories(driftCategories);
+ newExporter.setDriftDefinition(definition);
+ newExporter.setDriftPath(path);
+ newExporter.setDriftSnapshot(snapshot);
+ newExporter.setFromDate(fromDate);
+ newExporter.setToDate(toDate);
+ return newExporter;
+ }
+
+ public static ReportExporter createExporterForRecentAlerts(String reportUrl, String[]
alertPriorityList, Date fromDate, Date toDate) {
ReportExporter newExportDialog = new ReportExporter(reportUrl);
newExportDialog.setAlertPriorityFilters(alertPriorityList);
+ newExportDialog.setFromDate(fromDate);
+ newExportDialog.setToDate(toDate);
return newExportDialog;
}
- public static ReportExporter createExporterForRecentOperations(String reportUrl,
String[] operationRequestStatuses) {
+ public static ReportExporter createExporterForRecentOperations(String reportUrl,
String[] operationRequestStatuses, Date fromDate, Date toDate) {
ReportExporter newExportDialog = new ReportExporter(reportUrl);
newExportDialog.setOperationRequestStatusList(operationRequestStatuses);
+ newExportDialog.setFromDate(fromDate);
+ newExportDialog.setToDate(toDate);
return newExportDialog;
}
@@ -168,6 +182,14 @@ public class ReportExporter {
queryString.append("snapshot=").append(driftSnapshot);
}
+ // to/from Dates
+ if(fromDate != null){
+ queryString.append("fromDate=").append(fromDate.getTime());
+ }
+ if(toDate != null){
+ queryString.append("toDate=").append(toDate.getTime());
+ }
+
return URL.encode(BASE_URL + reportUrl + "." + FORMAT +
"?"+queryString);
}
@@ -196,6 +218,14 @@ public class ReportExporter {
this.driftPath = driftPath;
}
+ public void setFromDate(Date fromDate) {
+ this.fromDate = fromDate;
+ }
+
+ public void setToDate(Date toDate) {
+ this.toDate = toDate;
+ }
+
public void export(){
Window.open(determineUrl(), "download", null);
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/SubsystemResourceDriftView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/SubsystemResourceDriftView.java
index 76938f4..b928ebc 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/SubsystemResourceDriftView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/SubsystemResourceDriftView.java
@@ -47,7 +47,7 @@ public class SubsystemResourceDriftView extends DriftHistoryView {
@Override
public void executeAction(ListGridRecord[] selection, Object actionValue) {
- ReportExporter exporter =
ReportExporter.createExporterForRecentDrift("recentDrift",
definitionFilter.getValueAsString(), changeSetFilter.getValueAsString(),
categoryFilter.getValues(), pathFilter.getValueAsString());
+ ReportExporter exporter =
ReportExporter.createExporterForRecentDrift("recentDrift",
definitionFilter.getValueAsString(), changeSetFilter.getValueAsString(),
categoryFilter.getValues(), pathFilter.getValueAsString(),
fromDateFilter.getValueAsDate(), toDateFilter.getValueAsDate());
exporter.export();
refreshTableInfo();
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/alert/SubsystemRecentAlertsView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/alert/SubsystemRecentAlertsView.java
index bb5beb3..b969313 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/alert/SubsystemRecentAlertsView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/alert/SubsystemRecentAlertsView.java
@@ -43,7 +43,7 @@ public class SubsystemRecentAlertsView extends
SubsystemResourceAlertView {
}
}
ReportExporter exporter = ReportExporter.createExporterForRecentAlerts(
- "recentAlerts", alertPriorityList.toArray(new
String[alertPriorityList.size()]));
+ "recentAlerts", alertPriorityList.toArray(new
String[alertPriorityList.size()]), fromDateFilter.getValueAsDate(),
toDateFilter.getValueAsDate());
exporter.export();
refreshTableInfo();
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/operation/SubsystemOperationHistoryListView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/operation/SubsystemOperationHistoryListView.java
index f4da7b8..b1337d6 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/operation/SubsystemOperationHistoryListView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/operation/SubsystemOperationHistoryListView.java
@@ -53,7 +53,8 @@ public class SubsystemOperationHistoryListView extends
OperationHistoryView {
@Override
public void executeAction(ListGridRecord[] selection, Object actionValue) {
- ReportExporter exporter =
ReportExporter.createExporterForRecentOperations("recentOperations",
statusFilter.getValues());
+ ReportExporter exporter =
ReportExporter.createExporterForRecentOperations("recentOperations",
statusFilter.getValues(),
+ fromDateFilter.getValueAsDate(), toDateFilter.getValueAsDate()
);
exporter.export();
refreshTableInfo();
}
commit abd4c81c124a91bb302c77dee0f449c810ffa6a1
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Fri Mar 30 10:22:04 2012 -0700
[BZ 800453] Export Csv Reports. Added UI portion of date filtering.
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java
index 3592d47..9c19531 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java
@@ -25,6 +25,7 @@ import com.smartgwt.client.data.ResultSet;
import com.smartgwt.client.data.SortSpecifier;
import com.smartgwt.client.types.SortDirection;
import com.smartgwt.client.widgets.Canvas;
+import com.smartgwt.client.widgets.form.fields.DateItem;
import com.smartgwt.client.widgets.form.fields.SelectItem;
import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
@@ -47,6 +48,7 @@ import org.rhq.enterprise.gui.coregui.client.util.message.Message;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Date;
import java.util.LinkedHashMap;
/**
@@ -71,6 +73,8 @@ public class AlertHistoryView extends
TableSection<AlertDataSource> implements H
private static final Criteria INITIAL_CRITERIA = new Criteria();
protected SelectItem priorityFilter;
+ protected DateItem fromDateFilter;
+ protected DateItem toDateFilter;
private EntityContext context;
private boolean hasWriteAccess;
@@ -116,9 +120,16 @@ public class AlertHistoryView extends
TableSection<AlertDataSource> implements H
priorityIcons.put(AlertPriority.LOW.name(),
ImageManager.getAlertIcon(AlertPriority.LOW));
priorityFilter = new EnumSelectItem(AlertDataSource.FILTER_PRIORITIES, MSG
.view_alerts_table_filter_priority(), AlertPriority.class, priorities,
priorityIcons);
+ fromDateFilter = new DateItem();
+ fromDateFilter.setUseTextField(true);
+ fromDateFilter.setTitle(MSG.filter_from_date());
+ toDateFilter = new DateItem();
+ toDateFilter.setUseTextField(true);
+ toDateFilter.setTitle(MSG.filter_to_date());
+ toDateFilter.setValue(new Date());
if (isShowFilterForm()) {
- setFilterFormItems(priorityFilter);
+ setFilterFormItems(fromDateFilter, toDateFilter, priorityFilter);
}
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/DriftHistoryView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/DriftHistoryView.java
index 2bf5a5e..168cf14 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/DriftHistoryView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/DriftHistoryView.java
@@ -23,6 +23,7 @@ import com.smartgwt.client.data.Criteria;
import com.smartgwt.client.data.SortSpecifier;
import com.smartgwt.client.types.SortDirection;
import com.smartgwt.client.widgets.Canvas;
+import com.smartgwt.client.widgets.form.fields.DateItem;
import com.smartgwt.client.widgets.form.fields.SelectItem;
import com.smartgwt.client.widgets.form.fields.TextItem;
import com.smartgwt.client.widgets.grid.CellFormatter;
@@ -41,6 +42,7 @@ import
org.rhq.enterprise.gui.coregui.client.inventory.resource.AncestryUtil;
import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
import java.util.ArrayList;
+import java.util.Date;
import java.util.LinkedHashMap;
/**
@@ -66,6 +68,8 @@ public class DriftHistoryView extends
StringIDTableSection<DriftDataSource> {
protected TextItem definitionFilter;
protected TextItem changeSetFilter;
protected TextItem pathFilter;
+ protected DateItem toDateFilter;
+ protected DateItem fromDateFilter;
private EntityContext context;
@@ -138,8 +142,17 @@ public class DriftHistoryView extends
StringIDTableSection<DriftDataSource> {
changeSetFilter = new TextItem(DriftDataSource.FILTER_SNAPSHOT,
MSG.view_drift_table_snapshot());
pathFilter = new TextItem(DriftDataSource.FILTER_PATH, MSG.common_title_path());
+ fromDateFilter = new DateItem();
+ fromDateFilter.setUseTextField(true);
+ fromDateFilter.setTitle(MSG.filter_from_date());
+ toDateFilter = new DateItem();
+ toDateFilter.setUseTextField(true);
+ toDateFilter.setTitle(MSG.filter_to_date());
+ toDateFilter.setValue(new Date());
+
+
if (isShowFilterForm()) {
- setFilterFormItems(definitionFilter, changeSetFilter, categoryFilter,
pathFilter);
+ setFilterFormItems(fromDateFilter, toDateFilter, definitionFilter,
changeSetFilter, categoryFilter, pathFilter );
}
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/OperationHistoryView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/OperationHistoryView.java
index 6ce43b4..021c78b 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/OperationHistoryView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/OperationHistoryView.java
@@ -25,6 +25,7 @@ import com.smartgwt.client.data.DSRequest;
import com.smartgwt.client.data.SortSpecifier;
import com.smartgwt.client.types.SortDirection;
import com.smartgwt.client.widgets.Canvas;
+import com.smartgwt.client.widgets.form.fields.DateItem;
import com.smartgwt.client.widgets.form.fields.SelectItem;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
@@ -44,6 +45,7 @@ import
org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.operation
import org.rhq.enterprise.gui.coregui.client.util.message.Message;
import java.util.ArrayList;
+import java.util.Date;
import java.util.LinkedHashMap;
import java.util.List;
@@ -65,11 +67,14 @@ public class OperationHistoryView extends
TableSection<OperationHistoryDataSourc
OperationHistoryDataSource.Field.CREATED_TIME, SortDirection.DESCENDING);
protected SelectItem statusFilter;
+ protected DateItem toDateFilter;
+ protected DateItem fromDateFilter;
EntityContext context;
boolean hasControlPermission;
OperationHistoryDataSource dataSource;
+
static {
OperationRequestStatus[] statusValues = OperationRequestStatus.values();
String[] statusNames = new String[statusValues.length];
@@ -133,8 +138,16 @@ public class OperationHistoryView extends
TableSection<OperationHistoryDataSourc
MSG.common_title_operation_status(), OperationRequestStatus.class,
statusValues, statusIcons);
statusFilter.setWidth(325);
+ fromDateFilter = new DateItem();
+ fromDateFilter.setUseTextField(true);
+ fromDateFilter.setTitle(MSG.filter_from_date());
+ toDateFilter = new DateItem();
+ toDateFilter.setUseTextField(true);
+ toDateFilter.setTitle(MSG.filter_to_date());
+ toDateFilter.setValue(new Date());
+
if (isShowFilterForm()) {
- setFilterFormItems(statusFilter);
+ setFilterFormItems(fromDateFilter, toDateFilter, statusFilter);
}
}
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
index f486db7..890efeb 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
@@ -2016,3 +2016,6 @@ widget_typeCache_loadFail = Failed to load resource type metadata
widget_typeTree_badTemplateType = Invalid URL. Unknown template type [{0}]
widget_typeTree_badTypeId = Invalid URL. Bad resource type ID [{0}]
widget_typeTree_loadFail = Failed to load resource types
+filter_from_date = From Date
+filter_to_date = To Date
+
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_de.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_de.properties
index 81535f4..ef95111 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_de.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_de.properties
@@ -1732,3 +1732,5 @@ widget_typeCache_loadFail = Konnte die Metadaten für den
Ressourcen-Typ nicht l
widget_typeTree_badTemplateType = Ungültige URL. Unbekannter Vorlagen-Typ [{0}]
widget_typeTree_badTypeId = Ungültige URL. Unbekannte Ressource-Typ-ID [{0}]
widget_typeTree_loadFail = Konnte die Ressource-Typen nicht laden
+#filter_from_date = From Date
+#filter_to_date = To Date
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ja.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ja.properties
index e10e05f..309eed0 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ja.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ja.properties
@@ -2000,3 +2000,5 @@ widget_typeCache_loadFail = リソースタイプメタデータのロードに
widget_typeTree_badTemplateType = 無効なURL。未知のテンプレートタイプ [{0}]
widget_typeTree_badTypeId = 無効なURL。不正なリソースタイプ [{0}]
widget_typeTree_loadFail = リソースタイプのロードに失敗しました
+#filter_from_date = From Date
+#filter_to_date = To Date
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_pt.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_pt.properties
index 549de5f..4cd2ae5 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_pt.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_pt.properties
@@ -2125,3 +2125,5 @@ widget_typeCache_loadFail = Falha ao carregar o metadado do tipo de
recurso
widget_typeTree_badTemplateType = URL inv\u00E1lida. Tipo de template desconhecido [{0}]
widget_typeTree_badTypeId = URL inv\u00E1lida. Tipo de recurso inv\u00E1lido: ID [{0}]
widget_typeTree_loadFail = Falha ao carregar tipos de recurso
+#filter_from_date = From Date
+#filter_to_date = To Date
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_zh.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_zh.properties
index e36369e..07d89e7 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_zh.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_zh.properties
@@ -2010,3 +2010,5 @@ widget_typeCache_loadFail =
\u65e0\u6cd5\u52a0\u8f7d\u8d44\u6e90\u7c7b\u578b\u76
widget_typeTree_badTemplateType = \u65e0\u6548\u7684URL.
\u672a\u77e5\u6a21\u677f\u7c7b\u578b[{0}]
widget_typeTree_badTypeId = \u65e0\u6548URL. \u9519\u8bef\u8d44\u6e90\u7c7b\u578bID
[{0}]
widget_typeTree_loadFail = \u52a0\u8f7d\u8d44\u6e90\u7c7b\u578b\u5931\u8d25
+#filter_from_date = From Date
+#filter_to_date = To Date