modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
| 27 ++++++++--
1 file changed, 22 insertions(+), 5 deletions(-)
New commits:
commit 053dbbdd57305468cd10c35dfb0e586c4631b0ab
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Mon Jan 30 11:18:24 2012 -0800
[BZ734197]-Improvement: Dynagroup creation should provide better error msg for
duplicate name. Delete logging.
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
index a9d41fc..f55c37a 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
@@ -83,7 +83,6 @@ import
org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableDynamicForm;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableIButton;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableVLayout;
-import com.allen_sauer.gwt.log.client.Log;
/**
* @author Joseph Marques
@@ -202,9 +201,7 @@ public class SingleGroupDefinitionView extends LocatableVLayout
implements Bookm
Map.Entry thisEntry = (Map.Entry) entryObject;
String fieldKey = (String) thisEntry.getKey();
// the duplicate name error will be keyed by
'name' in the errorMap
- Log.debug("there were errors");
if (fieldKey.equals("name")) {
- Log.debug("found name error key");
String errorValue = (String) thisEntry.getValue();
CoreGUI.getErrorHandler().handleError(errorValue);
hasDuplicateNameError = true;
commit 26a4e740cdec5e690ac99453c73eecb18f2c6c97
Author: Mike Thompson <mithomps(a)redhat.com>
Date: Mon Jan 30 10:42:38 2012 -0800
[BZ734197]-Improvement: Dynagroup creation should provide better error msg for
duplicate name.
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
index 96d3702..a9d41fc 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/SingleGroupDefinitionView.java
@@ -24,9 +24,7 @@ import static
org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGro
import static
org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.PLUGIN;
import static
org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.TYPE;
-import java.util.HashMap;
-import java.util.LinkedHashMap;
-import java.util.Set;
+import java.util.*;
import com.google.gwt.user.client.History;
import com.google.gwt.user.client.rpc.AsyncCallback;
@@ -85,6 +83,8 @@ import
org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableDynamicForm;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableIButton;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableVLayout;
+import com.allen_sauer.gwt.log.client.Log;
+
/**
* @author Joseph Marques
*/
@@ -192,11 +192,31 @@ public class SingleGroupDefinitionView extends LocatableVLayout
implements Bookm
form.saveData(new DSCallback() {
@Override
public void execute(DSResponse response, Object rawData, DSRequest
request) {
+ boolean hasDuplicateNameError = false;
if (form.isNewRecord()) {
Record[] results = response.getData();
if (results.length != 1) {
- CoreGUI.getErrorHandler().handleError(
-
MSG.view_dynagroup_singleSaveFailure(String.valueOf(results.length)));
+
+ // handle the special case for name already exists error
+ for (Object entryObject : response.getErrors().entrySet()) {
+ Map.Entry thisEntry = (Map.Entry) entryObject;
+ String fieldKey = (String) thisEntry.getKey();
+ // the duplicate name error will be keyed by
'name' in the errorMap
+ Log.debug("there were errors");
+ if (fieldKey.equals("name")) {
+ Log.debug("found name error key");
+ String errorValue = (String) thisEntry.getValue();
+ CoreGUI.getErrorHandler().handleError(errorValue);
+ hasDuplicateNameError = true;
+ }
+ }
+
+ if(!hasDuplicateNameError){
+ CoreGUI.getErrorHandler().handleError(
+
MSG.view_dynagroup_singleSaveFailure(String.valueOf(results.length)));
+ }
+
+
} else {
Record newRecord = results[0];
GroupDefinition newGroupDefinition =
GroupDefinitionDataSource.getInstance().copyValues(
Show replies by date