modules/core/domain/src/main/java/org/rhq/core/domain/drift/DriftDefinition.java
| 1
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/DriftDefinitionTemplatesView.java
| 50 ++++------
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/gwt/DriftGWTService.java
| 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/server/gwt/DriftGWTServiceImpl.java
| 11 ++
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
| 3
5 files changed, 40 insertions(+), 27 deletions(-)
New commits:
commit 8955805230d595349a578326ff570946e96a80fd
Author: John Sanda <jsanda(a)redhat.com>
Date: Wed Nov 2 15:13:33 2011 -0400
[BZ 750895] Update the attached field when the definitions configuration is updated
diff --git
a/modules/core/domain/src/main/java/org/rhq/core/domain/drift/DriftDefinition.java
b/modules/core/domain/src/main/java/org/rhq/core/domain/drift/DriftDefinition.java
index 081f3b6..efb9ac2 100644
--- a/modules/core/domain/src/main/java/org/rhq/core/domain/drift/DriftDefinition.java
+++ b/modules/core/domain/src/main/java/org/rhq/core/domain/drift/DriftDefinition.java
@@ -237,6 +237,7 @@ public class DriftDefinition implements Serializable {
interval = getIntervalProperty();
driftHandlingMode = getDriftHandlingModeProperty();
isPinned = getIsPinnedProperty();
+ attached = getAttachedProperty();
}
public Resource getResource() {
commit 5dfd88f388c15c02faac819268d237f07ab64d9a
Author: John Sanda <jsanda(a)redhat.com>
Date: Wed Nov 2 15:00:12 2011 -0400
[BZ 749899] Adding support for deleting drift templates
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/DriftDefinitionTemplatesView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/DriftDefinitionTemplatesView.java
index 8b0e4d5..2c5f2f0 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/DriftDefinitionTemplatesView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/drift/DriftDefinitionTemplatesView.java
@@ -21,6 +21,7 @@ package org.rhq.enterprise.gui.coregui.client.drift;
import java.util.ArrayList;
+import com.google.gwt.user.client.rpc.AsyncCallback;
import com.smartgwt.client.data.SortSpecifier;
import com.smartgwt.client.types.SortDirection;
import com.smartgwt.client.widgets.Canvas;
@@ -30,12 +31,15 @@ import com.smartgwt.client.widgets.grid.ListGridRecord;
import org.rhq.core.domain.common.EntityContext;
import org.rhq.core.domain.drift.DriftCategory;
import org.rhq.core.domain.resource.ResourceType;
+import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.ViewPath;
import
org.rhq.enterprise.gui.coregui.client.admin.templates.DriftDefinitionTemplateTypeView;
import org.rhq.enterprise.gui.coregui.client.components.table.AbstractTableAction;
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.drift.wizard.DriftAddDefinitionWizard;
+import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
+import org.rhq.enterprise.gui.coregui.client.util.message.Message;
/**
* A list view that displays a paginated table of {@link
org.rhq.core.domain.drift.DriftDefinitionTemplate}s. It
@@ -121,7 +125,7 @@ public class DriftDefinitionTemplatesView extends
TableSection<DriftDefinitionTe
}
});
- addTableAction("Delete", MSG.common_button_delete(),
MSG.view_drift_delete_defConfirm(),
+ addTableAction("Delete", MSG.common_button_delete(),
MSG.view_drift_template_delete_confirm(),
new AbstractTableAction(deleteEnablement) {
boolean result = false;
@@ -155,35 +159,27 @@ public class DriftDefinitionTemplatesView extends
TableSection<DriftDefinitionTe
DriftDefinitionTemplatesView.this.refreshTableInfo();
}
- private void delete(ListGridRecord[] records) {
- // TODO
-
- // final String[] driftDefNames = new String[records.length];
- // for (int i = 0, selectionLength = records.length; i <
selectionLength; i++) {
- // ListGridRecord record = records[i];
- // String driftDefName =
record.getAttribute(DriftDefinitionDataSource.ATTR_NAME);
- // driftDefNames[i] = driftDefName;
- // }
+ private void delete(final ListGridRecord[] records) {
+ int[] templateIds = new int[records.length];
+ for (int i = 0; i < records.length; ++i) {
+ templateIds[i] =
Integer.parseInt(records[i].getAttribute(DriftDefinitionTemplateDataSource.ATTR_ID));
+ }
+ GWTServiceLookup.getDriftService().deleteDriftDefinitionTemplates(templateIds,
new AsyncCallback<Void>() {
+ @Override
+ public void onFailure(Throwable caught) {
+
CoreGUI.getErrorHandler().handleError(MSG.view_drift_template_delete_failure(), caught);
+ DriftDefinitionTemplatesView.this.refresh();
+ }
- //deleteDriftDefinitionTemplatesByName(driftDefNames);
+ @Override
+ public void onSuccess(Void result) {
+ CoreGUI.getMessageCenter().notify(new
Message(MSG.view_drift_template_delete_success(
+ Integer.toString(records.length)), Message.Severity.Info));
+ DriftDefinitionTemplatesView.this.refresh();
+ }
+ });
}
- // private void deleteDriftDefinitionsByName(final String[] driftDefNames) {
- // GWTServiceLookup.getDriftService().deleteDriftDefinitionsByContext(context,
driftDefNames,
- // new AsyncCallback<Integer>() {
- // public void onSuccess(Integer resultCount) {
- // CoreGUI.getMessageCenter().notify(
- // new
Message(MSG.view_drift_success_deleteDefs(String.valueOf(resultCount)),
- // Message.Severity.Info));
- // refresh();
- // }
- //
- // public void onFailure(Throwable caught) {
- //
CoreGUI.getErrorHandler().handleError(MSG.view_drift_failure_deleteDefs(), caught);
- // }
- // });
- // }
-
@Override
public void renderView(ViewPath viewPath) {
// we have two detail views for drift def templates, the config editor and the
pinned snapshot. Figure out which
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/gwt/DriftGWTService.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/gwt/DriftGWTService.java
index 5a70bc6..7566831 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/gwt/DriftGWTService.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/gwt/DriftGWTService.java
@@ -105,6 +105,8 @@ public interface DriftGWTService extends RemoteService {
PageList<DriftDefinitionTemplate>
findDriftDefinitionTemplatesByCriteria(DriftDefinitionTemplateCriteria criteria)
throws RuntimeException;
+ void deleteDriftDefinitionTemplates(int[] templateIds) throws RuntimeException;
+
/**
* Find all drifts that match the specified criteria.
*
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/server/gwt/DriftGWTServiceImpl.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/server/gwt/DriftGWTServiceImpl.java
index 8ac2d4a..5302362 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/server/gwt/DriftGWTServiceImpl.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/server/gwt/DriftGWTServiceImpl.java
@@ -154,6 +154,17 @@ public class DriftGWTServiceImpl extends AbstractGWTServiceImpl
implements Drift
}
@Override
+ public void deleteDriftDefinitionTemplates(int[] templateIds) throws RuntimeException
{
+ try {
+ for (int templateId : templateIds) {
+ driftTemplateManager.deleteTemplate(getSessionSubject(), templateId);
+ }
+ } catch (Throwable t) {
+ throw getExceptionToThrowToClient(t);
+ }
+ }
+
+ @Override
public DriftSnapshot getSnapshot(DriftSnapshotRequest request) throws
RuntimeException {
try {
DriftSnapshot results = driftManager.getSnapshot(getSessionSubject(),
request);
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 623cab9..32db3fc 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
@@ -1224,6 +1224,9 @@ view_drift_wizard_addDef_success = Successfully added new drift
detection defini
view_drift_wizard_addDef_templatePrompt = Drift Definition Templates
view_drift_wizard_addDef_title = Add Drift Detection Definition for Resource of Type
[{0}]
view_drift_wizard_addDef_windowTitle = Add Drift Detection Definition Wizard
+view_drift_template_delete_confirm = Warning! Deleting this template will also cause all
attached drift definitions to be deleted as well. Those attached definitions along with
all of their snapshots will be permanently removed from the system. Detached definitions
will not be removed. Are you sure you want to continue?
+view_drift_template_delete_success = Successfully deleted {0} drift templates
+view_drift_template_delete_failure = "Failed to delete some or all of the drift
templates
view_drift_wizard_addTemplate_failure = Failed to add new drift template [{0}]
view_drift_wizard_addTemplate_infoStepHelp = Each drift template is derived from an
existing template. This provides a quick way to build new templates that are similar to
existing templates, or originate with plugin defined templates. Like a drift definition,
the template describes a set of files for which drift monitoring will be performed.
Depending on the situation a definition derived from the template may or may not be
allowed to alter the file set, or change other settings. Template names must be unique
within a resource type.
view_drift_wizard_addTemplate_infoStepName = Select the Starting Template
Show replies by date