modules/core/domain/src/main/java/org/rhq/core/domain/alert/AlertDefinition.java
| 8
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
| 106 +++++-----
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsAlertDefinitionForm.java
| 25 +-
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
| 21 +
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GeneralPropertiesAlertDefinitionForm.java
| 59 +++--
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java
| 21 +
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/RecoveryAlertDefinitionForm.java
| 7
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsView.java
| 19 +
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SingleAlertDefinitionView.java
| 1
9 files changed, 174 insertions(+), 93 deletions(-)
New commits:
commit 1c98f96a1d2751aacd48ff4ba6b07666906b7dc9
Merge: 761b250... 40fc34f...
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Fri Aug 13 13:17:53 2010 -0400
Merge branch 'alert-def-gwt'
commit 40fc34f2b200c1ea90e8faf26cae4f0bd2c03658
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Fri Aug 13 13:16:08 2010 -0400
the general properties tab now works nicely.
starting the "edit" feature. still doesn't store anything to the DB yet
diff --git
a/modules/core/domain/src/main/java/org/rhq/core/domain/alert/AlertDefinition.java
b/modules/core/domain/src/main/java/org/rhq/core/domain/alert/AlertDefinition.java
index 807d3d3..31be645 100644
--- a/modules/core/domain/src/main/java/org/rhq/core/domain/alert/AlertDefinition.java
+++ b/modules/core/domain/src/main/java/org/rhq/core/domain/alert/AlertDefinition.java
@@ -623,6 +623,14 @@ public class AlertDefinition implements Serializable {
this.deleted = deleted;
}
+ /**
+ * A definition is "read-only" with respect to updates that come from the
group/template level.
+ * If "read only" is true, then changes to the parent group/template alert
definition will not
+ * change this resource alert def. If read only is false, changes to the parent
propagate to the
+ * child resource alert.
+ *
+ * @return read only flag
+ */
public boolean isReadOnly() {
return this.readOnly;
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
index 6c6aa9f..4a57272 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
@@ -39,6 +39,7 @@ import
org.rhq.enterprise.gui.coregui.client.components.table.Table.SelectionEna
public abstract class AbstractAlertDefinitionsView extends VLayout {
private SingleAlertDefinitionView singleAlertDefinitionView;
+ private Table alertDefinitionsTable;
public AbstractAlertDefinitionsView() {
setWidth100();
@@ -51,11 +52,11 @@ public abstract class AbstractAlertDefinitionsView extends VLayout {
super.onDraw();
Criteria criteria = getCriteria();
- final Table table = new Table(getTableTitle(), criteria);
- table.setDataSource(getAlertDefinitionDataSource());
- table.getListGrid().setUseAllDataSourceFields(true);
+ alertDefinitionsTable = new Table(getTableTitle(), criteria);
+ alertDefinitionsTable.setDataSource(getAlertDefinitionDataSource());
+ alertDefinitionsTable.getListGrid().setUseAllDataSourceFields(true);
- table.getListGrid().addSelectionChangedHandler(new SelectionChangedHandler() {
+ alertDefinitionsTable.getListGrid().addSelectionChangedHandler(new
SelectionChangedHandler() {
public void onSelectionChanged(SelectionEvent selectionEvent) {
AlertDefinition alertDef = null;
ListGridRecord selectedRecord = null;
@@ -64,16 +65,11 @@ public abstract class AbstractAlertDefinitionsView extends VLayout {
selectedRecord = allSelections[0];
}
if (selectedRecord != null) {
- alertDef = ((AbstractAlertDefinitionsDataSource)
table.getDataSource()).copyValues(selectedRecord);
- table.setHeight("33%");
- table.setShowResizeBar(true);
- singleAlertDefinitionView.setHeight("67%");
- singleAlertDefinitionView.show();
- singleAlertDefinitionView.setAlertDefinition(alertDef);
+ alertDef = ((AbstractAlertDefinitionsDataSource)
alertDefinitionsTable.getDataSource())
+ .copyValues(selectedRecord);
+ showSingleAlertDefinitionView(alertDef);
} else {
- table.setHeight100();
- table.setShowResizeBar(false);
- singleAlertDefinitionView.hide();
+ hideSingleAlertDefinitionView();
}
markForRedraw();
}
@@ -81,49 +77,63 @@ public abstract class AbstractAlertDefinitionsView extends VLayout {
boolean permitted = isAllowedToModifyAlerts();
- table.addTableAction("New", (permitted) ? SelectionEnablement.ALWAYS :
SelectionEnablement.NEVER, null,
- new TableAction() {
- public void executeAction(ListGridRecord[] selection) {
- newButtonPressed(selection);
- CoreGUI.refresh();
- }
- });
+ alertDefinitionsTable.addTableAction("New", (permitted) ?
SelectionEnablement.ALWAYS
+ : SelectionEnablement.NEVER, null, new TableAction() {
+ public void executeAction(ListGridRecord[] selection) {
+ newButtonPressed(selection);
+ CoreGUI.refresh();
+ }
+ });
- table.addTableAction("Enable", (permitted) ? SelectionEnablement.ANY :
SelectionEnablement.NEVER,
- "Are You Sure?", new TableAction() {
- public void executeAction(ListGridRecord[] selection) {
- enableButtonPressed(selection);
- CoreGUI.refresh();
- }
- });
+ alertDefinitionsTable.addTableAction("Enable", (permitted) ?
SelectionEnablement.ANY
+ : SelectionEnablement.NEVER, "Are You Sure?", new TableAction() {
+ public void executeAction(ListGridRecord[] selection) {
+ enableButtonPressed(selection);
+ CoreGUI.refresh();
+ }
+ });
- table.addTableAction("Disable", (permitted) ? SelectionEnablement.ANY :
SelectionEnablement.NEVER,
- "Are You Sure?", new TableAction() {
- public void executeAction(ListGridRecord[] selection) {
- disableButtonPressed(selection);
- }
- });
+ alertDefinitionsTable.addTableAction("Disable", (permitted) ?
SelectionEnablement.ANY
+ : SelectionEnablement.NEVER, "Are You Sure?", new TableAction() {
+ public void executeAction(ListGridRecord[] selection) {
+ disableButtonPressed(selection);
+ }
+ });
- table.addTableAction("Delete", (permitted) ? SelectionEnablement.ANY :
SelectionEnablement.NEVER,
- "Are You Sure?", new TableAction() {
- public void executeAction(ListGridRecord[] selection) {
- deleteButtonPressed(selection);
- CoreGUI.refresh();
- }
- });
+ alertDefinitionsTable.addTableAction("Delete", (permitted) ?
SelectionEnablement.ANY
+ : SelectionEnablement.NEVER, "Are You Sure?", new TableAction() {
+ public void executeAction(ListGridRecord[] selection) {
+ deleteButtonPressed(selection);
+ CoreGUI.refresh();
+ }
+ });
- addMember(table);
+ addMember(alertDefinitionsTable);
- this.singleAlertDefinitionView = buildSingleAlertDefinitionView();
- this.singleAlertDefinitionView.hide();
- this.singleAlertDefinitionView.setWidth100();
- this.singleAlertDefinitionView.setHeight100();
- this.singleAlertDefinitionView.setMargin(10);
- addMember(this.singleAlertDefinitionView);
+ singleAlertDefinitionView = buildSingleAlertDefinitionView();
+ singleAlertDefinitionView.hide();
+ singleAlertDefinitionView.setWidth100();
+ singleAlertDefinitionView.setHeight100();
+ singleAlertDefinitionView.setMargin(10);
+ addMember(singleAlertDefinitionView);
}
protected SingleAlertDefinitionView getSingleAlertDefinitionView() {
- return this.singleAlertDefinitionView;
+ return singleAlertDefinitionView;
+ }
+
+ protected void showSingleAlertDefinitionView(AlertDefinition alertDef) {
+ alertDefinitionsTable.setHeight("33%");
+ alertDefinitionsTable.setShowResizeBar(true);
+ singleAlertDefinitionView.setHeight("67%");
+ singleAlertDefinitionView.show();
+ singleAlertDefinitionView.setAlertDefinition(alertDef);
+ }
+
+ protected void hideSingleAlertDefinitionView() {
+ alertDefinitionsTable.setHeight100();
+ alertDefinitionsTable.setShowResizeBar(false);
+ singleAlertDefinitionView.hide();
}
protected SingleAlertDefinitionView buildSingleAlertDefinitionView() {
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsAlertDefinitionForm.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsAlertDefinitionForm.java
index 3f91844..819260f 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsAlertDefinitionForm.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsAlertDefinitionForm.java
@@ -38,6 +38,8 @@ public class ConditionsAlertDefinitionForm extends DynamicForm
implements EditAl
private SelectItem conditionExpression;
+ private boolean formBuilt = false;
+
public ConditionsAlertDefinitionForm() {
this(null);
}
@@ -50,7 +52,7 @@ public class ConditionsAlertDefinitionForm extends DynamicForm
implements EditAl
protected void onDraw() {
super.onDraw();
- if (conditionExpression == null) {
+ if (!formBuilt) {
buildForm();
setAlertDefinition(alertDefinition);
makeViewOnly();
@@ -59,12 +61,14 @@ public class ConditionsAlertDefinitionForm extends DynamicForm
implements EditAl
@Override
public AlertDefinition getAlertDefinition() {
- return this.alertDefinition;
+ return alertDefinition;
}
@Override
public void setAlertDefinition(AlertDefinition alertDef) {
- this.alertDefinition = alertDef;
+ alertDefinition = alertDef;
+
+ buildForm();
if (alertDef == null) {
clearFormValues();
@@ -94,13 +98,20 @@ public class ConditionsAlertDefinitionForm extends DynamicForm
implements EditAl
@Override
public void clearFormValues() {
conditionExpression.clearValue();
+
+ markForRedraw();
}
private void buildForm() {
- conditionExpression = new SelectItem("conditionExpression", "Fire
alert when");
- conditionExpression.setValueMap(BooleanExpression.ALL.toString(),
BooleanExpression.ANY.toString());
- conditionExpression.setDefaultValue(BooleanExpression.ALL.toString());
+ if (!formBuilt) {
- setFields(conditionExpression);
+ conditionExpression = new SelectItem("conditionExpression",
"Fire alert when");
+ conditionExpression.setValueMap(BooleanExpression.ALL.toString(),
BooleanExpression.ANY.toString());
+ conditionExpression.setDefaultValue(BooleanExpression.ALL.toString());
+
+ setFields(conditionExpression);
+
+ formBuilt = true;
+ }
}
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
index adf2173..5590af6 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
@@ -34,6 +34,8 @@ public class DampeningAlertDefinitionForm extends DynamicForm implements
EditAle
private AlertDefinition alertDefinition;
+ private boolean formBuilt = false;
+
public DampeningAlertDefinitionForm() {
this(null);
}
@@ -46,8 +48,7 @@ public class DampeningAlertDefinitionForm extends DynamicForm implements
EditAle
protected void onDraw() {
super.onDraw();
- // TODO only build form if we didn't do it yet
- if (true) {
+ if (!formBuilt) {
buildForm();
setAlertDefinition(alertDefinition);
makeViewOnly();
@@ -56,12 +57,14 @@ public class DampeningAlertDefinitionForm extends DynamicForm
implements EditAle
@Override
public AlertDefinition getAlertDefinition() {
- return this.alertDefinition;
+ return alertDefinition;
}
@Override
public void setAlertDefinition(AlertDefinition alertDef) {
- this.alertDefinition = alertDef;
+ alertDefinition = alertDef;
+
+ buildForm();
if (alertDef == null) {
clearFormValues();
@@ -90,10 +93,16 @@ public class DampeningAlertDefinitionForm extends DynamicForm
implements EditAle
@Override
public void clearFormValues() {
// TODO component.clearValue();
+
+ markForRedraw();
}
private void buildForm() {
- // TODO build components
- // TODO setFields(components);
+ if (!formBuilt) {
+ // TODO build components
+ // TODO setFields(components);
+
+ formBuilt = true;
+ }
}
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GeneralPropertiesAlertDefinitionForm.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GeneralPropertiesAlertDefinitionForm.java
index 712013c..3b46437 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GeneralPropertiesAlertDefinitionForm.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GeneralPropertiesAlertDefinitionForm.java
@@ -23,6 +23,8 @@
package org.rhq.enterprise.gui.coregui.client.alert.definitions;
+import java.util.LinkedHashMap;
+
import com.smartgwt.client.widgets.form.DynamicForm;
import com.smartgwt.client.widgets.form.fields.RadioGroupItem;
import com.smartgwt.client.widgets.form.fields.SelectItem;
@@ -75,12 +77,12 @@ public class GeneralPropertiesAlertDefinitionForm extends DynamicForm
implements
@Override
public AlertDefinition getAlertDefinition() {
- return this.alertDefinition;
+ return alertDefinition;
}
@Override
public void setAlertDefinition(AlertDefinition alertDef) {
- this.alertDefinition = alertDef;
+ alertDefinition = alertDef;
buildForm();
@@ -93,7 +95,7 @@ public class GeneralPropertiesAlertDefinitionForm extends DynamicForm
implements
descriptionTextField.setValue(alertDef.getDescription());
descriptionStatic.setValue(alertDef.getDescription());
- prioritySelection.setValue(alertDef.getPriority().getDisplayName());
+ prioritySelection.setValue(alertDef.getPriority().name());
priorityStatic.setValue(alertDef.getPriority().getDisplayName());
enabledSelection.setValue(alertDef.getEnabled() ? "Yes" :
"No");
@@ -123,11 +125,15 @@ public class GeneralPropertiesAlertDefinitionForm extends
DynamicForm implements
readOnlySelection.show();
readOnlyStatic.hide();
- Integer parentId = this.alertDefinition.getParentId();
- if ((parentId == null || parentId.intValue() == 0) &&
(this.alertDefinition.getGroupAlertDefinition() == null)) {
- readOnlySelection.hide();
+ if (alertDefinition != null) {
+ Integer parentId = alertDefinition.getParentId();
+ if ((parentId == null || parentId.intValue() == 0) &&
(alertDefinition.getGroupAlertDefinition() == null)) {
+ readOnlySelection.hide();
+ } else {
+ readOnlySelection.show();
+ }
} else {
- readOnlySelection.show();
+ readOnlySelection.hide();
}
readOnlyStatic.hide();
@@ -151,11 +157,15 @@ public class GeneralPropertiesAlertDefinitionForm extends
DynamicForm implements
readOnlySelection.hide();
readOnlyStatic.show();
- Integer parentId = this.alertDefinition.getParentId();
- if ((parentId == null || parentId.intValue() == 0) &&
(this.alertDefinition.getGroupAlertDefinition() == null)) {
- readOnlyStatic.hide();
+ if (alertDefinition != null) {
+ Integer parentId = alertDefinition.getParentId();
+ if ((parentId == null || parentId.intValue() == 0) &&
(alertDefinition.getGroupAlertDefinition() == null)) {
+ readOnlyStatic.hide();
+ } else {
+ readOnlyStatic.show();
+ }
} else {
- readOnlyStatic.show();
+ readOnlyStatic.hide();
}
readOnlySelection.hide();
@@ -164,7 +174,14 @@ public class GeneralPropertiesAlertDefinitionForm extends DynamicForm
implements
@Override
public void saveAlertDefinition() {
- // TODO Auto-generated method stub
+ alertDefinition.setName(nameTextField.getValue().toString());
+ alertDefinition.setDescription(descriptionTextField.getValue().toString());
+
+ String prioritySelected = prioritySelection.getValue().toString();
+ alertDefinition.setPriority(AlertPriority.valueOf(prioritySelected));
+
+ alertDefinition.setEnabled("Yes".equals(enabledSelection.getValue()));
+
alertDefinition.setReadOnly("Yes".equals(readOnlySelection.getValue()));
}
@Override
@@ -188,16 +205,21 @@ public class GeneralPropertiesAlertDefinitionForm extends
DynamicForm implements
if (!formBuilt) {
nameTextField = new TextItem("name", "Name");
nameTextField.setWidth(300);
+ nameTextField.setDefaultValue("");
nameStatic = new StaticTextItem("nameStatic", "Name");
descriptionTextField = new TextAreaItem("description",
"Description");
descriptionTextField.setWidth(300);
+ descriptionTextField.setDefaultValue("");
descriptionStatic = new StaticTextItem("descriptionStatic",
"Description");
prioritySelection = new SelectItem("priority",
"Priority");
- prioritySelection.setValueMap(AlertPriority.HIGH.getDisplayName(),
AlertPriority.MEDIUM.getDisplayName(),
- AlertPriority.LOW.getDisplayName());
- prioritySelection.setDefaultValue(AlertPriority.MEDIUM.getDisplayName());
+ LinkedHashMap<String, String> priorities = new LinkedHashMap<String,
String>(3);
+ priorities.put(AlertPriority.HIGH.name(),
AlertPriority.HIGH.getDisplayName());
+ priorities.put(AlertPriority.MEDIUM.name(),
AlertPriority.MEDIUM.getDisplayName());
+ priorities.put(AlertPriority.LOW.name(),
AlertPriority.LOW.getDisplayName());
+ prioritySelection.setValueMap(priorities);
+ prioritySelection.setDefaultValue(AlertPriority.MEDIUM.name());
priorityStatic = new StaticTextItem("priorityStatic",
"Priority");
enabledSelection = new RadioGroupItem("enabled",
"Enabled");
@@ -205,11 +227,12 @@ public class GeneralPropertiesAlertDefinitionForm extends
DynamicForm implements
enabledSelection.setDefaultValue("Yes");
enabledStatic = new StaticTextItem("enabledStatic",
"Enabled");
- readOnlySelection = new RadioGroupItem("readOnly", "Read
Only");
+ readOnlySelection = new RadioGroupItem("readOnly",
"Protected");
readOnlySelection.setValueMap("Yes", "No");
readOnlySelection.setDefaultValue("Yes");
- readOnlySelection.setPrompt("If true, the parent definition will not
override this alert definition");
- readOnlyStatic = new StaticTextItem("readOnlyStatic", "Read
Only");
+ readOnlySelection
+ .setPrompt("If true, this definition is protected from being changed
by the parent definition. In other words, the parent definition settings will not override
this definition.");
+ readOnlyStatic = new StaticTextItem("readOnlyStatic",
"Protected");
setFields(nameTextField, nameStatic, descriptionTextField, descriptionStatic,
prioritySelection,
priorityStatic, enabledSelection, enabledStatic, readOnlySelection,
readOnlyStatic);
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 948656a..ab79d1c 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
@@ -34,6 +34,8 @@ public class NotificationsAlertDefinitionForm extends DynamicForm
implements Edi
private AlertDefinition alertDefinition;
+ private boolean formBuilt = false;
+
public NotificationsAlertDefinitionForm() {
this(null);
}
@@ -46,8 +48,7 @@ public class NotificationsAlertDefinitionForm extends DynamicForm
implements Edi
protected void onDraw() {
super.onDraw();
- // TODO only build form if we didn't do it yet
- if (true) {
+ if (!formBuilt) {
buildForm();
setAlertDefinition(alertDefinition);
makeViewOnly();
@@ -56,12 +57,14 @@ public class NotificationsAlertDefinitionForm extends DynamicForm
implements Edi
@Override
public AlertDefinition getAlertDefinition() {
- return this.alertDefinition;
+ return alertDefinition;
}
@Override
public void setAlertDefinition(AlertDefinition alertDef) {
- this.alertDefinition = alertDef;
+ alertDefinition = alertDef;
+
+ buildForm();
if (alertDef == null) {
clearFormValues();
@@ -90,10 +93,16 @@ public class NotificationsAlertDefinitionForm extends DynamicForm
implements Edi
@Override
public void clearFormValues() {
// TODO component.clearValue();
+
+ markForRedraw();
}
private void buildForm() {
- // TODO build components
- // TODO setFields(components);
+ if (!formBuilt) {
+ // TODO build components
+ // TODO setFields(components);
+
+ formBuilt = true;
+ }
}
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/RecoveryAlertDefinitionForm.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/RecoveryAlertDefinitionForm.java
index e95c771..cff9ad7 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/RecoveryAlertDefinitionForm.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/RecoveryAlertDefinitionForm.java
@@ -62,12 +62,12 @@ public class RecoveryAlertDefinitionForm extends DynamicForm
implements EditAler
@Override
public AlertDefinition getAlertDefinition() {
- return this.alertDefinition;
+ return alertDefinition;
}
@Override
public void setAlertDefinition(AlertDefinition alertDef) {
- this.alertDefinition = alertDef;
+ alertDefinition = alertDef;
buildForm();
@@ -99,6 +99,8 @@ public class RecoveryAlertDefinitionForm extends DynamicForm implements
EditAler
public void clearFormValues() {
recoverAlertSelection.clearValue();
disableWhenFiredSelection.clearValue();
+
+ markForRedraw();
}
private void buildForm() {
@@ -113,6 +115,7 @@ public class RecoveryAlertDefinitionForm extends DynamicForm
implements EditAler
disableWhenFiredSelection.setDefaultValue("Yes");
setFields(recoverAlertSelection, disableWhenFiredSelection);
+
formBuilt = true;
}
}
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsView.java
index 36c146c..6d01e26 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsView.java
@@ -27,6 +27,8 @@ import com.smartgwt.client.data.Criteria;
import com.smartgwt.client.util.SC;
import com.smartgwt.client.widgets.grid.ListGridRecord;
+import org.rhq.core.domain.alert.AlertDefinition;
+import org.rhq.core.domain.alert.AlertPriority;
import org.rhq.core.domain.resource.Resource;
/**
@@ -68,12 +70,17 @@ public class ResourceAlertDefinitionsView extends
AbstractAlertDefinitionsView {
@Override
protected void newButtonPressed(ListGridRecord[] selection) {
- // TODO Auto-generated method stub
- String str = "this is not implemented yet but you selected";
- for (ListGridRecord record : selection) {
- str += ": " + record.getAttribute("name");
- }
- SC.say(str);
+ // create an empty one with all defaults
+ AlertDefinition newAlertDef = new AlertDefinition();
+ newAlertDef.setDeleted(false);
+ newAlertDef.setEnabled(true);
+ newAlertDef.setNotifyFiltered(false);
+ newAlertDef.setParentId(Integer.valueOf(0));
+ newAlertDef.setPriority(AlertPriority.MEDIUM);
+ newAlertDef.setWillRecover(false);
+
+ showSingleAlertDefinitionView(newAlertDef);
+ getSingleAlertDefinitionView().makeEditable();
}
@Override
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SingleAlertDefinitionView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SingleAlertDefinitionView.java
index eff934f..810d31e 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SingleAlertDefinitionView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SingleAlertDefinitionView.java
@@ -107,6 +107,7 @@ public class SingleAlertDefinitionView extends VLayout {
@Override
public void onClick(ClickEvent event) {
saveAlertDefinition();
+ setAlertDefinition(getAlertDefinition()); // loads data into static
fields
makeViewOnly();
// TODO getAlertDefinition() should now have the new user data - commit
it to DB