modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/configuration/GroupResourceConfigurationEditView.java
| 8 ++++++++
1 file changed, 8 insertions(+)
New commits:
commit adbe97386a3046eef0a1e0d79765ca73050e7ecc
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Fri Feb 25 09:57:29 2011 -0500
part of BZ 680167 - this illustrates how to fix this RefreshableView bug for those
views that have this bug.
just track whether you are currently refreshing, if you are, abort the current call to
refresh()
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/configuration/GroupResourceConfigurationEditView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/configuration/GroupResourceConfigurationEditView.java
index 862c8c4..c924352 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/configuration/GroupResourceConfigurationEditView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/configuration/GroupResourceConfigurationEditView.java
@@ -72,6 +72,8 @@ public class GroupResourceConfigurationEditView extends LocatableVLayout
impleme
private ConfigurationEditor editor;
private IButton saveButton;
+ private boolean refreshing = false;
+
public GroupResourceConfigurationEditView(String locatorId, ResourceGroupComposite
groupComposite) {
super(locatorId);
@@ -110,6 +112,11 @@ public class GroupResourceConfigurationEditView extends
LocatableVLayout impleme
@Override
public void refresh() {
+ if (this.refreshing) {
+ return; // we are already in the process of refreshing, don't do it
again
+ }
+
+ this.refreshing = true;
this.saveButton.disable();
if (editor != null) {
editor.destroy();
@@ -129,6 +136,7 @@ public class GroupResourceConfigurationEditView extends
LocatableVLayout impleme
this.editor.addPropertyValueChangeListener(this);
this.editor.setReadOnly(!this.resourcePermission.isConfigureWrite());
addMember(this.editor);
+ this.refreshing = false; // when we get here, we know we are done the
refresh
}
}
Show replies by date