modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/CoreGUI.java | 8 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesDataSource.java | 14 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersDataSource.java | 21 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertDataSource.java | 11 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java | 24 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java | 15 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java | 20 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java | 12 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentDataSource.java | 28 +- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/resource/BundleResourceDeploymentDataSource.java | 52 ++-- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationDataSource.java | 75 +++-- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundleVersionDataSource.java | 30 +- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesDataSource.java | 23 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesWithLatestVersionDataSource.java | 27 +- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeDataSource.java | 94 ++++--- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java | 30 ++ modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/tagging/TaggingDataSource.java | 37 +- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/tree/EnhancedTreeNode.java | 2 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/content/repository/tree/ContentRepositoryTreeDataSource.java | 32 +- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/platform/PlatformMetricDataSource.java | 23 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitDataSource.java | 35 +- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementScheduleCompositeDataSource.java | 80 +++--- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeDatasource.java | 26 +- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java | 2 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java | 19 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupsDataSource.java | 20 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionDataSource.java | 21 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/ResourceGroupTreeView.java | 19 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/schedules/SchedulesDataSource.java | 129 +++++----- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDataSource.java | 21 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceDatasource.java | 32 ++ modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java | 45 +-- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryDataSource.java | 52 ++-- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceScheduledMetricDatasource.java | 76 +++-- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/calltime/CallTimeDataSource.java | 58 ++-- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/schedules/SchedulesDataSource.java | 121 ++++----- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsDataSource.java | 18 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/operation/OperationHistoryDataSource.java | 48 ++- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/summary/ResourceErrorsDataSource.java | 30 +- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java | 3 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/RecentOperationsDataSource.java | 16 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/ScheduledOperationsDataSource.java | 20 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBDataSource.java | 62 ++-- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/resource/ProblemResourcesDataSource.java | 17 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java | 23 + 45 files changed, 981 insertions(+), 590 deletions(-)
New commits: commit 0235aed4bd3737768f96acc66f5868838235686d Author: Jay Shaughnessy jshaughn@redhat.com Date: Fri Oct 15 17:40:49 2010 -0400
DataSource Work: Resulting from the fact that we couldn't render a list view without including the ID colum. In short it seems there is (currently) only one way to get control of column widths in one of our dataSource-backed ListGrid based views. That is to override the ds fields with its own ListGrid fields (see ResourceSearchView for a working example).
Perhaps at some point the listGrid.resizeField() method will work as maybe it should, but until then this is the way to go. By calling setFields(ListGridField[]) you will override the ds fields. For datasources used explicitly to back ListGrid views the ds doesn't really have to declare fields. With one exception, it may need to declare a primary key field, typically "id".
Anyway, this checkin does a few things: - Apply the same pattern to all of our datasources for defining ds fields. This pattern lets subclasses easily add to the superclass's fields. - Add CoreGUI.isDebugEnabled() - Add Table.setListGridFields(fields). This will handle any "id" field defined in the underlying datasource. It will be shown in debug and omitted otherwise. - Update ResourceSearchView and ResourceDataSource to work in the new fashion and serve (hopefully) as a decent example moving forward. Look here if you want to fix issues in column widths. - Misc: some null protection added, some selenium ID protection added
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/CoreGUI.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/CoreGUI.java index 3544941..5bce6ba 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/CoreGUI.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/CoreGUI.java @@ -88,6 +88,8 @@ public class CoreGUI implements EntryPoint, ValueChangeHandler<String> {
private static Messages messages;
+ private static boolean debugMode = true; + public void onModuleLoad() { String hostPageBaseURL = GWT.getHostPageBaseURL(); if (hostPageBaseURL.indexOf("/coregui/") == -1) { @@ -102,7 +104,8 @@ public class CoreGUI implements EntryPoint, ValueChangeHandler<String> {
coreGUI = this;
- if (!GWT.isScript()) { + debugMode = !GWT.isScript(); + if (debugMode) { KeyIdentifier debugKey = new KeyIdentifier(); debugKey.setCtrlKey(true); debugKey.setKeyName("D"); @@ -331,4 +334,7 @@ public class CoreGUI implements EntryPoint, ValueChangeHandler<String> { } }
+ public static boolean isDebugMode() { + return debugMode; + } } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesDataSource.java index 9af7064..a12bec5 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesDataSource.java @@ -19,6 +19,7 @@ package org.rhq.enterprise.gui.coregui.client.admin.roles;
import java.util.HashMap; +import java.util.List; import java.util.Map; import java.util.Set;
@@ -62,13 +63,24 @@ public class RolesDataSource extends RPCDataSource<Role> { }
public RolesDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + DataSourceField idDataField = new DataSourceIntegerField("id", "ID"); idDataField.setPrimaryKey(true); idDataField.setCanEdit(false); + fields.add(idDataField);
DataSourceTextField nameField = new DataSourceTextField("name", "Name", 100, true); + fields.add(nameField);
- setFields(idDataField, nameField); + return fields; }
public void executeFetch(final DSRequest request, final DSResponse response) { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersDataSource.java index af9acd6..33b94a0 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersDataSource.java @@ -19,6 +19,7 @@ package org.rhq.enterprise.gui.coregui.client.admin.users;
import java.util.HashMap; +import java.util.List; import java.util.Map; import java.util.Set;
@@ -63,16 +64,28 @@ public class UsersDataSource extends RPCDataSource<Subject> { }
public UsersDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceField idDataField = new DataSourceIntegerField("id", "ID"); idDataField.setPrimaryKey(true); idDataField.setCanEdit(false); + fields.add(idDataField);
DataSourceTextField usernameField = new DataSourceTextField("name", "User Name", 100, true); + fields.add(usernameField);
DataSourceTextField firstName = new DataSourceTextField("firstName", "First Name", 100, true); + fields.add(firstName);
DataSourceTextField lastName = new DataSourceTextField("lastName", "Last Name", 100, true); + fields.add(lastName);
DataSourceTextField password = new DataSourceTextField("password", "Password", 100, false); password.setType(FieldType.PASSWORD); @@ -89,18 +102,22 @@ public class UsersDataSource extends RPCDataSource<Subject> { passwordsEqualValidator.setOtherField("password"); passwordsEqualValidator.setErrorMessage("Passwords do not match"); passwordVerify.setValidators(passwordsEqualValidator); + fields.add(password);
DataSourceTextField emailAddress = new DataSourceTextField("emailAddress", "Email Address", 100, true); + fields.add(emailAddress);
DataSourceTextField phone = new DataSourceTextField("phoneNumber", "Phone", 15, false); + fields.add(phone);
DataSourceTextField department = new DataSourceTextField("department", "Department", 100, false); + fields.add(department);
DataSourceTextField enabled = new DataSourceTextField("factive", "Enabled"); enabled.setType(FieldType.BOOLEAN); + fields.add(enabled);
- setFields(idDataField, usernameField, firstName, lastName, password, passwordVerify, phone, emailAddress, - department, enabled); + return fields; }
public void executeFetch(final DSRequest request, final DSResponse response) { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertDataSource.java index a950c34..aaee63f 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertDataSource.java @@ -18,7 +18,6 @@ */ package org.rhq.enterprise.gui.coregui.client.alert;
-import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; @@ -65,12 +64,13 @@ public class AlertDataSource extends RPCDataSource<Alert> {
setCanMultiSort(true);
- List<DataSourceField> fields = createFields(); + List<DataSourceField> fields = addDataSourceFields(); addFields(fields); }
- protected List<DataSourceField> createFields() { - List<DataSourceField> fields = new ArrayList<DataSourceField>(); + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceField idField = new DataSourceIntegerField("id", "Id"); idField.setPrimaryKey(true); @@ -284,7 +284,8 @@ public class AlertDataSource extends RPCDataSource<Alert> { CoreGUI.getMessageCenter().notify( new Message("Acknowledged [" + alertIds.length + "] alerts", Message.Severity.Info));
- com.allen_sauer.gwt.log.client.Log.info("Acknowledged Alerts with id's: " + Arrays.toString(alertIds) + "."); + com.allen_sauer.gwt.log.client.Log.info("Acknowledged Alerts with id's: " + Arrays.toString(alertIds) + + "."); alertsView.refresh(); }
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java index 7a53dbe..b7c9db8 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java @@ -19,10 +19,12 @@ package org.rhq.enterprise.gui.coregui.client.alert.definitions;
import java.util.Date; +import java.util.List;
import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceImageField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.types.FieldType; @@ -52,7 +54,9 @@ public abstract class AbstractAlertDefinitionsDataSource extends RPCDataSource<A protected static final String FIELD_OBJECT = "_object"; // the actual AlertDefinition object
public AbstractAlertDefinitionsDataSource() { - setupFields(); + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); }
@Override @@ -94,27 +98,31 @@ public abstract class AbstractAlertDefinitionsDataSource extends RPCDataSource<A * free to call this method and then add more, or add their own custom set and not * call this method at all (if they don't want some of these basic fields or want to reorder them). */ - protected void setupFields() { + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + DataSourceTextField nameField = new DataSourceTextField(FIELD_NAME, "Name"); - addField(nameField); + fields.add(nameField);
DataSourceTextField descriptionField = new DataSourceTextField(FIELD_DESCRIPTION, "Description"); - addField(descriptionField); + fields.add(descriptionField);
DataSourceTextField ctimeField = new DataSourceTextField(FIELD_CTIME, "Created Time"); ctimeField.setType(FieldType.DATETIME); - addField(ctimeField); + fields.add(ctimeField);
DataSourceTextField mtimeField = new DataSourceTextField(FIELD_MTIME, "Modified Time"); mtimeField.setType(FieldType.DATETIME); - addField(mtimeField); + fields.add(mtimeField);
DataSourceTextField enabledField = new DataSourceTextField(FIELD_ENABLED, "Enabled"); enabledField.setType(FieldType.BOOLEAN); - addField(enabledField); + fields.add(enabledField);
DataSourceImageField priorityField = new DataSourceImageField(FIELD_PRIORITY, "Priority"); - addField(priorityField); + fields.add(priorityField); + + return fields; }
@Override diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java index 2d4e85a..2d8463d 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java @@ -24,10 +24,12 @@ package org.rhq.enterprise.gui.coregui.client.alert.definitions;
import java.util.HashSet; +import java.util.List; import java.util.Set;
import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.types.Overflow; import com.smartgwt.client.widgets.Window; @@ -148,8 +150,19 @@ public class ConditionsEditor extends LocatableVLayout { private static final String FIELD_CONDITION = "condition";
public ConditionDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + DataSourceTextField conditionField = new DataSourceTextField(FIELD_CONDITION, "Condition"); - addField(conditionField); + fields.add(conditionField); + + return fields; }
@Override diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java index f707dc1..f783b4c 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java @@ -29,6 +29,7 @@ import java.util.List; import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.types.Overflow; import com.smartgwt.client.widgets.Window; @@ -170,11 +171,26 @@ public class NotificationsAlertDefinitionForm extends LocatableVLayout implement
private class NotificationDataSource extends RPCDataSource<AlertNotification> { public NotificationDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + DataSourceTextField senderField = new DataSourceTextField(FIELD_SENDER, "Sender"); - addField(senderField); + fields.add(senderField);
DataSourceTextField configField = new DataSourceTextField(FIELD_CONFIGURATION, "Configuration"); - addField(configField); + fields.add(configField); + + return fields; + } + + @Override + public void useDatasourceDefinedFields() { }
@Override diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java index f53710f..b9c4dca 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java @@ -23,10 +23,12 @@
package org.rhq.enterprise.gui.coregui.client.alert.definitions;
+import java.util.List; import java.util.Map;
import com.smartgwt.client.data.Criteria; import com.smartgwt.client.data.DSRequest; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceLinkField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.widgets.grid.ListGridRecord; @@ -81,15 +83,17 @@ public class ResourceAlertDefinitionsDataSource extends AbstractAlertDefinitions }
@Override - protected void setupFields() { - super.setupFields(); + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
// add two more columns DataSourceLinkField parentIdField = new DataSourceLinkField(FIELD_PARENT, "Parent"); - addField(parentIdField); + fields.add(parentIdField);
DataSourceTextField readOnlyField = new DataSourceTextField(FIELD_READONLY, "Read Only"); - addField(readOnlyField); + fields.add(readOnlyField); + + return fields; }
@Override diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentDataSource.java index a6e4da7..1f3ced4 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentDataSource.java @@ -23,10 +23,12 @@ package org.rhq.enterprise.gui.coregui.client.bundle.deployment;
import java.util.Date; +import java.util.List;
import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceDateTimeField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; @@ -48,25 +50,35 @@ public class BundleDeploymentDataSource extends RPCDataSource<BundleDeployment> private BundleGWTServiceAsync bundleService = GWTServiceLookup.getBundleService();
public BundleDeploymentDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceIntegerField id = new DataSourceIntegerField("id", "ID"); id.setPrimaryKey(true); - addField(id); + fields.add(id);
DataSourceTextField name = new DataSourceTextField("name", "Deployment Name"); - addField(name); + fields.add(name);
DataSourceTextField bundleVersion = new DataSourceTextField("bundleVersionVersion", "Bundle Version"); - addField(bundleVersion); + fields.add(bundleVersion);
DataSourceTextField description = new DataSourceTextField("description", "Description"); - addField(description); + fields.add(description);
DataSourceTextField status = new DataSourceTextField("status", "Status"); - addField(status); + fields.add(status);
DataSourceDateTimeField created = new DataSourceDateTimeField("deploymentTime", "Deployment Time"); - addField(created); + fields.add(created); + + return fields; }
@Override @@ -83,7 +95,8 @@ public class BundleDeploymentDataSource extends RPCDataSource<BundleDeployment> }
if (request.getCriteria().getValues().containsKey("bundleDestinationId")) { - criteria.addFilterDestinationId(Integer.parseInt(request.getCriteria().getAttribute("bundleDestinationId"))); + criteria + .addFilterDestinationId(Integer.parseInt(request.getCriteria().getAttribute("bundleDestinationId"))); }
if (request.getCriteria().getValues().get("tagNamespace") != null) { @@ -130,7 +143,6 @@ public class BundleDeploymentDataSource extends RPCDataSource<BundleDeployment> record.setAttribute("status", from.getStatus().name()); record.setAttribute("deployer", from.getSubjectName());
- if (from.getBundleVersion() != null) { record.setAttribute("bundleVersionVersion", from.getBundleVersion().getVersion()); record.setAttribute("bundleVersionId", from.getBundleVersion().getId()); diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/resource/BundleResourceDeploymentDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/resource/BundleResourceDeploymentDataSource.java index a2fa68e..1c23d51 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/resource/BundleResourceDeploymentDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/resource/BundleResourceDeploymentDataSource.java @@ -22,15 +22,17 @@ */ package org.rhq.enterprise.gui.coregui.client.bundle.deployment.resource;
+import java.util.List; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.widgets.grid.ListGridRecord;
import org.rhq.core.domain.bundle.BundleResourceDeployment; -import org.rhq.core.domain.criteria.BundleDeploymentCriteria; import org.rhq.core.domain.criteria.BundleResourceDeploymentCriteria; import org.rhq.core.domain.util.PageList; import org.rhq.enterprise.gui.coregui.client.CoreGUI; @@ -44,19 +46,27 @@ import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource; public class BundleResourceDeploymentDataSource extends RPCDataSource<BundleResourceDeployment> { private BundleGWTServiceAsync bundleService = GWTServiceLookup.getBundleService();
- public BundleResourceDeploymentDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + }
- DataSourceIntegerField id = new DataSourceIntegerField("id","ID"); + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + + DataSourceIntegerField id = new DataSourceIntegerField("id", "ID"); id.setPrimaryKey(true); - addField(id); + fields.add(id);
DataSourceTextField resourceName = new DataSourceTextField("resourceName", "Resource"); - addField(resourceName); + fields.add(resourceName);
DataSourceTextField status = new DataSourceTextField("status", "Status"); - addField(status); + fields.add(status);
+ return fields; }
@Override @@ -68,26 +78,27 @@ public class BundleResourceDeploymentDataSource extends RPCDataSource<BundleReso criteria.fetchHistories(true);
if (request.getCriteria().getValues().containsKey("bundleDeploymentId")) { - criteria.addFilterBundleDeploymentId(Integer.parseInt(request.getCriteria().getAttribute("bundleDeploymentId"))); + criteria.addFilterBundleDeploymentId(Integer.parseInt(request.getCriteria().getAttribute( + "bundleDeploymentId"))); }
- bundleService.findBundleResourceDeploymentsByCriteria(criteria, new AsyncCallback<PageList<BundleResourceDeployment>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to load bundle resource deployments",caught); - } - - public void onSuccess(PageList<BundleResourceDeployment> result) { - response.setData(buildRecords(result)); - processResponse(request.getRequestId(), response); - } - }); + bundleService.findBundleResourceDeploymentsByCriteria(criteria, + new AsyncCallback<PageList<BundleResourceDeployment>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError("Failed to load bundle resource deployments", caught); + }
+ public void onSuccess(PageList<BundleResourceDeployment> result) { + response.setData(buildRecords(result)); + processResponse(request.getRequestId(), response); + } + });
}
@Override public BundleResourceDeployment copyValues(ListGridRecord from) { - return null; // TODO: Implement this method. + return null; // TODO: Implement this method. }
@Override @@ -97,10 +108,9 @@ public class BundleResourceDeploymentDataSource extends RPCDataSource<BundleReso
record.setAttribute("resourceName", from.getResource().getName()); record.setAttribute("resourceId", from.getResource().getId()); - record.setAttribute("status",from.getStatus().name()); - - record.setAttribute("histories",from.getBundleResourceDeploymentHistories()); + record.setAttribute("status", from.getStatus().name());
+ record.setAttribute("histories", from.getBundleResourceDeploymentHistories());
from.getBundleResourceDeploymentHistories();
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationDataSource.java index a375981..3985c78 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationDataSource.java @@ -23,10 +23,12 @@ package org.rhq.enterprise.gui.coregui.client.bundle.destination;
import java.util.Date; +import java.util.List;
import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.widgets.grid.ListGridRecord; @@ -34,7 +36,6 @@ import com.smartgwt.client.widgets.grid.ListGridRecord; import org.rhq.core.domain.bundle.BundleDeployment; import org.rhq.core.domain.bundle.BundleDestination; import org.rhq.core.domain.bundle.BundleVersion; -import org.rhq.core.domain.criteria.BundleDeploymentCriteria; import org.rhq.core.domain.criteria.BundleDestinationCriteria; import org.rhq.core.domain.criteria.BundleVersionCriteria; import org.rhq.core.domain.util.PageList; @@ -48,38 +49,49 @@ import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource; public class BundleDestinationDataSource extends RPCDataSource<BundleDestination> {
public BundleDestinationDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceIntegerField idField = new DataSourceIntegerField("id", "Id"); idField.setPrimaryKey(true); - addField(idField); + fields.add(idField);
DataSourceTextField name = new DataSourceTextField("name", "Name"); - addField(name); + fields.add(name);
DataSourceTextField description = new DataSourceTextField("description", "Description"); - addField(description); + fields.add(description);
DataSourceTextField bundle = new DataSourceTextField("bundleName", "Bundle"); - addField(bundle); + fields.add(bundle);
DataSourceTextField group = new DataSourceTextField("groupName", "Group"); - addField(group); + fields.add(group);
DataSourceTextField deployDir = new DataSourceTextField("deployDir", "Deploy Directory"); - addField(deployDir); + fields.add(deployDir);
- DataSourceTextField latestDeploymentVersion = new DataSourceTextField("latestDeploymentVersion", "Last Deployed Version"); - addField(latestDeploymentVersion); + DataSourceTextField latestDeploymentVersion = new DataSourceTextField("latestDeploymentVersion", + "Last Deployed Version"); + fields.add(latestDeploymentVersion);
- DataSourceTextField latestDeploymentDate = new DataSourceTextField("latestDeploymentDate", "Last Deployment Date"); - addField(latestDeploymentDate); + DataSourceTextField latestDeploymentDate = new DataSourceTextField("latestDeploymentDate", + "Last Deployment Date"); + fields.add(latestDeploymentDate);
- DataSourceTextField latestDeploymentStatus = new DataSourceTextField("latestDeploymentStatus", "Last Deployment Status"); - addField(latestDeploymentStatus); + DataSourceTextField latestDeploymentStatus = new DataSourceTextField("latestDeploymentStatus", + "Last Deployment Status"); + fields.add(latestDeploymentStatus);
+ return fields; }
- @Override protected void executeFetch(final DSRequest request, final DSResponse response) { BundleDestinationCriteria criteria = new BundleDestinationCriteria(); @@ -88,7 +100,7 @@ public class BundleDestinationDataSource extends RPCDataSource<BundleDestination criteria.addFilterBundleId(Integer.parseInt(request.getCriteria().getAttributeAsString("bundleId"))); }
- if (request.getCriteria().getValues().get("tagNamespace") != null) { + if (request.getCriteria().getValues().get("tagNamespace") != null) { criteria.addFilterTagNamespace((String) request.getCriteria().getValues().get("tagNamespace")); }
@@ -100,28 +112,29 @@ public class BundleDestinationDataSource extends RPCDataSource<BundleDestination criteria.addFilterTagName((String) request.getCriteria().getValues().get("tagName")); }
- criteria.fetchBundle(true); criteria.fetchDeployments(true); criteria.fetchGroup(true); criteria.fetchTags(true);
- GWTServiceLookup.getBundleService().findBundleDestinationsByCriteria(criteria, - new AsyncCallback<PageList<BundleDestination>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to load bundle destinations",caught); - } + new AsyncCallback<PageList<BundleDestination>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError("Failed to load bundle destinations", caught); + }
- public void onSuccess(final PageList<BundleDestination> result) { + public void onSuccess(final PageList<BundleDestination> result) {
- BundleVersionCriteria versionCriteria = new BundleVersionCriteria(); - if (request.getCriteria().getValues().containsKey("bundleId")) { - versionCriteria.addFilterBundleId(Integer.parseInt(request.getCriteria().getAttributeAsString("bundleId"))); - } - GWTServiceLookup.getBundleService().findBundleVersionsByCriteria(versionCriteria, new AsyncCallback<PageList<BundleVersion>>() { + BundleVersionCriteria versionCriteria = new BundleVersionCriteria(); + if (request.getCriteria().getValues().containsKey("bundleId")) { + versionCriteria.addFilterBundleId(Integer.parseInt(request.getCriteria().getAttributeAsString( + "bundleId"))); + } + GWTServiceLookup.getBundleService().findBundleVersionsByCriteria(versionCriteria, + new AsyncCallback<PageList<BundleVersion>>() { public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to load bundle destination deployed version info",caught); + CoreGUI.getErrorHandler().handleError( + "Failed to load bundle destination deployed version info", caught); }
public void onSuccess(PageList<BundleVersion> versions) { @@ -143,8 +156,8 @@ public class BundleDestinationDataSource extends RPCDataSource<BundleDestination
} }); - } - }); + } + }); }
@Override @@ -168,7 +181,6 @@ public class BundleDestinationDataSource extends RPCDataSource<BundleDestination record.setAttribute("deployDir", from.getDeployDir()); record.setAttribute("entity", from);
- long last = 0; for (BundleDeployment dep : from.getDeployments()) { if (last < dep.getCtime()) { @@ -182,7 +194,6 @@ public class BundleDestinationDataSource extends RPCDataSource<BundleDestination } }
- return record; } } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundleVersionDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundleVersionDataSource.java index 6b08c63..b5b0444 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundleVersionDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundleVersionDataSource.java @@ -18,9 +18,12 @@ */ package org.rhq.enterprise.gui.coregui.client.bundle.list;
+import java.util.List; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.widgets.grid.ListGridRecord; @@ -39,26 +42,34 @@ import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource; public class BundleVersionDataSource extends RPCDataSource<BundleVersion> {
private BundleGWTServiceAsync bundleService = GWTServiceLookup.getBundleService(); - private int bundleId;
public BundleVersionDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + DataSourceIntegerField idField = new DataSourceIntegerField("id", "ID"); idField.setPrimaryKey(true); - addField(idField); + fields.add(idField);
DataSourceTextField latestVersionField = new DataSourceTextField("version", "Version"); - addField(latestVersionField); + fields.add(latestVersionField);
DataSourceTextField nameField = new DataSourceTextField("name", "Name"); - addField(nameField); + fields.add(nameField);
DataSourceTextField descriptionField = new DataSourceTextField("description", "Description"); - addField(descriptionField); - - + fields.add(descriptionField);
DataSourceIntegerField deploymentCountField = new DataSourceIntegerField("fileCount", "File Count"); - addField(deploymentCountField); + fields.add(deploymentCountField); + + return fields; }
@Override @@ -70,7 +81,8 @@ public class BundleVersionDataSource extends RPCDataSource<BundleVersion> { criteria.setPageControl(getPageControl(request));
if (request.getCriteria().getValues().get("bundleId") != null) { - criteria.addFilterBundleId(Integer.parseInt(String.valueOf(request.getCriteria().getValues().get("bundleId")))); + criteria.addFilterBundleId(Integer.parseInt(String.valueOf(request.getCriteria().getValues() + .get("bundleId")))); }
if (request.getCriteria().getValues().get("tagNamespace") != null) { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesDataSource.java index 7c8aa02..32cf81a 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesDataSource.java @@ -18,9 +18,12 @@ */ package org.rhq.enterprise.gui.coregui.client.bundle.list;
+import java.util.List; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.widgets.grid.ListGridRecord; @@ -41,19 +44,29 @@ public class BundlesDataSource extends RPCDataSource<Bundle> { private BundleGWTServiceAsync bundleService = GWTServiceLookup.getBundleService();
public BundlesDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceIntegerField idField = new DataSourceIntegerField("id", "ID"); idField.setPrimaryKey(true); - addField(idField); + fields.add(idField);
DataSourceTextField nameField = new DataSourceTextField("name", "Name"); - addField(nameField); + fields.add(nameField);
DataSourceTextField descriptionField = new DataSourceTextField("description", "Description"); - addField(descriptionField); + fields.add(descriptionField);
DataSourceTextField bundleTypeDataField = new DataSourceTextField("bundleType", "Bundle Type"); - addField(bundleTypeDataField); + fields.add(bundleTypeDataField); + + return fields; }
@Override @@ -62,7 +75,6 @@ public class BundlesDataSource extends RPCDataSource<Bundle> { BundleCriteria criteria = new BundleCriteria(); criteria.setPageControl(getPageControl(request));
- if (request.getCriteria().getValues().get("tagNamespace") != null) { criteria.addFilterTagNamespace((String) request.getCriteria().getValues().get("tagNamespace")); } @@ -75,7 +87,6 @@ public class BundlesDataSource extends RPCDataSource<Bundle> { criteria.addFilterTagName((String) request.getCriteria().getValues().get("tagName")); }
- bundleService.findBundlesByCriteria(criteria, new AsyncCallback<PageList<Bundle>>() { public void onFailure(Throwable caught) { CoreGUI.getErrorHandler().handleError("Failed to load bundle data", caught); diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesWithLatestVersionDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesWithLatestVersionDataSource.java index e3b54ac..76340e2 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesWithLatestVersionDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesWithLatestVersionDataSource.java @@ -18,9 +18,12 @@ */ package org.rhq.enterprise.gui.coregui.client.bundle.list;
+import java.util.List; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceLinkField; import com.smartgwt.client.data.fields.DataSourceTextField; @@ -42,23 +45,32 @@ public class BundlesWithLatestVersionDataSource extends RPCDataSource<BundleWith private BundleGWTServiceAsync bundleService = GWTServiceLookup.getBundleService();
public BundlesWithLatestVersionDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceIntegerField idField = new DataSourceIntegerField("id", "ID"); idField.setPrimaryKey(true); - addField(idField); + fields.add(idField);
DataSourceLinkField linkField = new DataSourceLinkField("link", "Name"); - addField(linkField); - + fields.add(linkField);
DataSourceTextField descriptionField = new DataSourceTextField("description", "Description"); - addField(descriptionField); + fields.add(descriptionField);
DataSourceTextField latestVersionField = new DataSourceTextField("latestVersion", "Latest Version"); - addField(latestVersionField); + fields.add(latestVersionField);
DataSourceIntegerField deploymentCountField = new DataSourceIntegerField("versionsCount", "Versions Count"); - addField(deploymentCountField); + fields.add(deploymentCountField); + + return fields; }
@Override @@ -78,7 +90,6 @@ public class BundlesWithLatestVersionDataSource extends RPCDataSource<BundleWith criteria.addFilterTagName((String) request.getCriteria().getValues().get("tagName")); }
- bundleService.findBundlesWithLatestVersionCompositesByCriteria(criteria, new AsyncCallback<PageList<BundleWithLatestVersionComposite>>() { public void onFailure(Throwable caught) { @@ -115,11 +126,9 @@ public class BundlesWithLatestVersionDataSource extends RPCDataSource<BundleWith record.setAttribute("id", from.getBundleId()); record.setAttribute("name", from.getBundleName());
- record.setAttribute("link", "#Bundles/Bundle/" + from.getBundleId()); record.setLinkText(from.getBundleName());
- record.setAttribute("description", from.getBundleDescription()); record.setAttribute("latestVersion", from.getLatestVersion()); record.setAttribute("versionsCount", Integer.valueOf(from.getVersionsCount().intValue())); // want int, not long diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeDataSource.java index f1661c8..16e5e67 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/tree/BundleTreeDataSource.java @@ -24,6 +24,7 @@ package org.rhq.enterprise.gui.coregui.client.bundle.tree;
import java.util.ArrayList; import java.util.Collection; +import java.util.List;
import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; @@ -50,25 +51,34 @@ import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource; /** * @author Greg Hinkle */ +@SuppressWarnings("unchecked") public class BundleTreeDataSource extends RPCDataSource {
private BundleGWTServiceAsync bundleService = GWTServiceLookup.getBundleService();
public BundleTreeDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + DataSourceField idDataField = new DataSourceTextField("id", "ID"); idDataField.setPrimaryKey(true); + fields.add(idDataField);
DataSourceTextField nameDataField = new DataSourceTextField("name", "Name"); nameDataField.setCanEdit(false); - - DataSourceTextField descriptionDataField = new DataSourceTextField("description", "Description"); - descriptionDataField.setCanEdit(false); + fields.add(nameDataField);
DataSourceTextField parentIdField = new DataSourceTextField("parentId", "Parent ID"); parentIdField.setForeignKey("id"); + fields.add(parentIdField);
- - setFields(idDataField, nameDataField, parentIdField); + return fields; }
@Override @@ -97,8 +107,8 @@ public class BundleTreeDataSource extends RPCDataSource { } }); } else { - if (p.endsWith(":versions")) { - int bundleId = Integer.parseInt(p.substring(0, p.indexOf(":"))); + if (p.endsWith("_versions")) { + int bundleId = Integer.parseInt(p.substring(0, p.indexOf("_"))); BundleVersionCriteria criteria = new BundleVersionCriteria(); criteria.addFilterBundleId(bundleId); bundleService.findBundleVersionsByCriteria(criteria, new AsyncCallback<PageList<BundleVersion>>() { @@ -114,46 +124,47 @@ public class BundleTreeDataSource extends RPCDataSource { processResponse(request.getRequestId(), response); } }); - } else if (p.endsWith(":deployments")) { - int bundleId = Integer.parseInt(p.substring(0, p.indexOf(":"))); + } else if (p.endsWith("_deployments")) { + int bundleId = Integer.parseInt(p.substring(0, p.indexOf("_"))); BundleDeploymentCriteria criteria = new BundleDeploymentCriteria(); criteria.fetchBundleVersion(true); criteria.addFilterBundleId(bundleId); - bundleService.findBundleDeploymentsByCriteria(criteria, new AsyncCallback<PageList<BundleDeployment>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to load bundle", caught); - } - - public void onSuccess(PageList<BundleDeployment> result) { - response.setData(buildRecords(result)); - processResponse(request.getRequestId(), response); - } - }); - } else if (p.endsWith(":destinations")) { - int bundleId = Integer.parseInt(p.substring(0, p.indexOf(":"))); + bundleService.findBundleDeploymentsByCriteria(criteria, + new AsyncCallback<PageList<BundleDeployment>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError("Failed to load bundle", caught); + } + + public void onSuccess(PageList<BundleDeployment> result) { + response.setData(buildRecords(result)); + processResponse(request.getRequestId(), response); + } + }); + } else if (p.endsWith("_destinations")) { + int bundleId = Integer.parseInt(p.substring(0, p.indexOf("_"))); BundleDestinationCriteria criteria = new BundleDestinationCriteria(); criteria.addFilterBundleId(bundleId); - bundleService.findBundleDestinationsByCriteria(criteria, new AsyncCallback<PageList<BundleDestination>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to load bundle destinations", caught); - } - - public void onSuccess(PageList<BundleDestination> result) { - response.setData(buildRecords(result)); - processResponse(request.getRequestId(), response); - } - }); + bundleService.findBundleDestinationsByCriteria(criteria, + new AsyncCallback<PageList<BundleDestination>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError("Failed to load bundle destinations", caught); + } + + public void onSuccess(PageList<BundleDestination> result) { + response.setData(buildRecords(result)); + processResponse(request.getRequestId(), response); + } + });
}
}
- }
@Override public Object copyValues(ListGridRecord from) { - return null; // TODO: Implement this method. + return null; // TODO: Implement this method. }
@Override @@ -171,14 +182,14 @@ public class BundleTreeDataSource extends RPCDataSource { Bundle bundle = (Bundle) item;
TreeNode versionNode = new TreeNode("Versions"); - versionNode.setID(bundle.getId() + ":versions"); + versionNode.setID(bundle.getId() + "_versions"); versionNode.setParentID(String.valueOf(bundle.getId())); versionNode.setName("Versions"); versionNode.setAttribute("name", "Versions"); records.add(versionNode);
TreeNode deploymentsNode = new TreeNode("Destinations"); - deploymentsNode.setID(bundle.getId() + ":destinations"); + deploymentsNode.setID(bundle.getId() + "_destinations"); deploymentsNode.setParentID(String.valueOf(bundle.getId())); deploymentsNode.setName("Destinations"); records.add(deploymentsNode); @@ -187,7 +198,6 @@ public class BundleTreeDataSource extends RPCDataSource { return records.toArray(new ListGridRecord[records.size()]); }
- @Override public ListGridRecord copyValues(Object from) { TreeNode node = new TreeNode(); @@ -200,23 +210,23 @@ public class BundleTreeDataSource extends RPCDataSource { } else if (from instanceof BundleVersion) { BundleVersion version = (BundleVersion) from; node.setName(version.getVersion()); - node.setID(version.getBundle().getId() + ":versions:" + version.getId()); - node.setParentID(version.getBundle().getId() + ":versions"); + node.setID(version.getBundle().getId() + "_versions_" + version.getId()); + node.setParentID(version.getBundle().getId() + "_versions"); node.setIsFolder(false); node.setIcon("subsystems/bundle/BundleVersion_16.png");
} else if (from instanceof BundleDeployment) { BundleDeployment deployment = (BundleDeployment) from; node.setName(deployment.getName() + " (" + deployment.getBundleVersion().getVersion() + ")"); - node.setID(deployment.getBundleVersion().getBundle().getId() + ":deployments:" + deployment.getId()); - node.setParentID(deployment.getBundleVersion().getBundle().getId() + ":deployments"); + node.setID(deployment.getBundleVersion().getBundle().getId() + "_deployments_" + deployment.getId()); + node.setParentID(deployment.getBundleVersion().getBundle().getId() + "_deployments"); node.setIsFolder(false); node.setIcon("subsystems/bundle/BundleDeployment_16.png"); } else if (from instanceof BundleDestination) { BundleDestination destination = (BundleDestination) from; node.setName(destination.getName()); - node.setID(destination.getBundle().getId() + ":destinations:" +destination.getId()); - node.setParentID(destination.getBundle().getId() + ":destinations"); + node.setID(destination.getBundle().getId() + "_destinations_" + destination.getId()); + node.setParentID(destination.getBundle().getId() + "_destinations"); node.setIsFolder(false); node.setIcon("subsystems/bundle/BundleDestination_16.png"); } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java index b4aff2b..7e2604e 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java @@ -23,7 +23,9 @@ import java.util.List;
import com.smartgwt.client.data.Criteria; import com.smartgwt.client.data.SortSpecifier; +import com.smartgwt.client.types.Alignment; import com.smartgwt.client.types.Autofit; +import com.smartgwt.client.types.ListGridFieldType; import com.smartgwt.client.types.Overflow; import com.smartgwt.client.types.SelectionStyle; import com.smartgwt.client.types.VerticalAlignment; @@ -47,6 +49,7 @@ import com.smartgwt.client.widgets.form.fields.events.ChangedHandler; import com.smartgwt.client.widgets.form.fields.events.KeyPressEvent; import com.smartgwt.client.widgets.form.fields.events.KeyPressHandler; import com.smartgwt.client.widgets.grid.ListGrid; +import com.smartgwt.client.widgets.grid.ListGridField; import com.smartgwt.client.widgets.grid.events.DataArrivedEvent; import com.smartgwt.client.widgets.grid.events.DataArrivedHandler; import com.smartgwt.client.widgets.grid.events.SelectionChangedHandler; @@ -484,6 +487,33 @@ public class Table extends LocatableHLayout implements RefreshableView { return listGrid; }
+ /** + * Wraps ListGrid.setFields(...) but takes care of "id" field display handling + * @param fields + */ + public void setListGridFields(ListGridField... fields) { + if (null == this.dataSource.getField("id")) { + return; + } + + if (CoreGUI.isDebugMode()) { + ListGridField idField = new ListGridField("id", "Id", 55); + idField.setType(ListGridFieldType.INTEGER); + idField.setCanEdit(false); + idField.setAlign(Alignment.LEFT); + + ListGridField[] newFields = new ListGridField[fields.length + 1]; + newFields[0] = idField; + for (int i = 0; i < fields.length; ++i) { + newFields[i + 1] = fields[i]; + } + this.listGrid.setFields(newFields); + } else { + getListGrid().hideField("id"); + this.listGrid.setFields(fields); + } + } + public void setTitleComponent(Canvas canvas) { this.titleComponent = canvas; } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/tagging/TaggingDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/tagging/TaggingDataSource.java index 1d3f08d..a971a97 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/tagging/TaggingDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/tagging/TaggingDataSource.java @@ -47,38 +47,37 @@ public class TaggingDataSource extends RPCDataSource<Tag> { String search = (String) request.getCriteria().getValues().get("tag"); if (search != null) { // todo -// criteria.addFilter + // criteria.addFilter }
- GWTServiceLookup.getTagService().findTagsByCriteria(new TagCriteria(), - new AsyncCallback<PageList<Tag>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to load tags",caught); - response.setStatus(DSResponse.STATUS_FAILURE); - processResponse(request.getRequestId(), response); - } + GWTServiceLookup.getTagService().findTagsByCriteria(new TagCriteria(), new AsyncCallback<PageList<Tag>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError("Failed to load tags", caught); + response.setStatus(DSResponse.STATUS_FAILURE); + processResponse(request.getRequestId(), response); + }
- public void onSuccess(PageList<Tag> result) { - response.setData(buildRecords(result)); - processResponse(request.getRequestId(), response); - } - }); + public void onSuccess(PageList<Tag> result) { + response.setData(buildRecords(result)); + processResponse(request.getRequestId(), response); + } + });
}
@Override public Tag copyValues(ListGridRecord from) { - return null; // TODO: Implement this method. + return null; // TODO: Implement this method. }
@Override public ListGridRecord copyValues(Tag from) { ListGridRecord record = new ListGridRecord(); - record.setAttribute("id",from.getId()); - record.setAttribute("namespace",from.getNamespace()); - record.setAttribute("semantic",from.getSemantic()); - record.setAttribute("name",from.getName()); - record.setAttribute("tag",from.toString()); + record.setAttribute("id", from.getId()); + record.setAttribute("namespace", from.getNamespace()); + record.setAttribute("semantic", from.getSemantic()); + record.setAttribute("name", from.getName()); + record.setAttribute("tag", from.toString()); return record; } } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/tree/EnhancedTreeNode.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/tree/EnhancedTreeNode.java index f4b69ae..a2b8b37 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/tree/EnhancedTreeNode.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/tree/EnhancedTreeNode.java @@ -28,11 +28,9 @@ import org.rhq.core.domain.util.StringUtils; public class EnhancedTreeNode extends TreeNode { public EnhancedTreeNode() { super(); - // this(null); }
public EnhancedTreeNode(String name) { - //this(name, new TreeNode[0]); super(name); if (name != null) { setTitle(StringUtils.deCamelCase(name)); diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/content/repository/tree/ContentRepositoryTreeDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/content/repository/tree/ContentRepositoryTreeDataSource.java index 9b54565..9490647 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/content/repository/tree/ContentRepositoryTreeDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/content/repository/tree/ContentRepositoryTreeDataSource.java @@ -22,6 +22,8 @@ */ package org.rhq.enterprise.gui.coregui.client.content.repository.tree;
+import java.util.List; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; @@ -30,52 +32,54 @@ import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.widgets.grid.ListGridRecord; import com.smartgwt.client.widgets.tree.TreeNode;
-import org.rhq.core.domain.criteria.Criteria; +import org.rhq.core.domain.content.Repo; import org.rhq.core.domain.criteria.RepoCriteria; 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.gwt.RepoGWTServiceAsync; import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource; -import org.rhq.core.domain.content.Repo;
/** * @author Greg Hinkle */ -public class ContentRepositoryTreeDataSource extends RPCDataSource<Repo> { +public class ContentRepositoryTreeDataSource extends RPCDataSource<Repo> {
private RepoGWTServiceAsync repoService = GWTServiceLookup.getRepoService();
- - public ContentRepositoryTreeDataSource() { + super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceField idDataField = new DataSourceTextField("id", "ID"); idDataField.setPrimaryKey(true); + fields.add(idDataField);
DataSourceTextField nameDataField = new DataSourceTextField("name", "Name"); nameDataField.setCanEdit(false); - - DataSourceTextField descriptionDataField = new DataSourceTextField("description", "Description"); - descriptionDataField.setCanEdit(false); + fields.add(nameDataField);
DataSourceTextField parentIdField = new DataSourceTextField("parentId", "Parent ID"); parentIdField.setForeignKey("id"); + fields.add(parentIdField);
- setFields(idDataField, nameDataField, parentIdField); + return fields; }
- @Override protected void executeFetch(final DSRequest request, final DSResponse response) {
- RepoCriteria criteria = new RepoCriteria();
- repoService.findReposByCriteria(criteria, new AsyncCallback<PageList<Repo>>() { public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to load repositories",caught); + CoreGUI.getErrorHandler().handleError("Failed to load repositories", caught); }
public void onSuccess(PageList<Repo> result) { @@ -88,7 +92,7 @@ public class ContentRepositoryTreeDataSource extends RPCDataSource<Repo> {
@Override public Repo copyValues(ListGridRecord from) { - return null; // TODO: Implement this method. + return null; // TODO: Implement this method. }
@Override diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/platform/PlatformMetricDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/platform/PlatformMetricDataSource.java index 7f9d8fd..b0f94c3 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/platform/PlatformMetricDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/platform/PlatformMetricDataSource.java @@ -18,9 +18,9 @@ */ package org.rhq.enterprise.gui.coregui.client.dashboard.portlets.platform;
+import java.util.List; + import com.smartgwt.client.data.DataSourceField; -import com.smartgwt.client.data.fields.DataSourceImageField; -import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.widgets.grid.ListGridRecord;
@@ -38,15 +38,24 @@ public class PlatformMetricDataSource extends ResourceDatasource { super(); this.view = view;
- DataSourceTextField cpuField = new DataSourceTextField("cpu","CPU"); - addField(cpuField); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + + DataSourceTextField cpuField = new DataSourceTextField("cpu", "CPU"); + fields.add(cpuField); DataSourceTextField memoryField = new DataSourceTextField("memory", "Memory"); - addField(memoryField); + fields.add(memoryField); + DataSourceTextField swapField = new DataSourceTextField("swap", "Swap"); // todo swap - } -
+ return fields; + }
@Override public ListGridRecord copyValues(Resource from) { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitDataSource.java index b30714f..874d92d 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitDataSource.java @@ -18,14 +18,19 @@ */ package org.rhq.enterprise.gui.coregui.client.inventory.common;
+import java.util.List; +import java.util.Map; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.Criteria; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; import com.smartgwt.client.data.DataSourceField; -import com.smartgwt.client.data.fields.*; +import com.smartgwt.client.data.fields.DataSourceIntegerField; +import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.rpc.RPCResponse; import com.smartgwt.client.widgets.grid.ListGridRecord; + import org.rhq.core.domain.criteria.MeasurementDataTraitCriteria; import org.rhq.core.domain.measurement.MeasurementDataTrait; import org.rhq.core.domain.util.PageList; @@ -34,10 +39,6 @@ import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup; import org.rhq.enterprise.gui.coregui.client.gwt.MeasurementDataGWTServiceAsync; import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource;
-import java.util.ArrayList; -import java.util.List; -import java.util.Map; - /** * A server-side SmartGWT DataSource for reading {@link MeasurementDataTrait trait data}. * @@ -48,12 +49,13 @@ public abstract class AbstractMeasurementDataTraitDataSource extends RPCDataSour
protected AbstractMeasurementDataTraitDataSource() { setCanMultiSort(true); - List<DataSourceField> fields = createFields(); + List<DataSourceField> fields = addDataSourceFields(); addFields(fields); }
- protected List<DataSourceField> createFields() { - List<DataSourceField> fields = new ArrayList<DataSourceField>(); + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceTextField primaryKeyField = new DataSourceTextField("primaryKey", "Primary Key"); primaryKeyField.setPrimaryKey(true); @@ -65,17 +67,16 @@ public abstract class AbstractMeasurementDataTraitDataSource extends RPCDataSour fields.add(idField);
DataSourceTextField nameField = new DataSourceTextField(MeasurementDataTraitCriteria.SORT_FIELD_DISPLAY_NAME, - "Trait"); + "Trait"); fields.add(nameField);
// TODO: Include description from metric def?
- DataSourceTextField valueField = new DataSourceTextField(MeasurementDataTraitCriteria.SORT_FIELD_VALUE, - "Value"); + DataSourceTextField valueField = new DataSourceTextField(MeasurementDataTraitCriteria.SORT_FIELD_VALUE, "Value"); fields.add(valueField);
- DataSourceIntegerField timestampField = new DataSourceIntegerField(MeasurementDataTraitCriteria.SORT_FIELD_TIMESTAMP, - "Last Changed"); + DataSourceIntegerField timestampField = new DataSourceIntegerField( + MeasurementDataTraitCriteria.SORT_FIELD_TIMESTAMP, "Last Changed"); fields.add(timestampField);
return fields; @@ -88,8 +89,7 @@ public abstract class AbstractMeasurementDataTraitDataSource extends RPCDataSour
this.measurementService.findTraitsByCriteria(criteria, new AsyncCallback<PageList<MeasurementDataTrait>>() { public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to fetch traits for criteria " + criteria, - caught); + CoreGUI.getErrorHandler().handleError("Failed to fetch traits for criteria " + criteria, caught); response.setStatus(RPCResponse.STATUS_FAILURE); processResponse(request.getRequestId(), response); } @@ -145,9 +145,10 @@ public abstract class AbstractMeasurementDataTraitDataSource extends RPCDataSour record.setAttribute("primaryKey", from.getScheduleId() + ":" + from.getTimestamp()); record.setAttribute("id", from.getSchedule().getDefinition().getId()); // used for detail view record.setAttribute(MeasurementDataTraitCriteria.SORT_FIELD_TIMESTAMP, from.getTimestamp()); - record.setAttribute(MeasurementDataTraitCriteria.SORT_FIELD_DISPLAY_NAME, from.getSchedule().getDefinition().getDisplayName()); + record.setAttribute(MeasurementDataTraitCriteria.SORT_FIELD_DISPLAY_NAME, from.getSchedule().getDefinition() + .getDisplayName()); record.setAttribute(MeasurementDataTraitCriteria.SORT_FIELD_VALUE, from.getValue()); - + return record; } } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementScheduleCompositeDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementScheduleCompositeDataSource.java index 7782c87..1f7da77 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementScheduleCompositeDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementScheduleCompositeDataSource.java @@ -49,7 +49,8 @@ import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource; * * @author Ian Springer */ -public abstract class AbstractMeasurementScheduleCompositeDataSource extends RPCDataSource<MeasurementScheduleComposite> { +public abstract class AbstractMeasurementScheduleCompositeDataSource extends + RPCDataSource<MeasurementScheduleComposite> { private MeasurementDataGWTServiceAsync measurementService = GWTServiceLookup.getMeasurementDataService();
protected AbstractMeasurementScheduleCompositeDataSource() { @@ -57,37 +58,38 @@ public abstract class AbstractMeasurementScheduleCompositeDataSource extends RPC
setCanMultiSort(true);
- List<DataSourceField> fields = createFields(); + List<DataSourceField> fields = addDataSourceFields(); addFields(fields); }
- protected List<DataSourceField> createFields() { - List<DataSourceField> fields = new ArrayList<DataSourceField>(); + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
- DataSourceIntegerField idField = new DataSourceIntegerField(MeasurementScheduleCriteria.SORT_FIELD_DEFINITION_ID, - "Id"); + DataSourceIntegerField idField = new DataSourceIntegerField( + MeasurementScheduleCriteria.SORT_FIELD_DEFINITION_ID, "Id"); idField.setPrimaryKey(true); idField.setHidden(true); fields.add(idField);
DataSourceTextField nameField = new DataSourceTextField(MeasurementScheduleCriteria.SORT_FIELD_DISPLAY_NAME, - "Metric"); + "Metric"); fields.add(nameField);
- DataSourceTextField descriptionField = new DataSourceTextField(MeasurementScheduleCriteria.SORT_FIELD_DESCRIPTION, - "Description"); + DataSourceTextField descriptionField = new DataSourceTextField( + MeasurementScheduleCriteria.SORT_FIELD_DESCRIPTION, "Description"); fields.add(descriptionField);
DataSourceTextField typeField = new DataSourceTextField(MeasurementScheduleCriteria.SORT_FIELD_DATA_TYPE, - "Type"); + "Type"); fields.add(typeField);
- DataSourceBooleanField enabledField = new DataSourceBooleanField(MeasurementScheduleCriteria.SORT_FIELD_ENABLED, - "Enabled?"); + DataSourceBooleanField enabledField = new DataSourceBooleanField( + MeasurementScheduleCriteria.SORT_FIELD_ENABLED, "Enabled?"); fields.add(enabledField);
- DataSourceIntegerField intervalField = new DataSourceIntegerField(MeasurementScheduleCriteria.SORT_FIELD_INTERVAL, - "Collection Interval"); + DataSourceIntegerField intervalField = new DataSourceIntegerField( + MeasurementScheduleCriteria.SORT_FIELD_INTERVAL, "Collection Interval"); fields.add(intervalField);
return fields; @@ -96,21 +98,22 @@ public abstract class AbstractMeasurementScheduleCompositeDataSource extends RPC protected void executeFetch(final DSRequest request, final DSResponse response) { final EntityContext entityContext = getEntityContext(request);
- this.measurementService.getMeasurementScheduleCompositesByContext(entityContext, new AsyncCallback<PageList<MeasurementScheduleComposite>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to fetch measurement schedules for context " + entityContext, - caught); - response.setStatus(RPCResponse.STATUS_FAILURE); - processResponse(request.getRequestId(), response); - } + this.measurementService.getMeasurementScheduleCompositesByContext(entityContext, + new AsyncCallback<PageList<MeasurementScheduleComposite>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError( + "Failed to fetch measurement schedules for context " + entityContext, caught); + response.setStatus(RPCResponse.STATUS_FAILURE); + processResponse(request.getRequestId(), response); + }
- public void onSuccess(PageList<MeasurementScheduleComposite> result) { - response.setData(buildRecords(result)); - // For paging to work, we have to specify size of full result set. - response.setTotalRows(result.getTotalSize()); - processResponse(request.getRequestId(), response); - } - }); + public void onSuccess(PageList<MeasurementScheduleComposite> result) { + response.setData(buildRecords(result)); + // For paging to work, we have to specify size of full result set. + response.setTotalRows(result.getTotalSize()); + processResponse(request.getRequestId(), response); + } + }); }
protected EntityContext getEntityContext(DSRequest request) { @@ -150,15 +153,16 @@ public abstract class AbstractMeasurementScheduleCompositeDataSource extends RPC
MeasurementDefinition measurementDefinition = from.getMeasurementDefinition(); record.setAttribute(MeasurementScheduleCriteria.SORT_FIELD_DEFINITION_ID, measurementDefinition.getId()); - record.setAttribute(MeasurementScheduleCriteria.SORT_FIELD_DISPLAY_NAME, measurementDefinition.getDisplayName()); + record + .setAttribute(MeasurementScheduleCriteria.SORT_FIELD_DISPLAY_NAME, measurementDefinition.getDisplayName()); record.setAttribute(MeasurementScheduleCriteria.SORT_FIELD_DESCRIPTION, measurementDefinition.getDescription()); - record.setAttribute(MeasurementScheduleCriteria.SORT_FIELD_DATA_TYPE, - measurementDefinition.getDataType().name().toLowerCase()); + record.setAttribute(MeasurementScheduleCriteria.SORT_FIELD_DATA_TYPE, measurementDefinition.getDataType() + .name().toLowerCase()); record.setAttribute(MeasurementScheduleCriteria.SORT_FIELD_ENABLED, from.getCollectionEnabled()); record.setAttribute(MeasurementScheduleCriteria.SORT_FIELD_INTERVAL, from.getCollectionInterval());
// TODO: resourceId and resourceGroupId (in subclasses) - + return record; }
@@ -170,7 +174,7 @@ public abstract class AbstractMeasurementScheduleCompositeDataSource extends RPC }
protected abstract void enableSchedules(AbstractMeasurementScheduleListView measurementScheduleListView, - int[] measurementDefinitionIds, List<String> measurementDefinitionDisplayNames); + int[] measurementDefinitionIds, List<String> measurementDefinitionDisplayNames);
public void disableSchedules(AbstractMeasurementScheduleListView measurementScheduleListView) { int[] ids = getMeasurementDefinitionIds(measurementScheduleListView); @@ -180,7 +184,7 @@ public abstract class AbstractMeasurementScheduleCompositeDataSource extends RPC }
protected abstract void disableSchedules(AbstractMeasurementScheduleListView measurementScheduleListView, - int[] measurementDefinitionIds, List<String> measurementDefinitionDisplayNames); + int[] measurementDefinitionIds, List<String> measurementDefinitionDisplayNames);
public void updateSchedules(AbstractMeasurementScheduleListView measurementScheduleListView, long interval) { int[] ids = getMeasurementDefinitionIds(measurementScheduleListView); @@ -196,13 +200,15 @@ public abstract class AbstractMeasurementScheduleCompositeDataSource extends RPC int[] measurementDefinitionIds = new int[records.length]; for (int i = 0, selectionLength = records.length; i < selectionLength; i++) { ListGridRecord record = records[i]; - Integer measurementDefinitionId = record.getAttributeAsInt(MeasurementScheduleCriteria.SORT_FIELD_DEFINITION_ID); + Integer measurementDefinitionId = record + .getAttributeAsInt(MeasurementScheduleCriteria.SORT_FIELD_DEFINITION_ID); measurementDefinitionIds[i] = measurementDefinitionId; } return measurementDefinitionIds; }
- private List<String> getMeasurementDefinitionDisplayNames(AbstractMeasurementScheduleListView measurementScheduleListView) { + private List<String> getMeasurementDefinitionDisplayNames( + AbstractMeasurementScheduleListView measurementScheduleListView) { ListGrid listGrid = measurementScheduleListView.getListGrid(); ListGridRecord[] records = listGrid.getSelection(); List<String> displayNames = new ArrayList<String>(records.length); @@ -214,5 +220,5 @@ public abstract class AbstractMeasurementScheduleCompositeDataSource extends RPC }
protected abstract void updateSchedules(final AbstractMeasurementScheduleListView measurementScheduleListView, - final int[] measurementDefinitionIds, List<String> measurementDefinitionDisplayNames, final long interval); + final int[] measurementDefinitionIds, List<String> measurementDefinitionDisplayNames, final long interval); } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeDatasource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeDatasource.java index 40dc105..03d6575 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeDatasource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeDatasource.java @@ -22,11 +22,14 @@ */ package org.rhq.enterprise.gui.coregui.client.inventory.common.event;
+import java.util.List; import java.util.Map;
import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; +import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.rpc.RPCResponse; import com.smartgwt.client.types.FieldType; @@ -54,23 +57,32 @@ public class EventCompositeDatasource extends RPCDataSource<EventComposite> { public EventCompositeDatasource(EntityContext context) { super(); this.entityContext = context; + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
- // DataSourceField id = new DataSourceIntegerField("id", "Id"); - // id.setPrimaryKey(true); - // addField(id); + DataSourceField id = new DataSourceIntegerField("id", "Id"); + id.setPrimaryKey(true); + fields.add(id);
DataSourceTextField timestamp = new DataSourceTextField("timestamp", "Timestamp"); timestamp.setType(FieldType.DATETIME); - addField(timestamp); + fields.add(timestamp);
DataSourceTextField severity = new DataSourceTextField("severity", "Severity"); - addField(severity); + fields.add(severity);
DataSourceTextField details = new HighlightingDatasourceTextField("details", "Details"); - addField(details); + fields.add(details);
DataSourceTextField sourceLocation = new DataSourceTextField("source", "Source Location"); - addField(sourceLocation); + fields.add(sourceLocation); + + return fields; }
@Override diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java index 4bdfdd4..4ddfa54 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java @@ -120,7 +120,7 @@ public class EventCompositeHistoryView extends TableSection { } });
- grid.setFields(timestampField, severityField, detailsField, sourceField); + setListGridFields(timestampField, severityField, detailsField, sourceField);
/* grid.getField("timestamp").setWidth(125); diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java index 0da1963..6fd1d01 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java @@ -21,9 +21,12 @@ package org.rhq.enterprise.gui.coregui.client.inventory.groups; import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.CATEGORY; import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.NAME;
+import java.util.List; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.rpc.RPCResponse; import com.smartgwt.client.widgets.grid.ListGridRecord; @@ -57,18 +60,32 @@ public class ResourceGroupCompositeDataSource extends RPCDataSource<ResourceGrou
public ResourceGroupCompositeDataSource() { super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceTextField nameDataField = new DataSourceTextField("name", "Name", 200); nameDataField.setCanEdit(false); + fields.add(nameDataField);
DataSourceTextField descriptionDataField = new DataSourceTextField("description", "Description"); descriptionDataField.setCanEdit(false); + fields.add(descriptionDataField);
DataSourceTextField typeNameDataField = new DataSourceTextField("typeName", "Type"); + fields.add(typeNameDataField); + DataSourceTextField pluginNameDataField = new DataSourceTextField("pluginName", "Plugin"); + fields.add(pluginNameDataField); + DataSourceTextField categoryDataField = new DataSourceTextField("category", "Category"); + fields.add(categoryDataField);
- setFields(nameDataField, descriptionDataField, typeNameDataField, pluginNameDataField, categoryDataField); + return fields; }
public void executeFetch(final DSRequest request, final DSResponse response) { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupsDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupsDataSource.java index 2a02c99..190baf7 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupsDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupsDataSource.java @@ -21,6 +21,8 @@ package org.rhq.enterprise.gui.coregui.client.inventory.groups; import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.CATEGORY; import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.NAME;
+import java.util.List; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; @@ -58,22 +60,36 @@ public class ResourceGroupsDataSource extends RPCDataSource<ResourceGroup> {
public ResourceGroupsDataSource() { super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceField idDataField = new DataSourceIntegerField("id", "ID", 20); idDataField.setPrimaryKey(true); + fields.add(idDataField);
DataSourceTextField nameDataField = new DataSourceTextField("name", "Name", 200); nameDataField.setCanEdit(false); + fields.add(nameDataField);
DataSourceTextField descriptionDataField = new DataSourceTextField("description", "Description"); descriptionDataField.setCanEdit(false); + fields.add(descriptionDataField);
DataSourceTextField typeNameDataField = new DataSourceTextField("typeName", "Type"); + fields.add(typeNameDataField); + DataSourceTextField pluginNameDataField = new DataSourceTextField("pluginName", "Plugin"); + fields.add(pluginNameDataField); + DataSourceTextField categoryDataField = new DataSourceTextField("category", "Category"); + fields.add(categoryDataField);
- setFields(idDataField, nameDataField, descriptionDataField, typeNameDataField, pluginNameDataField, - categoryDataField); + return fields; }
public void executeFetch(final DSRequest request, final DSResponse response) { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionDataSource.java index f4da478..e9824e9 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionDataSource.java @@ -19,6 +19,7 @@ package org.rhq.enterprise.gui.coregui.client.inventory.groups.definitions;
import java.util.HashMap; +import java.util.List; import java.util.Map;
import com.google.gwt.core.client.JavaScriptObject; @@ -59,31 +60,39 @@ public class GroupDefinitionDataSource extends RPCDataSource<GroupDefinition> {
private GroupDefinitionDataSource() { super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceField idField = new DataSourceIntegerField("id", "ID"); idField.setPrimaryKey(true); idField.setCanEdit(false); + fields.add(idField);
DataSourceTextField nameField = new DataSourceTextField("name", "Name"); nameField.setRequired(true); + fields.add(nameField);
DataSourceTextField descriptionField = new DataSourceTextField("description", "Description"); + fields.add(descriptionField);
DataSourceTextField expressionField = new DataSourceTextField("expression", "Expression Set"); expressionField.setRequired(true); + fields.add(expressionField);
DataSourceIntegerField lastCalculationTimeIntervalField = new DataSourceIntegerField("lastCalculationTime", "Recalculation Interval"); + fields.add(lastCalculationTimeIntervalField);
DataSourceIntegerField nextCalculationTimeField = new DataSourceIntegerField("nextCalculationTime", "Next Calculation Time"); + fields.add(nextCalculationTimeField);
- addField(idField); - addField(nameField); - addField(descriptionField); - addField(expressionField); - addField(lastCalculationTimeIntervalField); - addField(nextCalculationTimeField); + return fields; }
@Override diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/ResourceGroupTreeView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/ResourceGroupTreeView.java index 481354b..fc08133 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/ResourceGroupTreeView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/ResourceGroupTreeView.java @@ -59,8 +59,8 @@ import org.rhq.enterprise.gui.coregui.client.components.tree.EnhancedTreeNode; import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup; import org.rhq.enterprise.gui.coregui.client.inventory.resource.type.ResourceTypeRepository; import org.rhq.enterprise.gui.coregui.client.util.StringUtility; -import org.rhq.enterprise.gui.coregui.client.util.TreeUtility; import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableVLayout; +import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
/** * @author Greg Hinkle @@ -270,7 +270,7 @@ public class ResourceGroupTreeView extends LocatableVLayout implements Bookmarka
ClusterKey rootKey = new ClusterKey(root.getGroupId()); loadTree(rootNode, root, rootKey); - + Tree tree = new Tree();
tree.setRoot(fakeRoot); @@ -347,26 +347,27 @@ public class ResourceGroupTreeView extends LocatableVLayout implements Bookmarka }
if (lastSubcategoryNode != null) { - List<TreeNode> currentSubcategoryChildren = subCategoryChildrenByName.get(currentSubcategoryNode.getName()); + List<TreeNode> currentSubcategoryChildren = subCategoryChildrenByName + .get(currentSubcategoryNode.getName()); currentSubcategoryChildren.add(lastSubcategoryNode); } lastSubcategoryNode = currentSubcategoryNode; - } while (currentSubcategoryNodeCreated && - (currentSubCategory = currentSubCategory.getParentSubCategory()) != null); + } while (currentSubcategoryNodeCreated + && (currentSubCategory = currentSubCategory.getParentSubCategory()) != null);
List<TreeNode> subcategoryChildren = subCategoryChildrenByName.get(subcategory.getName()); subcategoryChildren.addAll(nodesByType); - } else { + } else { childNodes.addAll(nodesByType); } } - + for (String subcategoryName : subCategoryNodesByName.keySet()) { TreeNode subcategoryNode = subCategoryNodesByName.get(subcategoryName); List<TreeNode> subcategoryChildren = subCategoryChildrenByName.get(subcategoryName); subcategoryNode.setChildren(subcategoryChildren.toArray(new TreeNode[subcategoryChildren.size()])); } - + parentNode.setChildren(childNodes.toArray(new TreeNode[childNodes.size()])); } } @@ -377,7 +378,7 @@ public class ResourceGroupTreeView extends LocatableVLayout implements Bookmarka ClusterKeyFlyweight keyFlyweight = child.getClusterKey(); ClusterKey key = new ClusterKey(parentKey, keyFlyweight.getResourceTypeId(), keyFlyweight.getResourceKey()); String id = key.getKey(); - node.setID(id); + node.setID(SeleniumUtility.getSafeId(id)); node.setAttribute("key", key); node.setAttribute("resourceType", type); node.setIsFolder(!child.getChildren().isEmpty()); diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/schedules/SchedulesDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/schedules/SchedulesDataSource.java index 158448b..79a9b2a 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/schedules/SchedulesDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/schedules/SchedulesDataSource.java @@ -18,6 +18,8 @@ */ package org.rhq.enterprise.gui.coregui.client.inventory.groups.detail.monitoring.schedules;
+import java.util.List; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.Criteria; import com.smartgwt.client.data.DSRequest; @@ -36,8 +38,6 @@ import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractMeasuremen import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractMeasurementScheduleListView; import org.rhq.enterprise.gui.coregui.client.util.message.Message;
-import java.util.List; - /** * A DataSource for reading and updating the metric schedules for the current group. * @@ -52,12 +52,14 @@ public class SchedulesDataSource extends AbstractMeasurementScheduleCompositeDat }
@Override - protected List<DataSourceField> createFields() { - List<DataSourceField> fields = super.createFields(); - DataSourceField resourceGroupIdField = new DataSourceIntegerField(MeasurementScheduleCriteria.FILTER_FIELD_RESOURCE_GROUP_ID, - "Resource Group Id"); + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + + DataSourceField resourceGroupIdField = new DataSourceIntegerField( + MeasurementScheduleCriteria.FILTER_FIELD_RESOURCE_GROUP_ID, "Resource Group Id"); resourceGroupIdField.setHidden(true); fields.add(resourceGroupIdField); + return fields; }
@@ -83,73 +85,76 @@ public class SchedulesDataSource extends AbstractMeasurementScheduleCompositeDat
@Override protected void enableSchedules(AbstractMeasurementScheduleListView measurementScheduleListView, - final int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames) { + final int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames) { final String s = (measurementDefinitionIds.length > 1) ? "s" : ""; this.measurementService.enableSchedulesForCompatibleGroup(this.resourceGroupId, measurementDefinitionIds, - new AsyncCallback<Void>() { - @Override - public void onFailure(Throwable throwable) { - CoreGUI.getErrorHandler().handleError("Failed to enable collection of metric" + s + " " - + measurementDefinitionDisplayNames + " for Resource group with id [" + resourceGroupId + "].", - throwable); - } - - @Override - public void onSuccess(Void aVoid) { - CoreGUI.getMessageCenter().notify(new Message("Enabled collection of selected metric" + s + ".", - "Enabled collection of metric" + s + " " - + measurementDefinitionDisplayNames + " for Resource group with id [" + resourceGroupId + - "].", Message.Severity.Info)); - - } - }); + new AsyncCallback<Void>() { + @Override + public void onFailure(Throwable throwable) { + CoreGUI.getErrorHandler().handleError( + "Failed to enable collection of metric" + s + " " + measurementDefinitionDisplayNames + + " for Resource group with id [" + resourceGroupId + "].", throwable); + } + + @Override + public void onSuccess(Void aVoid) { + CoreGUI.getMessageCenter().notify( + new Message("Enabled collection of selected metric" + s + ".", "Enabled collection of metric" + + s + " " + measurementDefinitionDisplayNames + " for Resource group with id [" + + resourceGroupId + "].", Message.Severity.Info)); + + } + }); }
@Override - protected void disableSchedules(AbstractMeasurementScheduleListView measurementScheduleListView, int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames) { + protected void disableSchedules(AbstractMeasurementScheduleListView measurementScheduleListView, + int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames) { final String s = (measurementDefinitionIds.length > 1) ? "s" : ""; this.measurementService.disableSchedulesForCompatibleGroup(this.resourceGroupId, measurementDefinitionIds, - new AsyncCallback<Void>() { - @Override - public void onFailure(Throwable throwable) { - CoreGUI.getErrorHandler().handleError("Failed to disable collection of metric" + s + " " - + measurementDefinitionDisplayNames + " for Resource group with id [" + resourceGroupId + "].", - throwable); - } - - @Override - public void onSuccess(Void aVoid) { - CoreGUI.getMessageCenter().notify(new Message("Disabled collection of selected metric" + s + ".", - "Disabled collection of metric" + s + " " - + measurementDefinitionDisplayNames + " for Resource group with id [" + resourceGroupId + - "].", Message.Severity.Info)); - - } - }); + new AsyncCallback<Void>() { + @Override + public void onFailure(Throwable throwable) { + CoreGUI.getErrorHandler().handleError( + "Failed to disable collection of metric" + s + " " + measurementDefinitionDisplayNames + + " for Resource group with id [" + resourceGroupId + "].", throwable); + } + + @Override + public void onSuccess(Void aVoid) { + CoreGUI.getMessageCenter().notify( + new Message("Disabled collection of selected metric" + s + ".", "Disabled collection of metric" + + s + " " + measurementDefinitionDisplayNames + " for Resource group with id [" + + resourceGroupId + "].", Message.Severity.Info)); + + } + }); }
@Override protected void updateSchedules(AbstractMeasurementScheduleListView measurementScheduleListView, - int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames, final long collectionInterval) { + int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames, + final long collectionInterval) { final String s = (measurementDefinitionIds.length > 1) ? "s" : ""; - this.measurementService.updateSchedulesForCompatibleGroup(this.resourceGroupId, measurementDefinitionIds, collectionInterval, - new AsyncCallback<Void>() { - @Override - public void onFailure(Throwable throwable) { - CoreGUI.getErrorHandler().handleError("Failed to set collection interval to " + (collectionInterval / 1000) - + " seconds for metric" + s + " " + measurementDefinitionDisplayNames + " for Resource group with id [" - + resourceGroupId + "].", - throwable); - } - - @Override - public void onSuccess(Void aVoid) { - CoreGUI.getMessageCenter().notify(new Message("Updated collection intervals of selected metric" + s + ".", - "Collection interval for metric" + s + " " - + measurementDefinitionDisplayNames + " for Resource group with id [" + resourceGroupId + - "] set to " + (collectionInterval / 1000) + " seconds.", Message.Severity.Info)); - - } - }); + this.measurementService.updateSchedulesForCompatibleGroup(this.resourceGroupId, measurementDefinitionIds, + collectionInterval, new AsyncCallback<Void>() { + @Override + public void onFailure(Throwable throwable) { + CoreGUI.getErrorHandler().handleError( + "Failed to set collection interval to " + (collectionInterval / 1000) + " seconds for metric" + + s + " " + measurementDefinitionDisplayNames + " for Resource group with id [" + + resourceGroupId + "].", throwable); + } + + @Override + public void onSuccess(Void aVoid) { + CoreGUI.getMessageCenter().notify( + new Message("Updated collection intervals of selected metric" + s + ".", + "Collection interval for metric" + s + " " + measurementDefinitionDisplayNames + + " for Resource group with id [" + resourceGroupId + "] set to " + + (collectionInterval / 1000) + " seconds.", Message.Severity.Info)); + + } + }); } } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDataSource.java index 4be1f22..3321237 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDataSource.java @@ -18,16 +18,17 @@ */ package org.rhq.enterprise.gui.coregui.client.inventory.groups.detail.monitoring.traits;
+import java.util.List; + import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.widgets.grid.ListGridRecord; + import org.rhq.core.domain.criteria.MeasurementDataTraitCriteria; import org.rhq.core.domain.measurement.MeasurementDataTrait; import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractMeasurementDataTraitDataSource;
-import java.util.List; - /** * A DataSource for reading traits for the current group. * @@ -41,16 +42,16 @@ public class TraitsDataSource extends AbstractMeasurementDataTraitDataSource { }
@Override - protected List<DataSourceField> createFields() { - List<DataSourceField> fields = super.createFields(); + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
- DataSourceIntegerField groupIdField = - new DataSourceIntegerField(MeasurementDataTraitCriteria.FILTER_FIELD_GROUP_ID, "Group Id"); + DataSourceIntegerField groupIdField = new DataSourceIntegerField( + MeasurementDataTraitCriteria.FILTER_FIELD_GROUP_ID, "Group Id"); groupIdField.setHidden(true); fields.add(0, groupIdField);
- DataSourceTextField resourceNameField = - new DataSourceTextField(MeasurementDataTraitCriteria.SORT_FIELD_RESOURCE_NAME, "Member Resource"); + DataSourceTextField resourceNameField = new DataSourceTextField( + MeasurementDataTraitCriteria.SORT_FIELD_RESOURCE_NAME, "Member Resource"); fields.add(0, resourceNameField);
return fields; @@ -62,8 +63,8 @@ public class TraitsDataSource extends AbstractMeasurementDataTraitDataSource {
record.setAttribute(MeasurementDataTraitCriteria.FILTER_FIELD_GROUP_ID, this.groupId);
- record.setAttribute(MeasurementDataTraitCriteria.SORT_FIELD_RESOURCE_NAME, - from.getSchedule().getResource().getName()); + record.setAttribute(MeasurementDataTraitCriteria.SORT_FIELD_RESOURCE_NAME, from.getSchedule().getResource() + .getName());
return record; } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceDatasource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceDatasource.java index 766df27..2b3a4c2 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceDatasource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceDatasource.java @@ -25,6 +25,8 @@ import static org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceD import static org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceDataSourceField.PLUGIN; import static org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceDataSourceField.TYPE;
+import java.util.List; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; @@ -54,31 +56,53 @@ public class ResourceDatasource extends RPCDataSource<Resource> {
public ResourceDatasource() { super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
- DataSourceField idDataField = new DataSourceIntegerField("id", "ID", 20); + DataSourceField idDataField = new DataSourceIntegerField("id", "ID", 50); idDataField.setPrimaryKey(true); + idDataField.setCanEdit(false); + fields.add(idDataField);
DataSourceImageField iconField = new DataSourceImageField("icon", ""); iconField.setImageURLPrefix("types/"); + fields.add(iconField);
DataSourceTextField nameDataField = new DataSourceTextField(NAME.propertyName(), NAME.title(), 200); nameDataField.setCanEdit(false); + fields.add(nameDataField);
DataSourceTextField descriptionDataField = new DataSourceTextField(DESCRIPTION.propertyName(), DESCRIPTION .title()); descriptionDataField.setCanEdit(false); + fields.add(descriptionDataField);
DataSourceTextField typeNameDataField = new DataSourceTextField(TYPE.propertyName(), TYPE.title()); + fields.add(typeNameDataField); + DataSourceTextField pluginNameDataField = new DataSourceTextField(PLUGIN.propertyName(), PLUGIN.title()); + fields.add(pluginNameDataField); + DataSourceTextField categoryDataField = new DataSourceTextField(CATEGORY.propertyName(), CATEGORY.title()); + fields.add(categoryDataField);
DataSourceImageField availabilityDataField = new DataSourceImageField(AVAILABILITY.propertyName(), AVAILABILITY .title(), 20); - availabilityDataField.setCanEdit(false); + fields.add(availabilityDataField); + + return fields; + } + + @Override + public void useDatasourceDefinedFields() { + // TODO Auto-generated method stub
- setFields(idDataField, iconField, nameDataField, descriptionDataField, typeNameDataField, pluginNameDataField, - categoryDataField, availabilityDataField); }
public void executeFetch(final DSRequest request, final DSResponse response) { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java index 15bf220..82595af 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java @@ -18,13 +18,6 @@ */ package org.rhq.enterprise.gui.coregui.client.inventory.resource;
-import static org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceDataSourceField.AVAILABILITY; -import static org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceDataSourceField.CATEGORY; -import static org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceDataSourceField.DESCRIPTION; -import static org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceDataSourceField.NAME; -import static org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceDataSourceField.PLUGIN; -import static org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceDataSourceField.TYPE; - import java.util.ArrayList; import java.util.List;
@@ -96,18 +89,18 @@ public class ResourceSearchView extends Table { // searchPanel.setFields(searchBox);
final ResourceDatasource datasource = new ResourceDatasource(); - // setTitleComponent(searchPanel); setDataSource(datasource); - }
@Override protected void configureTable() { - ListGridField idField = new ListGridField("id", "Id", 55); - idField.setType(ListGridFieldType.INTEGER); - //idField.setHidden(true); - ListGridField iconField = new ListGridField("icon", "", 40); - ListGridField nameField = new ListGridField(NAME.propertyName(), NAME.title(), 250); + + ListGridField iconField = new ListGridField("icon", "Icon", 40); + iconField.setType(ListGridFieldType.IMAGE); + iconField.setImageURLPrefix("types/"); + + ListGridField nameField = new ListGridField(ResourceDataSourceField.NAME.propertyName(), + ResourceDataSourceField.NAME.title(), 250); nameField.setCellFormatter(new CellFormatter() { public String format(Object o, ListGridRecord listGridRecord, int i, int i1) { return "<a href="" + LinkManager.getResourceLink(listGridRecord.getAttributeAsInt("id")) + "">" + o @@ -115,15 +108,25 @@ public class ResourceSearchView extends Table { } });
- ListGridField descriptionField = new ListGridField(DESCRIPTION.propertyName(), DESCRIPTION.title()); - ListGridField typeNameField = new ListGridField(TYPE.propertyName(), TYPE.title(), 130); - ListGridField pluginNameField = new ListGridField(PLUGIN.propertyName(), PLUGIN.title(), 100); - ListGridField categoryField = new ListGridField(CATEGORY.propertyName(), CATEGORY.title(), 60); + ListGridField descriptionField = new ListGridField(ResourceDataSourceField.DESCRIPTION.propertyName(), + ResourceDataSourceField.DESCRIPTION.title());
- ListGridField availabilityField = new ListGridField(AVAILABILITY.propertyName(), AVAILABILITY.title(), 55); + ListGridField typeNameField = new ListGridField(ResourceDataSourceField.TYPE.propertyName(), + ResourceDataSourceField.TYPE.title(), 130); + + ListGridField pluginNameField = new ListGridField(ResourceDataSourceField.PLUGIN.propertyName(), + ResourceDataSourceField.PLUGIN.title(), 100); + + ListGridField categoryField = new ListGridField(ResourceDataSourceField.CATEGORY.propertyName(), + ResourceDataSourceField.CATEGORY.title(), 60); + + ListGridField availabilityField = new ListGridField(ResourceDataSourceField.AVAILABILITY.propertyName(), + ResourceDataSourceField.AVAILABILITY.title(), 55); + availabilityField.setType(ListGridFieldType.IMAGE); availabilityField.setAlign(Alignment.CENTER); - getListGrid().setFields(idField, iconField, nameField, descriptionField, typeNameField, pluginNameField, - categoryField, availabilityField); + + setListGridFields(iconField, nameField, descriptionField, typeNameField, pluginNameField, categoryField, + availabilityField);
addTableAction(extendLocatorId("Uninventory"), "Uninventory", Table.SelectionEnablement.ANY, "Are you sure you want to uninventory # resources?", new TableAction() { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryDataSource.java index f8387c9..e777bc9 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryDataSource.java @@ -19,10 +19,12 @@ package org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.configuration;
import java.util.Date; +import java.util.List;
import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.types.FieldType; @@ -45,25 +47,32 @@ public class ConfigurationHistoryDataSource extends RPCDataSource<ResourceConfig
public ConfigurationHistoryDataSource() { super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceIntegerField idField = new DataSourceIntegerField("id"); idField.setPrimaryKey(true); - addField(idField); + fields.add(idField);
DataSourceTextField resourceField = new DataSourceTextField("resource", "Resource"); - addField(resourceField); + fields.add(resourceField);
DataSourceTextField submittedField = new DataSourceTextField("createdTime", "Created"); submittedField.setType(FieldType.DATETIME); - addField(submittedField); + fields.add(submittedField);
DataSourceTextField statusField = new DataSourceTextField("status", "Status"); - addField(statusField); + fields.add(statusField);
DataSourceTextField subjectField = new DataSourceTextField("subject", "Subject"); - addField(subjectField); - + fields.add(subjectField);
+ return fields; }
@Override @@ -75,31 +84,30 @@ public class ConfigurationHistoryDataSource extends RPCDataSource<ResourceConfig
criteria.setPageControl(getPageControl(request));
- Integer resourceId = (Integer)request.getCriteria().getValues().get("resourceId"); + Integer resourceId = (Integer) request.getCriteria().getValues().get("resourceId"); if (resourceId != null) { criteria.addFilterResourceIds(resourceId); }
configurationService.findResourceConfigurationUpdatesByCriteria(criteria, - new AsyncCallback<PageList<ResourceConfigurationUpdate>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Unable to load configuration history", caught); - response.setStatus(DSResponse.STATUS_FAILURE); - processResponse(request.getRequestId(), response); - } - - public void onSuccess(PageList<ResourceConfigurationUpdate> result) { - response.setData(buildRecords(result)); - response.setTotalRows(result.getTotalSize()); - processResponse(request.getRequestId(), response); - } - }); + new AsyncCallback<PageList<ResourceConfigurationUpdate>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError("Unable to load configuration history", caught); + response.setStatus(DSResponse.STATUS_FAILURE); + processResponse(request.getRequestId(), response); + } + + public void onSuccess(PageList<ResourceConfigurationUpdate> result) { + response.setData(buildRecords(result)); + response.setTotalRows(result.getTotalSize()); + processResponse(request.getRequestId(), response); + } + }); }
- @Override public ResourceConfigurationUpdate copyValues(ListGridRecord from) { - return null; // TODO: Implement this method. + return null; // TODO: Implement this method. }
@Override diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceScheduledMetricDatasource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceScheduledMetricDatasource.java index f412d7b..0361f65 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceScheduledMetricDatasource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/ResourceScheduledMetricDatasource.java @@ -22,12 +22,12 @@ */ package org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring;
-import java.util.Collection; +import java.util.List;
import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; -import com.smartgwt.client.data.Record; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.widgets.grid.ListGridRecord; @@ -40,7 +40,6 @@ import org.rhq.core.domain.measurement.MeasurementSchedule; 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.resource.type.ResourceTypeRepository; import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource;
/** @@ -48,54 +47,58 @@ import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource; */ public class ResourceScheduledMetricDatasource extends RPCDataSource<MeasurementDefinition> {
- public ResourceScheduledMetricDatasource() { + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceIntegerField id = new DataSourceIntegerField("id"); id.setPrimaryKey(true); - addField(id); + fields.add(id);
DataSourceTextField name = new DataSourceTextField("name"); - addField(name); + fields.add(name);
DataSourceTextField displayName = new DataSourceTextField("displayName"); - addField(displayName); + fields.add(displayName);
DataSourceTextField description = new DataSourceTextField("description"); - addField(description); + fields.add(description);
DataSourceTextField units = new DataSourceTextField("units"); - addField(units); + fields.add(units);
DataSourceTextField numericType = new DataSourceTextField("numericType"); - addField(numericType); + fields.add(numericType);
DataSourceTextField category = new DataSourceTextField("category"); - addField(category); + fields.add(category); + + return fields; }
@Override protected void executeFetch(final DSRequest request, final DSResponse response) {
- - - if (request.getCriteria().getValues().containsKey("id")) { MeasurementDefinitionCriteria criteria = new MeasurementDefinitionCriteria();
criteria.addFilterId(request.getCriteria().getAttributeAsInt("id")); GWTServiceLookup.getMeasurementDataService().findMeasurementDefinitionsByCriteria(criteria, - new AsyncCallback<PageList<MeasurementDefinition>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to load metric definitions",caught); - } - - public void onSuccess(PageList<MeasurementDefinition> result) { - response.setData(buildRecords(result)); - processResponse(request.getRequestId(), response); - } - }); + new AsyncCallback<PageList<MeasurementDefinition>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError("Failed to load metric definitions", caught); + }
+ public void onSuccess(PageList<MeasurementDefinition> result) { + response.setData(buildRecords(result)); + processResponse(request.getRequestId(), response); + } + });
} else if (request.getCriteria().getValues().containsKey("resourceId")) { MeasurementScheduleCriteria criteria = new MeasurementScheduleCriteria(); @@ -103,17 +106,17 @@ public class ResourceScheduledMetricDatasource extends RPCDataSource<Measurement
criteria.addFilterResourceId(request.getCriteria().getAttributeAsInt("resourceId"));
- - GWTServiceLookup.getMeasurementDataService().findMeasurementSchedulesByCriteria(criteria, new AsyncCallback<PageList<MeasurementSchedule>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to load metric schedules", caught); - } - - public void onSuccess(PageList<MeasurementSchedule> result) { - response.setData(buildRecords(result)); - processResponse(request.getRequestId(), response); - } - }); + GWTServiceLookup.getMeasurementDataService().findMeasurementSchedulesByCriteria(criteria, + new AsyncCallback<PageList<MeasurementSchedule>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError("Failed to load metric schedules", caught); + } + + public void onSuccess(PageList<MeasurementSchedule> result) { + response.setData(buildRecords(result)); + processResponse(request.getRequestId(), response); + } + }); } else { processResponse(request.getRequestId(), response); } @@ -131,10 +134,9 @@ public class ResourceScheduledMetricDatasource extends RPCDataSource<Measurement return buildRecords(definitions); }
- @Override public MeasurementDefinition copyValues(ListGridRecord from) { - return null; // TODO: Implement this method. + return null; // TODO: Implement this method. }
@Override diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/calltime/CallTimeDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/calltime/CallTimeDataSource.java index 5efbcca..843e2af 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/calltime/CallTimeDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/calltime/CallTimeDataSource.java @@ -18,9 +18,12 @@ */ package org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.calltime;
+import java.util.List; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.widgets.HTMLFlow; @@ -41,20 +44,28 @@ public class CallTimeDataSource extends RPCDataSource<CallTimeDataComposite> { private double maxMaximum;
public CallTimeDataSource() { + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceTextField callDestination = new DataSourceTextField("callDestination", "Call Destination"); - addField(callDestination); + fields.add(callDestination); DataSourceIntegerField count = new DataSourceIntegerField("count"); - addField(count); + fields.add(count); DataSourceIntegerField minimum = new DataSourceIntegerField("minimum"); - addField(minimum); + fields.add(minimum); DataSourceIntegerField average = new DataSourceIntegerField("average"); - addField(average); + fields.add(average); DataSourceIntegerField maximum = new DataSourceIntegerField("maximum"); - addField(maximum); + fields.add(maximum); DataSourceIntegerField total = new DataSourceIntegerField("total"); - addField(total); + fields.add(total);
+ return fields; }
@Override @@ -66,21 +77,20 @@ public class CallTimeDataSource extends RPCDataSource<CallTimeDataComposite> {
PageControl pc = getPageControl(request);
- GWTServiceLookup.getMeasurementDataService().findCallTimeDataForResource( - scheduleId, eightHoursAgo, now, pc, new AsyncCallback<PageList<CallTimeDataComposite>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Could not load call time data", caught); - } + GWTServiceLookup.getMeasurementDataService().findCallTimeDataForResource(scheduleId, eightHoursAgo, now, pc, + new AsyncCallback<PageList<CallTimeDataComposite>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError("Could not load call time data", caught); + }
- public void onSuccess(PageList<CallTimeDataComposite> result) { - ListGridRecord[] data = buildRecords(result); - setGraphs(data); - response.setData(data); + public void onSuccess(PageList<CallTimeDataComposite> result) { + ListGridRecord[] data = buildRecords(result); + setGraphs(data); + response.setData(data);
- processResponse(request.getRequestId(), response); - } + processResponse(request.getRequestId(), response); } - ); + }); }
@Override @@ -100,13 +110,10 @@ public class CallTimeDataSource extends RPCDataSource<CallTimeDataComposite> { int avgWidth = (int) ((record.getAttributeAsInt("average") / maxMaximum) * 100d); int maxWidth = (int) ((record.getAttributeAsInt("maximum") / maxMaximum) * 100d);
- - - record.setBackgroundComponent( - new HTMLFlow( - "<div style="width: " + minWidth + "%; height: 33%; background-color: #A5B391;"> </div>" + - "<div style="width: " + avgWidth + "%; height: 33%; background-color: #A5B391;"> </div>" + - "<div style="width: " + maxWidth + "%; height: 33%; background-color: #A5B391;"> </div>")); + record.setBackgroundComponent(new HTMLFlow("<div style="width: " + minWidth + + "%; height: 33%; background-color: #A5B391;"> </div>" + "<div style="width: " + avgWidth + + "%; height: 33%; background-color: #A5B391;"> </div>" + "<div style="width: " + maxWidth + + "%; height: 33%; background-color: #A5B391;"> </div>"));
}
@@ -124,7 +131,6 @@ public class CallTimeDataSource extends RPCDataSource<CallTimeDataComposite> { record.setAttribute("maximum", from.getMaximum()); record.setAttribute("total", from.getTotal());
- return record; } } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/schedules/SchedulesDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/schedules/SchedulesDataSource.java index 21fe764..ac7c8dd 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/schedules/SchedulesDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/schedules/SchedulesDataSource.java @@ -18,6 +18,8 @@ */ package org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.schedules;
+import java.util.List; + import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.Criteria; import com.smartgwt.client.data.DSRequest; @@ -35,8 +37,6 @@ import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractMeasuremen import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractMeasurementScheduleListView; import org.rhq.enterprise.gui.coregui.client.util.message.Message;
-import java.util.List; - /** * A DataSource for reading and updating the metric schedules for the current Resource. * @@ -51,12 +51,14 @@ public class SchedulesDataSource extends AbstractMeasurementScheduleCompositeDat }
@Override - protected List<DataSourceField> createFields() { - List<DataSourceField> fields = super.createFields(); - DataSourceField resourceIdField = new DataSourceIntegerField(MeasurementScheduleCriteria.FILTER_FIELD_RESOURCE_ID, - "Resource Id"); + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + + DataSourceField resourceIdField = new DataSourceIntegerField( + MeasurementScheduleCriteria.FILTER_FIELD_RESOURCE_ID, "Resource Id"); resourceIdField.setHidden(true); fields.add(resourceIdField); + return fields; }
@@ -76,67 +78,70 @@ public class SchedulesDataSource extends AbstractMeasurementScheduleCompositeDat
@Override protected void enableSchedules(AbstractMeasurementScheduleListView measurementScheduleListView, - int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames) { - this.measurementService.enableSchedulesForResource(this.resourceId, measurementDefinitionIds, - new AsyncCallback<Void>() { - @Override - public void onFailure(Throwable throwable) { - CoreGUI.getErrorHandler().handleError("Failed to enable collection of metrics " - + measurementDefinitionDisplayNames + " for Resource with id [" + resourceId + "].", - throwable); - } - - @Override - public void onSuccess(Void aVoid) { - CoreGUI.getMessageCenter().notify(new Message("Enabled collection of metrics " - + measurementDefinitionDisplayNames + " for Resource with id [" + resourceId + - "].", Message.Severity.Info)); - - } - }); + int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames) { + this.measurementService.enableSchedulesForResource(this.resourceId, measurementDefinitionIds, + new AsyncCallback<Void>() { + @Override + public void onFailure(Throwable throwable) { + CoreGUI.getErrorHandler().handleError( + "Failed to enable collection of metrics " + measurementDefinitionDisplayNames + + " for Resource with id [" + resourceId + "].", throwable); + } + + @Override + public void onSuccess(Void aVoid) { + CoreGUI.getMessageCenter().notify( + new Message("Enabled collection of metrics " + measurementDefinitionDisplayNames + + " for Resource with id [" + resourceId + "].", Message.Severity.Info)); + + } + }); }
@Override - protected void disableSchedules(AbstractMeasurementScheduleListView measurementScheduleListView, int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames) { - this.measurementService.disableSchedulesForResource(this.resourceId, measurementDefinitionIds, - new AsyncCallback<Void>() { - @Override - public void onFailure(Throwable throwable) { - CoreGUI.getErrorHandler().handleError("Failed to disable collection of metrics " - + measurementDefinitionDisplayNames + " for Resource with id [" + resourceId + "].", - throwable); - } - - @Override - public void onSuccess(Void aVoid) { - CoreGUI.getMessageCenter().notify(new Message("Disabled collection of metrics " - + measurementDefinitionDisplayNames + " for Resource with id [" + resourceId + - "].", Message.Severity.Info)); - - } - }); + protected void disableSchedules(AbstractMeasurementScheduleListView measurementScheduleListView, + int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames) { + this.measurementService.disableSchedulesForResource(this.resourceId, measurementDefinitionIds, + new AsyncCallback<Void>() { + @Override + public void onFailure(Throwable throwable) { + CoreGUI.getErrorHandler().handleError( + "Failed to disable collection of metrics " + measurementDefinitionDisplayNames + + " for Resource with id [" + resourceId + "].", throwable); + } + + @Override + public void onSuccess(Void aVoid) { + CoreGUI.getMessageCenter().notify( + new Message("Disabled collection of metrics " + measurementDefinitionDisplayNames + + " for Resource with id [" + resourceId + "].", Message.Severity.Info)); + + } + }); }
@Override protected void updateSchedules(AbstractMeasurementScheduleListView measurementScheduleListView, - int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames, final long collectionInterval) { - this.measurementService.updateSchedulesForResource(this.resourceId, measurementDefinitionIds, collectionInterval, - new AsyncCallback<Void>() { - @Override - public void onFailure(Throwable throwable) { - CoreGUI.getErrorHandler().handleError("Failed to set collection interval to " + (collectionInterval / 1000) - + " seconds for metrics " + measurementDefinitionDisplayNames + " for Resource with id [" - + resourceId + "].", + int[] measurementDefinitionIds, final List<String> measurementDefinitionDisplayNames, + final long collectionInterval) { + this.measurementService.updateSchedulesForResource(this.resourceId, measurementDefinitionIds, + collectionInterval, new AsyncCallback<Void>() { + @Override + public void onFailure(Throwable throwable) { + CoreGUI.getErrorHandler().handleError( + "Failed to set collection interval to " + (collectionInterval / 1000) + " seconds for metrics " + + measurementDefinitionDisplayNames + " for Resource with id [" + resourceId + "].", throwable); - } + }
- @Override - public void onSuccess(Void aVoid) { - CoreGUI.getMessageCenter().notify(new Message("Collection interval for metrics " - + measurementDefinitionDisplayNames + " for Resource with id [" + resourceId + - "] set to " + (collectionInterval / 1000) + " seconds.", Message.Severity.Info)); + @Override + public void onSuccess(Void aVoid) { + CoreGUI.getMessageCenter().notify( + new Message("Collection interval for metrics " + measurementDefinitionDisplayNames + + " for Resource with id [" + resourceId + "] set to " + (collectionInterval / 1000) + + " seconds.", Message.Severity.Info));
- } - }); + } + }); } } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsDataSource.java index c569260..67a330a 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsDataSource.java @@ -18,28 +18,29 @@ */ package org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.monitoring.traits;
-import com.smartgwt.client.data.DSRequest; +import java.util.List; + import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.widgets.grid.ListGridRecord; + import org.rhq.core.domain.criteria.MeasurementDataTraitCriteria; import org.rhq.core.domain.measurement.MeasurementDataTrait; import org.rhq.enterprise.gui.coregui.client.inventory.common.AbstractMeasurementDataTraitDataSource;
-import java.util.List; - /** * A DataSource for reading traits for the current Resource. * * @author Ian Springer */ public class TraitsDataSource extends AbstractMeasurementDataTraitDataSource { + @Override - protected List<DataSourceField> createFields() { - List<DataSourceField> fields = super.createFields(); + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
- DataSourceIntegerField resourceIdField = - new DataSourceIntegerField(MeasurementDataTraitCriteria.FILTER_FIELD_RESOURCE_ID, "Resource Id"); + DataSourceIntegerField resourceIdField = new DataSourceIntegerField( + MeasurementDataTraitCriteria.FILTER_FIELD_RESOURCE_ID, "Resource Id"); resourceIdField.setHidden(true); fields.add(0, resourceIdField);
@@ -50,7 +51,8 @@ public class TraitsDataSource extends AbstractMeasurementDataTraitDataSource { public ListGridRecord copyValues(MeasurementDataTrait from) { ListGridRecord record = super.copyValues(from);
- record.setAttribute(MeasurementDataTraitCriteria.FILTER_FIELD_RESOURCE_ID, from.getSchedule().getResource().getId()); + record.setAttribute(MeasurementDataTraitCriteria.FILTER_FIELD_RESOURCE_ID, from.getSchedule().getResource() + .getId());
return record; } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/operation/OperationHistoryDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/operation/OperationHistoryDataSource.java index c353fdb..9af5c3b 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/operation/OperationHistoryDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/operation/OperationHistoryDataSource.java @@ -19,10 +19,12 @@ package org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.operation;
import java.util.Date; +import java.util.List;
import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceIntegerField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.types.FieldType; @@ -43,51 +45,57 @@ public class OperationHistoryDataSource extends RPCDataSource<ResourceOperationH
private OperationGWTServiceAsync operationService = GWTServiceLookup.getOperationService();
- public OperationHistoryDataSource() { - super(); + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
DataSourceIntegerField idField = new DataSourceIntegerField("id"); idField.setPrimaryKey(true); - addField(idField); + fields.add(idField);
DataSourceTextField nameField = new DataSourceTextField("operationName"); - addField(nameField); + fields.add(nameField);
DataSourceTextField resourceField = new DataSourceTextField("resource"); - addField(resourceField); + fields.add(resourceField);
DataSourceTextField statusField = new DataSourceTextField("status"); - addField(statusField); + fields.add(statusField);
DataSourceTextField startedField = new DataSourceTextField("startedTime"); startedField.setType(FieldType.DATETIME); - addField(startedField); + fields.add(startedField); + + return fields; }
@Override protected void executeFetch(final DSRequest request, final DSResponse response) { ResourceOperationHistoryCriteria criteria = new ResourceOperationHistoryCriteria();
- if (request.getCriteria().getValues().containsKey("resourceId")) { - criteria.addFilterResourceIds(Integer.parseInt((String) request.getCriteria().getValues().get("resourceId"))); + criteria.addFilterResourceIds(Integer + .parseInt((String) request.getCriteria().getValues().get("resourceId"))); }
criteria.setPageControl(getPageControl(request));
- operationService.findResourceOperationHistoriesByCriteria( - criteria, new AsyncCallback<PageList<ResourceOperationHistory>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failure loading operation histories", caught); - } + operationService.findResourceOperationHistoriesByCriteria(criteria, + new AsyncCallback<PageList<ResourceOperationHistory>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError("Failure loading operation histories", caught); + }
- public void onSuccess(PageList<ResourceOperationHistory> result) { - response.setData(buildRecords(result)); - processResponse(request.getRequestId(), response); - } + public void onSuccess(PageList<ResourceOperationHistory> result) { + response.setData(buildRecords(result)); + processResponse(request.getRequestId(), response); } - ); + }); }
@Override @@ -110,7 +118,7 @@ public class OperationHistoryDataSource extends RPCDataSource<ResourceOperationH record.setAttribute("status", from.getStatus().name()); record.setAttribute("parameters", from.getParameters());
- record.setAttribute("entity",from); + record.setAttribute("entity", from); return record; } } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/summary/ResourceErrorsDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/summary/ResourceErrorsDataSource.java index 1843f2b..39e99af 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/summary/ResourceErrorsDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/summary/ResourceErrorsDataSource.java @@ -22,22 +22,22 @@ package org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.summary; import java.util.Date; import java.util.List;
-import org.rhq.core.domain.resource.ResourceError; -import org.rhq.enterprise.gui.coregui.client.CoreGUI; -import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup; -import org.rhq.enterprise.gui.coregui.client.gwt.ResourceGWTServiceAsync; -import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource; - import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; -import com.smartgwt.client.data.fields.DataSourceDateField; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceDateTimeField; import com.smartgwt.client.data.fields.DataSourceEnumField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.rpc.RPCResponse; import com.smartgwt.client.widgets.grid.ListGridRecord;
+import org.rhq.core.domain.resource.ResourceError; +import org.rhq.enterprise.gui.coregui.client.CoreGUI; +import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup; +import org.rhq.enterprise.gui.coregui.client.gwt.ResourceGWTServiceAsync; +import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource; + /** * * @author Lukas Krejci @@ -55,10 +55,20 @@ public class ResourceErrorsDataSource extends RPCDataSource<ResourceError> { public ResourceErrorsDataSource(int resourceId) { resourceService = GWTServiceLookup.getResourceService(); this.resourceId = resourceId; + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + + fields.add(new DataSourceTextField(SUMMARY_ID, "Summary")); + fields.add(new DataSourceTextField(DETAIL_ID, "Detailed Message")); + fields.add(new DataSourceEnumField(ERROR_TYPE_ID, "Error Type")); + fields.add(new DataSourceDateTimeField(TIME_OCCURED_ID, "Time"));
- addFields(new DataSourceTextField(SUMMARY_ID, "Summary"), - new DataSourceTextField(DETAIL_ID, "Detailed Message"), - new DataSourceEnumField(ERROR_TYPE_ID, "Error Type"), new DataSourceDateTimeField(TIME_OCCURED_ID, "Time")); + return fields; }
/* (non-Javadoc) diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java index 5e6d943..9546d66 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java @@ -194,7 +194,8 @@ public class SearchBarPane extends LocatableHLayout {
comboBox.setShowIfCondition(new FormItemIfFunction() { public boolean execute(FormItem formItem, Object o, DynamicForm dynamicForm) { - return dynamicForm.getValueAsString("searchType").equals(searchType.getDisplayName()); + String value = dynamicForm.getValueAsString("searchType"); + return (null != value && value.equals(searchType.getDisplayName())); } });
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/RecentOperationsDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/RecentOperationsDataSource.java index 863afe2..24ada45 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/RecentOperationsDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/RecentOperationsDataSource.java @@ -24,6 +24,7 @@ import java.util.List; import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.Record; import com.smartgwt.client.data.fields.DataSourceDateTimeField; import com.smartgwt.client.data.fields.DataSourceTextField; @@ -69,18 +70,31 @@ public class RecentOperationsDataSource extends setDataProtocol(DSProtocol.CLIENTCUSTOM); setDataFormat(DSDataFormat.CUSTOM);
+ List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + DataSourceTextField resourceField = new DataSourceTextField(resource, "Resource"); resourceField.setPrimaryKey(true); + fields.add(resourceField);
DataSourceTextField locationField = new DataSourceTextField(location, "Location", 200); + fields.add(locationField);
DataSourceTextField operationField = new DataSourceTextField(operation, "Operation"); + fields.add(operationField);
DataSourceDateTimeField timeField = new DataSourceDateTimeField(time, "Date/Time"); + fields.add(timeField);
DataSourceTextField statusField = new DataSourceTextField(status, "Status"); + fields.add(statusField);
- setFields(resourceField, locationField, operationField, timeField, statusField); + return fields; }
/* Intercept DSRequest object to pipe into custom fetch request. diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/ScheduledOperationsDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/ScheduledOperationsDataSource.java index ebb1185..ab28a8e 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/ScheduledOperationsDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/operation/ScheduledOperationsDataSource.java @@ -24,7 +24,9 @@ import java.util.List; import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.Record; +import com.smartgwt.client.data.fields.DataSourceDateTimeField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.types.DSDataFormat; import com.smartgwt.client.types.DSProtocol; @@ -63,16 +65,28 @@ public class ScheduledOperationsDataSource extends setDataProtocol(DSProtocol.CLIENTCUSTOM); setDataFormat(DSDataFormat.CUSTOM);
+ List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + DataSourceTextField resourceField = new DataSourceTextField(resource, "Resource"); resourceField.setPrimaryKey(true); + fields.add(resourceField);
- DataSourceTextField locationField = new DataSourceTextField(location, "Location"); + DataSourceTextField locationField = new DataSourceTextField(location, "Location", 200); + fields.add(locationField);
DataSourceTextField operationField = new DataSourceTextField(operation, "Operation"); + fields.add(operationField);
- DataSourceTextField timeField = new DataSourceTextField(time, "Date/Time"); + DataSourceDateTimeField timeField = new DataSourceDateTimeField(time, "Date/Time"); + fields.add(timeField);
- setFields(resourceField, locationField, operationField, timeField); + return fields; }
/* Intercept DSRequest object to pipe into custom fetch request. diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBDataSource.java index 6a31020..d513e70 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBDataSource.java @@ -23,10 +23,12 @@ package org.rhq.enterprise.gui.coregui.client.report.measurement;
import java.util.Collection; +import java.util.List;
import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.widgets.HTMLFlow; import com.smartgwt.client.widgets.grid.ListGridRecord; @@ -47,48 +49,53 @@ public class MeasurementOOBDataSource extends RPCDataSource<MeasurementOOBCompos private int maximumFactor = 0;
public MeasurementOOBDataSource() { + List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + }
+ @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields();
- DataSourceTextField metricField = new DataSourceTextField("scheduleName","Metric"); - addField(metricField); + DataSourceTextField metricField = new DataSourceTextField("scheduleName", "Metric"); + fields.add(metricField);
DataSourceTextField resourceField = new DataSourceTextField("resourceName", "Resource"); - addField(resourceField); + fields.add(resourceField);
DataSourceTextField parentField = new DataSourceTextField("parentName", "Parent"); - addField(parentField); + fields.add(parentField);
DataSourceTextField bandField = new DataSourceTextField("formattedBaseband", "Band"); - addField(bandField); + fields.add(bandField);
DataSourceTextField outlierField = new DataSourceTextField("formattedOutlier", "Outlier"); - addField(outlierField); + fields.add(outlierField);
DataSourceTextField factorField = new DataSourceTextField("factor", "Out of range factor (%)"); - addField(factorField); + fields.add(factorField);
- } + return fields;
+ }
@Override protected void executeFetch(final DSRequest request, final DSResponse response) {
PageControl pc = getPageControl(request);
- GWTServiceLookup.getMeasurementDataService().getSchedulesWithOOBs( - null, null, null, pc, - new AsyncCallback<PageList<MeasurementOOBComposite>>() { - public void onFailure(Throwable caught) { - CoreGUI.getErrorHandler().handleError("Failed to load measurement OOB information",caught); - } - - public void onSuccess(PageList<MeasurementOOBComposite> result) { - response.setData(buildRecords(result)); - response.setTotalRows(result.getTotalSize()); - processResponse(request.getRequestId(), response); - } + GWTServiceLookup.getMeasurementDataService().getSchedulesWithOOBs(null, null, null, pc, + new AsyncCallback<PageList<MeasurementOOBComposite>>() { + public void onFailure(Throwable caught) { + CoreGUI.getErrorHandler().handleError("Failed to load measurement OOB information", caught); } - ); + + public void onSuccess(PageList<MeasurementOOBComposite> result) { + response.setData(buildRecords(result)); + response.setTotalRows(result.getTotalSize()); + processResponse(request.getRequestId(), response); + } + });
}
@@ -97,7 +104,6 @@ public class MeasurementOOBDataSource extends RPCDataSource<MeasurementOOBCompos throw new UnsupportedOperationException("OOBs Read only"); }
- @Override public ListGridRecord[] buildRecords(Collection<MeasurementOOBComposite> list) { for (MeasurementOOBComposite oob : list) { @@ -128,20 +134,18 @@ public class MeasurementOOBDataSource extends RPCDataSource<MeasurementOOBCompos record.setAttribute("parentId", from.getParentId()); record.setAttribute("parentName", from.getParentName());
- int factorRankingWidth = (int) (((double)from.getFactor())/ (double)maximumFactor * 100d); + int factorRankingWidth = (int) (((double) from.getFactor()) / (double) maximumFactor * 100d);
- record.setBackgroundComponent( - new HTMLFlow( - "<div style="width: " + factorRankingWidth + "%; height: 100%; background-color: #A5B391;"> </div>")); + record.setBackgroundComponent(new HTMLFlow("<div style="width: " + factorRankingWidth + + "%; height: 100%; background-color: #A5B391;"> </div>"));
return record;
}
- private void applyFormatting(MeasurementOOBComposite oob) { - oob.setFormattedOutlier(MeasurementConverterClient.format(oob.getOutlier(), oob.getUnits(), true)); - formatBaseband(oob); + oob.setFormattedOutlier(MeasurementConverterClient.format(oob.getOutlier(), oob.getUnits(), true)); + formatBaseband(oob); }
private void formatBaseband(MeasurementOOBComposite oob) { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/resource/ProblemResourcesDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/resource/ProblemResourcesDataSource.java index 38c316b..e7c8050 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/resource/ProblemResourcesDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/resource/ProblemResourcesDataSource.java @@ -24,6 +24,7 @@ import java.util.List; import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.DSRequest; import com.smartgwt.client.data.DSResponse; +import com.smartgwt.client.data.DataSourceField; import com.smartgwt.client.data.Record; import com.smartgwt.client.data.fields.DataSourceImageField; import com.smartgwt.client.data.fields.DataSourceTextField; @@ -66,16 +67,28 @@ public class ProblemResourcesDataSource extends RPCDataSource<DisambiguationRepo setDataProtocol(DSProtocol.CLIENTCUSTOM); setDataFormat(DSDataFormat.CUSTOM);
+ List<DataSourceField> fields = addDataSourceFields(); + addFields(fields); + } + + @Override + protected List<DataSourceField> addDataSourceFields() { + List<DataSourceField> fields = super.addDataSourceFields(); + DataSourceTextField resourceField = new DataSourceTextField(resource, "Resource"); resourceField.setPrimaryKey(true); + fields.add(resourceField);
DataSourceTextField locationField = new DataSourceTextField(location, "Location"); + fields.add(locationField);
DataSourceTextField alertsField = new DataSourceTextField(alerts, "Alerts"); + fields.add(alertsField);
- DataSourceImageField availablilityField = new DataSourceImageField(available, "Current Availability"); + DataSourceImageField availabilityField = new DataSourceImageField(available, "Current Availability"); + fields.add(availabilityField);
- setFields(resourceField, locationField, alertsField, availablilityField); + return fields; }
/* Intercept DSRequest object to pipe into custom fetch request. diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java index 86ab57e..38a9386 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java @@ -18,8 +18,8 @@ */ package org.rhq.enterprise.gui.coregui.client.util;
-import java.util.Arrays; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.List; import java.util.Map; @@ -40,6 +40,7 @@ import org.rhq.core.domain.util.PageControl; import org.rhq.core.domain.util.PageOrdering; import org.rhq.enterprise.gui.coregui.client.CoreGUI; import org.rhq.enterprise.gui.coregui.client.util.effects.ColoringUtility; +import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
/** * Base GWT-RPC oriented DataSource class. @@ -58,7 +59,7 @@ public abstract class RPCDataSource<T> extends DataSource { public RPCDataSource(String name) { if (name != null) { com.allen_sauer.gwt.log.client.Log.info("Trying to build DS: " + name); - setID(name); + setID(SeleniumUtility.getSafeId(name)); } // TODO until http://code.google.com/p/smartgwt/issues/detail?id=490 is fixed always go to the server for data setClientOnly(false); @@ -68,6 +69,22 @@ public abstract class RPCDataSource<T> extends DataSource { setDataFormat(DSDataFormat.CUSTOM); }
+ /** + * Override in each subclass to set the default ds fields for the ds. The datasource should not + * define and set ds fields in the constructor in case a user of the ds wants to set their own. For example, + * those that want to use list grid fields (like our list views). + */ + public void useDatasourceDefinedFields() { + } + + /** + * A pattern that can be used for Datasource subclassing. Each subclass can add it's own fields prior to + * all of the fields being added to the datasource. + */ + protected List<DataSourceField> addDataSourceFields() { + return new ArrayList<DataSourceField>(); + } + @Override protected Object transformRequest(DSRequest request) { try { @@ -229,7 +246,7 @@ public abstract class RPCDataSource<T> extends DataSource { addField(field); } } - + public void addFields(DataSourceField... fields) { addFields(Arrays.asList(fields)); }
rhq-commits@lists.fedorahosted.org