modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RoleEditView.java
| 3 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesDataSource.java
| 21 ++++++++
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesView.java
| 5 --
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java
| 4 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersDataSource.java
| 3 +
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersView.java
| 24 +---------
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/AbstractRecordEditor.java
| 23 +++++++--
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/EnhancedDynamicForm.java
| 1
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
| 1
9 files changed, 49 insertions(+), 36 deletions(-)
New commits:
commit db64b2c53b8669ee58ffc4c50c18eb47999cedd7
Author: Ian Springer <ian.springer(a)redhat.com>
Date: Thu Nov 18 13:53:21 2010 -0500
various users/roles views tweaks and fixes
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RoleEditView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RoleEditView.java
index 4173bcf..fd14c4c 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RoleEditView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RoleEditView.java
@@ -57,7 +57,6 @@ import
org.rhq.enterprise.gui.coregui.client.inventory.resource.selection.Resour
*/
public class RoleEditView extends AbstractRecordEditor<RolesDataSource> implements
BookmarkableView {
- private static final String DATA_TYPE_NAME = "role";
private static final String HEADER_ICON = "global/Role_16.png";
private PermissionEditorView permissionEditorItem;
@@ -75,7 +74,7 @@ public class RoleEditView extends
AbstractRecordEditor<RolesDataSource> implemen
private boolean isLdapConfigured;
public RoleEditView(String locatorId, int roleId) {
- super(locatorId, new RolesDataSource(), roleId, DATA_TYPE_NAME, HEADER_ICON);
+ super(locatorId, new RolesDataSource(), roleId, MSG.common_label_role(),
HEADER_ICON);
}
@Override
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 7eb099c..ba5f6e9 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
@@ -31,6 +31,7 @@ import com.smartgwt.client.data.DataSourceField;
import com.smartgwt.client.data.Record;
import com.smartgwt.client.data.fields.DataSourceIntegerField;
import com.smartgwt.client.data.fields.DataSourceTextField;
+import com.smartgwt.client.types.FieldType;
import com.smartgwt.client.widgets.grid.ListGridRecord;
import org.rhq.core.domain.authz.Permission;
@@ -65,6 +66,9 @@ public class RolesDataSource extends RPCDataSource<Role> {
public static final String LDAP_GROUPS = "ldapGroups";
}
+ public static final int ID_SUPERUSER = 1;
+ public static final int ID_ALL_RESOURCES = 2;
+
private static RolesDataSource INSTANCE;
private RoleGWTServiceAsync roleService = GWTServiceLookup.getRoleService();
@@ -93,7 +97,7 @@ public class RolesDataSource extends RPCDataSource<Role> {
protected List<DataSourceField> addDataSourceFields() {
List<DataSourceField> fields = super.addDataSourceFields();
- DataSourceField idDataField = new DataSourceIntegerField(Field.ID,
"ID");
+ DataSourceIntegerField idDataField = new DataSourceIntegerField(Field.ID,
"ID");
idDataField.setPrimaryKey(true);
idDataField.setCanEdit(false);
fields.add(idDataField);
@@ -105,6 +109,21 @@ public class RolesDataSource extends RPCDataSource<Role> {
.common_title_description(), 100, false);
fields.add(descriptionField);
+ DataSourceField resourceGroupsField = new DataSourceField(Field.RESOURCE_GROUPS,
FieldType.ANY, "Resource Groups");
+ fields.add(resourceGroupsField);
+
+ DataSourceField globalPermissionsField = new
DataSourceField(Field.GLOBAL_PERMISSIONS, FieldType.ANY, "Global Permissions");
+ fields.add(globalPermissionsField);
+
+ DataSourceField resourcePermissionsField = new
DataSourceField(Field.RESOURCE_PERMISSIONS, FieldType.ANY, "Resource
Permissions");
+ fields.add(resourcePermissionsField);
+
+ DataSourceField subjectsField = new DataSourceField(Field.SUBJECTS,
FieldType.ANY, "Subjects");
+ fields.add(subjectsField);
+
+ DataSourceField ldapGroupsField = new DataSourceField(Field.LDAP_GROUPS,
FieldType.ANY, "LDAP Groups");
+ fields.add(ldapGroupsField);
+
return fields;
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesView.java
index 35417e7..4b40221 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesView.java
@@ -38,9 +38,6 @@ import org.rhq.enterprise.gui.coregui.client.components.view.ViewName;
public class RolesView extends TableSection implements BookmarkableView {
public static final ViewName VIEW_ID = new ViewName("Roles",
MSG.view_adminSecurity_roles());
- private static final int ID_SUPERUSER = 1;
- private static final int ID_ALL_RESOURCES = 2;
-
// TODO: We need a 24x24 version of the Role icon.
private static final String HEADER_ICON = "global/Role_16.png";
@@ -72,7 +69,7 @@ public class RolesView extends TableSection implements BookmarkableView
{
for (ListGridRecord record : selection) {
int id = record.getAttributeAsInt(RolesDataSource.Field.ID);
- if (id == ID_SUPERUSER || id == ID_ALL_RESOURCES) {
+ if (id == RolesDataSource.ID_SUPERUSER || id ==
RolesDataSource.ID_ALL_RESOURCES) {
// The superuser and all-resources roles cannot be deleted.
return false;
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java
index 3bec8c3..2f99ddf 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java
@@ -53,7 +53,6 @@ import
org.rhq.enterprise.gui.coregui.client.components.selector.AssignedItemsCh
*/
public class UserEditView extends AbstractRecordEditor<UsersDataSource> {
- private static final String DATA_TYPE_NAME = "user";
private static final String HEADER_ICON = "global/User_24.png";
private static final int SUBJECT_ID_RHQADMIN = 2;
@@ -62,7 +61,7 @@ public class UserEditView extends
AbstractRecordEditor<UsersDataSource> {
private boolean hasManageSecurityPermission;
public UserEditView(String locatorId, int subjectId) {
- super(locatorId, new UsersDataSource(), subjectId, DATA_TYPE_NAME, HEADER_ICON);
+ super(locatorId, new UsersDataSource(), subjectId, MSG.common_label_user(),
HEADER_ICON);
}
@Override
@@ -204,4 +203,5 @@ public class UserEditView extends
AbstractRecordEditor<UsersDataSource> {
super.reset();
this.roleSelector.reset();
}
+
}
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 8a3ce83..c24ac5b 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
@@ -74,6 +74,9 @@ public class UsersDataSource extends RPCDataSource<Subject> {
public static final String PASSWORD_VERIFY = "passwordVerify";
}
+ public static final int ID_OVERLORD = 1;
+ public static final int ID_RHQADMIN = 2;
+
private final SubjectGWTServiceAsync subjectService =
GWTServiceLookup.getSubjectService();
public static UsersDataSource getInstance() {
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersView.java
index 7118d31..e6c73c5 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersView.java
@@ -22,14 +22,12 @@ import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
-import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.admin.AdministrationView;
import org.rhq.enterprise.gui.coregui.client.components.table.AbstractTableAction;
import org.rhq.enterprise.gui.coregui.client.components.table.TableAction;
import org.rhq.enterprise.gui.coregui.client.components.table.TableActionEnablement;
import org.rhq.enterprise.gui.coregui.client.components.table.TableSection;
import org.rhq.enterprise.gui.coregui.client.components.view.ViewName;
-import org.rhq.enterprise.gui.coregui.client.util.message.Message;
/**
* A table that lists all users and provides the ability to view details of or delete
those users and to create new
@@ -44,13 +42,8 @@ public class UsersView extends TableSection {
public static final String VIEW_PATH = AdministrationView.VIEW_ID + "/"
+ AdministrationView.SECTION_SECURITY_VIEW_ID + "/" + VIEW_ID;
- private static final int ID_OVERLORD = 1;
- private static final int ID_RHQADMIN = 2;
-
private static final String HEADER_ICON = "global/User_24.png";
- private static Message message;
-
public UsersView(String locatorId) {
super(locatorId, MSG.view_adminSecurity_users());
@@ -61,15 +54,6 @@ public class UsersView extends TableSection {
}
@Override
- public void refresh() {
- super.refresh();
- if (UsersView.message != null) {
- CoreGUI.getMessageCenter().notify(UsersView.message);
- UsersView.message = null;
- }
- }
-
- @Override
protected void configureTable() {
getListGrid().setUseAllDataSourceFields(false);
@@ -97,8 +81,8 @@ public class UsersView extends TableSection {
}
for (ListGridRecord record : selection) {
- int id = record.getAttributeAsInt("id");
- if (id == ID_OVERLORD || id == ID_RHQADMIN) {
+ int id = record.getAttributeAsInt(UsersDataSource.Field.ID);
+ if (id == UsersDataSource.ID_OVERLORD || id ==
UsersDataSource.ID_RHQADMIN) {
// The superuser and rhqadmin users cannot be deleted.
return false;
}
@@ -125,12 +109,12 @@ public class UsersView extends TableSection {
@Override
protected String getDataTypeName() {
- return "user";
+ return MSG.common_label_user();
}
@Override
protected String getDataTypeNamePlural() {
- return "users";
+ return MSG.common_label_users();
}
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/AbstractRecordEditor.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/AbstractRecordEditor.java
index 865ca35..f246c19 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/AbstractRecordEditor.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/AbstractRecordEditor.java
@@ -287,18 +287,30 @@ public abstract class AbstractRecordEditor<DS extends
RPCDataSource> extends Loc
// Load the data into the form.
this.form.editRecord(record);
+ // This tells form.saveData() to invoke executeUpdate() on the dataSource.
+ this.form.setSaveOperationType(DSOperationType.UPDATE);
+
// Now that all the widgets have been created and initialized, make everything
visible.
- LOADING_LABEL.hide();
- this.editCanvas.show();
- markForRedraw();
+ displayForm();
}
private void editNewRecord() {
this.titleBar.setTitle("New " + this.dataTypeName);
+
Record record = createNewRecord();
- editRecord(record);
+ this.form.editRecord(record);
+
// This tells form.saveData() to invoke executeAdd() on the dataSource.
this.form.setSaveOperationType(DSOperationType.ADD);
+
+ // Now that all the widgets have been created and initialized, make everything
visible.
+ displayForm();
+ }
+
+ private void displayForm() {
+ LOADING_LABEL.hide();
+ this.editCanvas.show();
+ markForRedraw();
}
protected abstract Record createNewRecord();
@@ -325,8 +337,7 @@ public abstract class AbstractRecordEditor<DS extends
RPCDataSource> extends Loc
protected void onExistingRecordFetched(Record record) {
editRecord(record);
- // This tells form.saveData() to invoke executeUpdate() on the dataSource.
- this.form.setSaveOperationType(DSOperationType.UPDATE);
+
// Perform up front validation for existing records.
// NOTE: We do *not* do this for new records, since we expect most of the
required fields to be blank.
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/EnhancedDynamicForm.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/EnhancedDynamicForm.java
index de483de..b013f36 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/EnhancedDynamicForm.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/EnhancedDynamicForm.java
@@ -87,6 +87,7 @@ public class EnhancedDynamicForm extends LocatableDynamicForm {
// DataSource Settings
setAutoFetchData(true);
+ setUseAllDataSourceFields(false);
// Validation Settings
setValidateOnChange(!isNewRecord);
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
index 4e7c1ed..8df9966 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
@@ -1241,4 +1241,3 @@ view_messageCenter_messageTitle = Message Center~
view_messageCenter_messageSeverity = Severity~
view_messageCenter_messageTime = Time~
view_messageCenter_messageDetail = Detail~
-