[rhq] Branch 'nagios' - modules/core
by Heiko W. Rupp
modules/core/plugin-container/src/main/java/org/rhq/core/pc/inventory/ChildResourceTypeDiscoveryRunner.java | 12 +++++-----
1 file changed, 6 insertions(+), 6 deletions(-)
New commits:
commit 3a31a4867493d49747acf959674bcfd47257dc24
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Thu Oct 21 22:01:26 2010 +0200
Roll back to previous version, as the change did more harm than good.
diff --git a/modules/core/plugin-container/src/main/java/org/rhq/core/pc/inventory/ChildResourceTypeDiscoveryRunner.java b/modules/core/plugin-container/src/main/java/org/rhq/core/pc/inventory/ChildResourceTypeDiscoveryRunner.java
index 42e875c..8e0347e 100644
--- a/modules/core/plugin-container/src/main/java/org/rhq/core/pc/inventory/ChildResourceTypeDiscoveryRunner.java
+++ b/modules/core/plugin-container/src/main/java/org/rhq/core/pc/inventory/ChildResourceTypeDiscoveryRunner.java
@@ -169,13 +169,13 @@ public class ChildResourceTypeDiscoveryRunner implements Callable<Set<ResourceTy
}
//Check if type does not already exist, only add ResourceType to set if so
-// if (!childAllreadyExists) {
-// if (log.isDebugEnabled()) {
-// log.info("new ChildResourceType " + newTypetoAdd.getName()
-// + " added to Set<ResourceTypes>");
-// }
+ if (!childAllreadyExists) {
+ if (log.isDebugEnabled()) {
+ log.info("new ChildResourceType " + newTypetoAdd.getName()
+ + " added to Set<ResourceTypes>");
+ }
newTypesToAdd.add(newTypetoAdd);
-// }
+ }
}
//Create a new ResourceType in the DB for the selected type
13 years, 7 months
[rhq] modules/enterprise
by Jay Shaughnessy
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java | 4 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java | 38 ++++++----
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupDataSourceField.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java | 18 +++-
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupsDataSource.java | 32 ++++----
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceDatasource.java | 6 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java | 19 +++--
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java | 12 ---
8 files changed, 69 insertions(+), 62 deletions(-)
New commits:
commit 2a6f63978e077abb1bba6f81a7aee7e7b6e85b28
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Thu Oct 21 14:25:27 2010 -0400
- Fix issue with resource group list view using bad field name
-- Make better use of the datasource field enums
- add "id" to the resourcegroupcompositedatasource for display in debug mode
- cosmetic, remove obsolete straggler defs of useDatasourceDefinedFields()
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 f783b4c..6e7e81e 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
@@ -190,10 +190,6 @@ public class NotificationsAlertDefinitionForm extends LocatableVLayout implement
}
@Override
- public void useDatasourceDefinedFields() {
- }
-
- @Override
public AlertNotification copyValues(ListGridRecord from) {
return (AlertNotification) from.getAttributeAsObject(FIELD_OBJECT);
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java
index b2fea0a..cb338a7 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java
@@ -19,7 +19,10 @@
package org.rhq.enterprise.gui.coregui.client.inventory.groups;
import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.CATEGORY;
+import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.DESCRIPTION;
import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.NAME;
+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.List;
@@ -27,6 +30,7 @@ import com.google.gwt.user.client.rpc.AsyncCallback;
import com.smartgwt.client.data.DSRequest;
import com.smartgwt.client.data.DSResponse;
import com.smartgwt.client.data.DataSourceField;
+import com.smartgwt.client.data.fields.DataSourceIntegerField;
import com.smartgwt.client.data.fields.DataSourceTextField;
import com.smartgwt.client.rpc.RPCResponse;
import com.smartgwt.client.widgets.grid.ListGridRecord;
@@ -68,21 +72,27 @@ public class ResourceGroupCompositeDataSource extends RPCDataSource<ResourceGrou
protected List<DataSourceField> addDataSourceFields() {
List<DataSourceField> fields = super.addDataSourceFields();
- DataSourceTextField nameDataField = new DataSourceTextField("name", "Name", 200);
+ DataSourceField idDataField = new DataSourceIntegerField("id", "ID", 50);
+ idDataField.setPrimaryKey(true);
+ idDataField.setCanEdit(false);
+ fields.add(idDataField);
+
+ DataSourceTextField nameDataField = new DataSourceTextField(NAME.propertyName(), NAME.title(), 200);
nameDataField.setCanEdit(false);
fields.add(nameDataField);
- DataSourceTextField descriptionDataField = new DataSourceTextField("description", "Description");
+ DataSourceTextField descriptionDataField = new DataSourceTextField(DESCRIPTION.propertyName(), DESCRIPTION
+ .title());
descriptionDataField.setCanEdit(false);
fields.add(descriptionDataField);
- DataSourceTextField typeNameDataField = new DataSourceTextField("typeName", "Type");
+ DataSourceTextField typeNameDataField = new DataSourceTextField(TYPE.propertyName(), TYPE.title());
fields.add(typeNameDataField);
- DataSourceTextField pluginNameDataField = new DataSourceTextField("pluginName", "Plugin");
+ DataSourceTextField pluginNameDataField = new DataSourceTextField(PLUGIN.propertyName(), PLUGIN.title());
fields.add(pluginNameDataField);
- DataSourceTextField categoryDataField = new DataSourceTextField("category", "Category");
+ DataSourceTextField categoryDataField = new DataSourceTextField(CATEGORY.propertyName(), CATEGORY.title());
fields.add(categoryDataField);
return fields;
@@ -123,10 +133,10 @@ public class ResourceGroupCompositeDataSource extends RPCDataSource<ResourceGrou
@Override
public ResourceGroupComposite copyValues(ListGridRecord from) {
Integer idAttrib = from.getAttributeAsInt("id");
- String nameAttrib = from.getAttribute("name");
- String descriptionAttrib = from.getAttribute("description");
- String typeNameAttrib = from.getAttribute("typeName");
- String pluginNameAttrib = from.getAttribute("pluginName");
+ String nameAttrib = from.getAttribute(NAME.propertyName());
+ String descriptionAttrib = from.getAttribute(DESCRIPTION.propertyName());
+ String typeNameAttrib = from.getAttribute(TYPE.propertyName());
+ String pluginNameAttrib = from.getAttribute(PLUGIN.propertyName());
ResourceType rt = null;
ResourceGroup rg = new ResourceGroup(nameAttrib);
@@ -155,9 +165,9 @@ public class ResourceGroupCompositeDataSource extends RPCDataSource<ResourceGrou
ListGridRecord record = new ListGridRecord();
record.setAttribute("group", from);
record.setAttribute("id", from.getResourceGroup().getId());
- record.setAttribute("name", from.getResourceGroup().getName());
- record.setAttribute("description", from.getResourceGroup().getDescription());
- record.setAttribute("category", from.getResourceGroup().getGroupCategory().name());
+ record.setAttribute(NAME.propertyName(), from.getResourceGroup().getName());
+ record.setAttribute(DESCRIPTION.propertyName(), from.getResourceGroup().getDescription());
+ record.setAttribute(CATEGORY.propertyName(), from.getResourceGroup().getGroupCategory().name());
record.setAttribute("explicitUp", String.valueOf(from.getExplicitUp()));
record.setAttribute("explicitDown", String.valueOf(from.getExplicitDown()));
@@ -169,8 +179,8 @@ public class ResourceGroupCompositeDataSource extends RPCDataSource<ResourceGrou
if (from.getResourceGroup().getResourceType() != null) {
record.setAttribute("resourceType", from.getResourceGroup().getResourceType());
- record.setAttribute("typeName", from.getResourceGroup().getResourceType().getName());
- record.setAttribute("pluginName", from.getResourceGroup().getResourceType().getPlugin());
+ record.setAttribute(TYPE.propertyName(), from.getResourceGroup().getResourceType().getName());
+ record.setAttribute(PLUGIN.propertyName(), from.getResourceGroup().getResourceType().getPlugin());
}
return record;
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupDataSourceField.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupDataSourceField.java
index d7deadd..88ecdf6 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupDataSourceField.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupDataSourceField.java
@@ -35,7 +35,7 @@ public enum ResourceGroupDataSourceField {
PLUGIN("pluginName", "Plugin"),
- CATEGORY("category", "Category");
+ CATEGORY("groupCategory", "Category");
/**
* Corresponds to a property name of Resource
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java
index 32aabb0..5aced32 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java
@@ -18,6 +18,12 @@
*/
package org.rhq.enterprise.gui.coregui.client.inventory.groups;
+import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.CATEGORY;
+import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.DESCRIPTION;
+import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.NAME;
+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 com.google.gwt.user.client.rpc.AsyncCallback;
import com.smartgwt.client.data.Criteria;
import com.smartgwt.client.types.Alignment;
@@ -64,7 +70,7 @@ public class ResourceGroupListView extends Table {
@Override
protected void configureTable() {
- ListGridField nameField = new ListGridField("name", "Name", 300);
+ ListGridField nameField = new ListGridField(NAME.propertyName(), NAME.title(), 300);
nameField.setCellFormatter(new CellFormatter() {
public String format(Object value, ListGridRecord record, int i, int i1) {
String groupId = record.getAttribute("id");
@@ -73,10 +79,10 @@ public class ResourceGroupListView extends Table {
}
});
- ListGridField descriptionField = new ListGridField("description", "Description");
- ListGridField typeNameField = new ListGridField("typeName", "Type", 130);
- ListGridField pluginNameField = new ListGridField("pluginName", "Plugin", 100);
- ListGridField categoryField = new ListGridField("category", "Category", 100);
+ ListGridField descriptionField = new ListGridField(DESCRIPTION.propertyName(), DESCRIPTION.title());
+ ListGridField typeNameField = new ListGridField(TYPE.propertyName(), TYPE.title(), 130);
+ ListGridField pluginNameField = new ListGridField(PLUGIN.propertyName(), PLUGIN.title(), 100);
+ ListGridField categoryField = new ListGridField(CATEGORY.propertyName(), CATEGORY.title(), 100);
ListGridField availabilityChildrenField = new ListGridField("availabilityChildren", "Children", 100);
availabilityChildrenField.setWrap(false);
@@ -86,7 +92,7 @@ public class ResourceGroupListView extends Table {
availabilityDescendantsField.setWrap(false);
availabilityDescendantsField.setAlign(Alignment.CENTER);
- getListGrid().setFields(nameField, descriptionField, typeNameField, pluginNameField, categoryField,
+ setListGridFields(nameField, descriptionField, typeNameField, pluginNameField, categoryField,
availabilityChildrenField, availabilityDescendantsField);
addTableAction(extendLocatorId("Delete"), "Delete", Table.SelectionEnablement.ANY,
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupsDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupsDataSource.java
index 3f6e197..a862db6 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupsDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupsDataSource.java
@@ -19,7 +19,10 @@
package org.rhq.enterprise.gui.coregui.client.inventory.groups;
import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.CATEGORY;
+import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.DESCRIPTION;
import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.NAME;
+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.List;
@@ -72,21 +75,22 @@ public class ResourceGroupsDataSource extends RPCDataSource<ResourceGroup> {
idDataField.setPrimaryKey(true);
fields.add(idDataField);
- DataSourceTextField nameDataField = new DataSourceTextField("name", "Name", 200);
+ DataSourceTextField nameDataField = new DataSourceTextField(NAME.propertyName(), NAME.title(), 200);
nameDataField.setCanEdit(false);
fields.add(nameDataField);
- DataSourceTextField descriptionDataField = new DataSourceTextField("description", "Description");
+ DataSourceTextField descriptionDataField = new DataSourceTextField(DESCRIPTION.propertyName(), DESCRIPTION
+ .title());
descriptionDataField.setCanEdit(false);
fields.add(descriptionDataField);
- DataSourceTextField typeNameDataField = new DataSourceTextField("typeName", "Type");
+ DataSourceTextField typeNameDataField = new DataSourceTextField(TYPE.propertyName(), TYPE.title());
fields.add(typeNameDataField);
- DataSourceTextField pluginNameDataField = new DataSourceTextField("pluginName", "Plugin");
+ DataSourceTextField pluginNameDataField = new DataSourceTextField(PLUGIN.propertyName(), PLUGIN.title());
fields.add(pluginNameDataField);
- DataSourceTextField categoryDataField = new DataSourceTextField("category", "Category");
+ DataSourceTextField categoryDataField = new DataSourceTextField(CATEGORY.propertyName(), CATEGORY.title());
fields.add(categoryDataField);
return fields;
@@ -126,10 +130,10 @@ public class ResourceGroupsDataSource extends RPCDataSource<ResourceGroup> {
@Override
public ResourceGroup copyValues(ListGridRecord from) {
Integer idAttrib = from.getAttributeAsInt("id");
- String nameAttrib = from.getAttribute("name");
- String descriptionAttrib = from.getAttribute("description");
- String typeNameAttrib = from.getAttribute("typeName");
- String pluginNameAttrib = from.getAttribute("pluginName");
+ String nameAttrib = from.getAttribute(NAME.propertyName());
+ String descriptionAttrib = from.getAttribute(DESCRIPTION.propertyName());
+ String typeNameAttrib = from.getAttribute(TYPE.propertyName());
+ String pluginNameAttrib = from.getAttribute(PLUGIN.propertyName());
ResourceType rt = null;
ResourceGroup rg = new ResourceGroup(nameAttrib);
@@ -150,14 +154,14 @@ public class ResourceGroupsDataSource extends RPCDataSource<ResourceGroup> {
ListGridRecord record = new ListGridRecord();
record.setAttribute("group", from);
record.setAttribute("id", from.getId());
- record.setAttribute("name", from.getName());
- record.setAttribute("description", from.getDescription());
- record.setAttribute("category", from.getGroupCategory().name());
+ record.setAttribute(NAME.propertyName(), from.getName());
+ record.setAttribute(DESCRIPTION.propertyName(), from.getDescription());
+ record.setAttribute(CATEGORY.propertyName(), from.getGroupCategory().name());
if (from.getResourceType() != null) {
record.setAttribute("resourceType", from.getResourceType());
- record.setAttribute("typeName", from.getResourceType().getName());
- record.setAttribute("pluginName", from.getResourceType().getPlugin());
+ record.setAttribute(TYPE.propertyName(), from.getResourceType().getName());
+ record.setAttribute(PLUGIN.propertyName(), from.getResourceType().getPlugin());
}
return record;
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceDatasource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceDatasource.java
index 7759f53..c2c2e0e 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceDatasource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceDatasource.java
@@ -99,12 +99,6 @@ public class ResourceDatasource extends RPCDataSource<Resource> {
return fields;
}
- @Override
- public void useDatasourceDefinedFields() {
- // TODO Auto-generated method stub
-
- }
-
public void executeFetch(final DSRequest request, final DSResponse response) {
ResourceCriteria criteria = getFetchCriteria(request);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java
index 9546d66..9d8c94d 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java
@@ -18,6 +18,12 @@
*/
package org.rhq.enterprise.gui.coregui.client.menu;
+import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.CATEGORY;
+import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.DESCRIPTION;
+import static org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField.NAME;
+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 com.google.gwt.user.client.History;
import com.smartgwt.client.types.Alignment;
import com.smartgwt.client.types.TextMatchStyle;
@@ -34,7 +40,6 @@ import com.smartgwt.client.widgets.form.fields.events.ChangedHandler;
import com.smartgwt.client.widgets.grid.ListGridField;
import org.rhq.enterprise.gui.coregui.client.LinkManager;
-import org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupDataSourceField;
import org.rhq.enterprise.gui.coregui.client.inventory.groups.ResourceGroupsDataSource;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceDataSourceField;
import org.rhq.enterprise.gui.coregui.client.inventory.resource.ResourceDatasource;
@@ -137,16 +142,16 @@ public class SearchBarPane extends LocatableHLayout {
private ComboBoxItem getGroupComboBox() {
final ComboBoxItem comboBox = getBaseComboBox(SearchType.GROUP);
- ListGridField nameField = ResourceGroupDataSourceField.NAME.getListGridField(250);
- ListGridField descriptionField = ResourceGroupDataSourceField.DESCRIPTION.getListGridField();
- ListGridField typeNameField = ResourceGroupDataSourceField.TYPE.getListGridField(130);
- ListGridField pluginNameField = ResourceGroupDataSourceField.PLUGIN.getListGridField(100);
- ListGridField categoryField = ResourceGroupDataSourceField.CATEGORY.getListGridField(105);
+ ListGridField nameField = NAME.getListGridField(250);
+ ListGridField descriptionField = DESCRIPTION.getListGridField();
+ ListGridField typeNameField = TYPE.getListGridField(130);
+ ListGridField pluginNameField = PLUGIN.getListGridField(100);
+ ListGridField categoryField = CATEGORY.getListGridField(105);
comboBox.setPickListFields(nameField, descriptionField, typeNameField, pluginNameField, categoryField);
comboBox.setValueField("id");
- comboBox.setDisplayField(ResourceGroupDataSourceField.NAME.propertyName());
+ comboBox.setDisplayField(NAME.propertyName());
comboBox.setOptionDataSource(new ResourceGroupsDataSource());
return comboBox;
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java
index ce0ce25..d61a308 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java
@@ -73,14 +73,6 @@ public abstract class RPCDataSource<T> extends DataSource {
}
/**
- * Override in each subclass to set the default ds fields for the ds. The datasource should not
- * define and set ds fields in the constructor in case a user of the ds wants to set their own. For example,
- * those that want to use list grid fields (like our list views).
- */
- public void useDatasourceDefinedFields() {
- }
-
- /**
* A pattern that can be used for Datasource subclassing. Each subclass can add it's own fields prior to
* all of the fields being added to the datasource.
*/
@@ -130,8 +122,8 @@ public abstract class RPCDataSource<T> extends DataSource {
if (request.getStartRow() == null || request.getEndRow() == null) {
pageControl = new PageControl();
} else {
- pageControl = PageControl.getExplicitPageControl(request.getStartRow(),
- request.getEndRow() - request.getStartRow());
+ pageControl = PageControl.getExplicitPageControl(request.getStartRow(), request.getEndRow()
+ - request.getStartRow());
}
// Initialize sorting.
13 years, 7 months
[rhq] Branch 'delete-agent-plugin' - modules/core
by John Sanda
modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml | 20 ++++++----
1 file changed, 12 insertions(+), 8 deletions(-)
New commits:
commit 88834c67a48cd13785dd5f6867a629f75ed37ffb
Author: John Sanda <jsanda(a)redhat.com>
Date: Thu Oct 21 14:22:57 2010 -0400
Reversing order of tables listed to avoid fk constraint violations
DbUnit cleans table in the opposite order in which they are listed.
diff --git a/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml b/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml
index 421bcab..babd708 100644
--- a/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml
+++ b/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml
@@ -1,12 +1,4 @@
<dataset>
- <rhq_package_type/>
- <rhq_measurement_def/>
- <rhq_event_def/>
- <rhq_operation_def/>
- <rhq_process_scan/>
- <rhq_config_def/>
- <rhq_resource/>
-
<rhq_resource_type id="-1"
name="TestServer1"
category="SERVER"
@@ -77,4 +69,16 @@
parent_resource_type_id="-4"/>
<rhq_resource_type_parents resource_type_id="-7"
parent_resource_type_id="-4"/>
+
+ <rhq_package_type/>
+ <rhq_measurement_def/>
+ <rhq_event_def/>
+ <rhq_operation_def/>
+ <rhq_process_scan/>
+ <rhq_config_def/>
+ <rhq_config_prop_def/>
+ <rhq_conf_prop_def_enum/>
+ <rhq_config_prop_constr/>
+ <rhq_config_template/>
+ <rhq_resource/>
</dataset>
\ No newline at end of file
13 years, 7 months
[rhq] Branch 'delete-agent-plugin' - modules/core
by John Sanda
modules/core/domain/src/test/java/org/rhq/core/domain/bundle/test/BundleTest.java | 10 ++--
modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ResourceConfigurationUpdateIntegrationTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/configuration/test/ConfigurationCompareTest.java | 3 -
modules/core/domain/src/test/java/org/rhq/core/domain/configuration/test/ConfigurationTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/content/test/ContentSourceSyncResultsTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/content/test/ContentSourceTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/content/test/PackageVersionContentSourceTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/content/test/RepoGroupTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/content/test/RepoTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java | 24 +++++++---
modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/AgentTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/PluginTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/ResourceErrorTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/ServerPluginTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/search/SavedSearchTest.java | 2
modules/core/domain/src/test/java/org/rhq/core/domain/test/AbstractEJB3Test.java | 9 ++-
modules/core/domain/src/test/java/org/rhq/core/domain/test/QueriesTest.java | 2
modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml | 8 +++
18 files changed, 51 insertions(+), 29 deletions(-)
New commits:
commit 6662223ab8bd315017808248a2a22047ac913cc8
Author: John Sanda <jsanda(a)redhat.com>
Date: Thu Oct 21 12:05:07 2010 -0400
Changing order of tests execution to work around an OOM error
When running all tests in core/domain locally with the new unitils-based
test, I started seeing OutOfMemoryErrors with a message about the GC
running too much. I did not however, see this on hudson. I came to the
general conclusion that the problem stemmed from loading entities both
in the embedded ejb container and both in unitils which is done in
stand-alone hibernate as far as I know. I have updated the test suite so
that the unitils tests run after all of the tests that depend on the
embedded container, allowing the embedded container to shutdown.
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/bundle/test/BundleTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/bundle/test/BundleTest.java
index 8bdb830..e0aa981 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/bundle/test/BundleTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/bundle/test/BundleTest.java
@@ -47,7 +47,7 @@ public class BundleTest extends AbstractEJB3Test {
private static final boolean ENABLED = true;
- @Test(enabled = ENABLED)
+ @Test(enabled = ENABLED, groups = "integration.ejb3")
public void testBundleVersionRepo() throws Throwable {
getTransactionManager().begin();
EntityManager em = getEntityManager();
@@ -124,7 +124,7 @@ public class BundleTest extends AbstractEJB3Test {
}
}
- @Test(enabled = ENABLED)
+ @Test(enabled = ENABLED, groups = "integration.ejb3")
public void testBundleVersion() throws Throwable {
getTransactionManager().begin();
EntityManager em = getEntityManager();
@@ -204,7 +204,7 @@ public class BundleTest extends AbstractEJB3Test {
}
}
- @Test(enabled = ENABLED)
+ @Test(enabled = ENABLED, groups = "integration.ejb3")
public void testMultipleBundleVersions() throws Throwable {
getTransactionManager().begin();
EntityManager em = getEntityManager();
@@ -321,7 +321,7 @@ public class BundleTest extends AbstractEJB3Test {
}
}
- @Test(enabled = ENABLED)
+ @Test(enabled = ENABLED, groups = "integration.ejb3")
public void testBundle() throws Throwable {
getTransactionManager().begin();
EntityManager em = getEntityManager();
@@ -393,7 +393,7 @@ public class BundleTest extends AbstractEJB3Test {
}
}
- @Test(enabled = ENABLED)
+ @Test(enabled = ENABLED, groups = "integration.ejb3")
public void testBundleType() throws Throwable {
getTransactionManager().begin();
EntityManager em = getEntityManager();
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ResourceConfigurationUpdateIntegrationTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ResourceConfigurationUpdateIntegrationTest.java
index c205f03..f71becf 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ResourceConfigurationUpdateIntegrationTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ResourceConfigurationUpdateIntegrationTest.java
@@ -33,7 +33,7 @@ import javax.persistence.EntityManager;
public class ResourceConfigurationUpdateIntegrationTest extends AbstractEJB3Test {
- @Test
+ @Test(groups = "integration.ejb3")
public void testUpdate() throws Exception {
try {
getTransactionManager().begin();
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/test/ConfigurationCompareTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/test/ConfigurationCompareTest.java
index d71016b..7a8f7b9 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/test/ConfigurationCompareTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/test/ConfigurationCompareTest.java
@@ -38,7 +38,7 @@ import org.rhq.core.domain.test.AbstractEJB3Test;
*
* @author John Mazzitelli
*/
-@Test
+@Test(groups = "integration.ejb3")
public class ConfigurationCompareTest extends AbstractEJB3Test {
public void testNullCompare() {
Configuration c1 = new Configuration();
@@ -198,6 +198,7 @@ public class ConfigurationCompareTest extends AbstractEJB3Test {
}
}
+ @Test(groups = "integration.ejb3")
public void testSimpleCompare() {
Configuration c1 = new Configuration();
Configuration c2 = new Configuration();
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/test/ConfigurationTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/test/ConfigurationTest.java
index c581ff8..604964a 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/test/ConfigurationTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/test/ConfigurationTest.java
@@ -118,7 +118,7 @@ public class ConfigurationTest extends AbstractEJB3Test {
}
}
- @Test
+ @Test(groups = "integration.ejb3")
public void testConfigurationSerialization() throws Exception {
Configuration c = new Configuration();
c.setId(1);
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/ContentSourceSyncResultsTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/ContentSourceSyncResultsTest.java
index deb5fc3..60ed85f 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/ContentSourceSyncResultsTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/ContentSourceSyncResultsTest.java
@@ -42,7 +42,7 @@ import org.rhq.core.domain.resource.ResourceCategory;
import org.rhq.core.domain.resource.ResourceType;
import org.rhq.core.domain.test.AbstractEJB3Test;
-@Test
+@Test(groups = "integration.ejb3")
public class ContentSourceSyncResultsTest extends AbstractEJB3Test {
public void testInsert() throws Exception {
getTransactionManager().begin();
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/ContentSourceTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/ContentSourceTest.java
index 3f89351..1ace3ee 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/ContentSourceTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/ContentSourceTest.java
@@ -41,7 +41,7 @@ import org.rhq.core.domain.resource.ResourceCategory;
import org.rhq.core.domain.resource.ResourceType;
import org.rhq.core.domain.test.AbstractEJB3Test;
-@Test
+@Test(groups = "integration.ejb3")
public class ContentSourceTest extends AbstractEJB3Test {
public void testInsert() throws Exception {
getTransactionManager().begin();
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/PackageVersionContentSourceTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/PackageVersionContentSourceTest.java
index 0903628..b3829e5 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/PackageVersionContentSourceTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/PackageVersionContentSourceTest.java
@@ -57,7 +57,7 @@ import org.rhq.core.domain.test.AbstractEJB3Test;
*
* @author John Mazzitelli
*/
-@Test
+@Test(groups = "integration.ejb3")
public class PackageVersionContentSourceTest extends AbstractEJB3Test {
public void testInsert() throws Exception {
getTransactionManager().begin();
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/RepoGroupTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/RepoGroupTest.java
index 58ad823..3f54d76 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/RepoGroupTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/RepoGroupTest.java
@@ -41,7 +41,7 @@ import org.rhq.core.domain.resource.ResourceCategory;
import org.rhq.core.domain.resource.ResourceType;
import org.rhq.core.domain.test.AbstractEJB3Test;
-@Test
+@Test(groups = "integration.ejb3")
public class RepoGroupTest extends AbstractEJB3Test {
public void testInsert() throws Exception {
getTransactionManager().begin();
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/RepoTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/RepoTest.java
index 7b5a402..2c4dc89 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/RepoTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/content/test/RepoTest.java
@@ -29,7 +29,7 @@ import org.testng.annotations.Test;
import org.rhq.core.domain.content.Repo;
import org.rhq.core.domain.test.AbstractEJB3Test;
-@Test
+@Test(groups = "integration.ejb3")
public class RepoTest extends AbstractEJB3Test {
public void testInsert() throws Exception {
getTransactionManager().begin();
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java
index d165a06..8a1288e 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java
@@ -5,22 +5,32 @@ import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
+import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import org.unitils.UnitilsTestNG;
import org.unitils.dbunit.annotation.DataSet;
import org.unitils.orm.jpa.annotation.JpaEntityManagerFactory;
-import static org.rhq.core.domain.resource.ResourceType.*;
-import static org.testng.Assert.*;
+import static org.rhq.core.domain.resource.ResourceType.QUERY_FIND_ALL;
+import static org.rhq.core.domain.resource.ResourceType.QUERY_FIND_BY_NAME_AND_PLUGIN;
+import static org.rhq.core.domain.resource.ResourceType.QUERY_FIND_BY_PLUGIN;
+import static org.rhq.core.domain.resource.ResourceType.QUERY_FIND_CHILDREN;
+import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertTrue;
+import static org.testng.Assert.fail;
@JpaEntityManagerFactory(persistenceUnit = "rhq-test", configFile = "META-INF/test-persistence.xml")
@DataSet
public class ResourceTypeTest extends UnitilsTestNG {
+ @BeforeClass(groups = "unitils", dependsOnGroups = "integration.ejb3")
+ public void init() {
+ }
+
@PersistenceContext
EntityManager entityMgr;
- @Test
+ @Test(groups = "unitils", dependsOnGroups = "integration.ejb3")
@SuppressWarnings("unchecked")
public void findByPlugin() {
List<ResourceType> results = entityMgr.createNamedQuery(QUERY_FIND_BY_PLUGIN)
@@ -31,7 +41,7 @@ public class ResourceTypeTest extends UnitilsTestNG {
assertEquals(results.get(0).getId(), -1, "The wrong resource type was returned");
}
- @Test
+ @Test(groups = "unitils", dependsOnGroups = "integration.ejb3")
@SuppressWarnings("unchecked")
public void findByNameAndPlugin() {
ResourceType type = (ResourceType) entityMgr.createNamedQuery(QUERY_FIND_BY_NAME_AND_PLUGIN)
@@ -42,7 +52,7 @@ public class ResourceTypeTest extends UnitilsTestNG {
assertEquals(type.getId(), -1, "Failed to find resource type by name and by plugin");
}
- @Test
+ @Test(groups = "unitils", dependsOnGroups = "integration.ejb3")
public void findByNameAndPluginShouldNotReturnDeletedType() {
List results = entityMgr.createNamedQuery(QUERY_FIND_BY_NAME_AND_PLUGIN)
.setParameter("name", "TestServer2")
@@ -52,7 +62,7 @@ public class ResourceTypeTest extends UnitilsTestNG {
assertEquals(results.size(), 0, "Deleted types should be ignored");
}
- @Test
+ @Test(groups = "unitils", dependsOnGroups = "integration.ejb3")
@SuppressWarnings("unchecked")
public void findAll() {
List<ResourceType> results = entityMgr.createNamedQuery(QUERY_FIND_ALL).getResultList();
@@ -61,7 +71,7 @@ public class ResourceTypeTest extends UnitilsTestNG {
assertDeletedTypesIgnored(results);
}
- @Test
+ @Test(groups = "unitils", dependsOnGroups = "integration.ejb3")
@SuppressWarnings("unchecked")
public void findChildren() {
List<ResourceType> results = entityMgr.createNamedQuery(QUERY_FIND_CHILDREN)
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/AgentTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/AgentTest.java
index 68efa6d..d3e9e9a 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/AgentTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/AgentTest.java
@@ -33,7 +33,7 @@ import org.rhq.core.domain.resource.Agent;
import org.rhq.core.domain.resource.composite.AgentLastAvailabilityReportComposite;
import org.rhq.core.domain.test.AbstractEJB3Test;
-@Test
+@Test(groups = "integration.ejb3")
public class AgentTest extends AbstractEJB3Test {
private long now = System.currentTimeMillis();
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/PluginTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/PluginTest.java
index c397780..8eb976d 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/PluginTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/PluginTest.java
@@ -46,7 +46,7 @@ import org.rhq.core.domain.test.AbstractEJB3Test;
import org.rhq.core.util.MessageDigestGenerator;
import org.rhq.core.util.stream.StreamUtil;
-@Test
+@Test(groups = "integration.ejb3")
public class PluginTest extends AbstractEJB3Test {
public void testUpdate() throws Throwable {
boolean done = false;
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/ResourceErrorTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/ResourceErrorTest.java
index 8fdc2f7..0b08d53 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/ResourceErrorTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/ResourceErrorTest.java
@@ -39,7 +39,7 @@ import org.rhq.core.domain.resource.ResourceErrorType;
import org.rhq.core.domain.resource.ResourceType;
import org.rhq.core.domain.test.AbstractEJB3Test;
-@Test
+@Test(groups = "integration.ejb3")
public class ResourceErrorTest extends AbstractEJB3Test {
private Resource newResource;
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/ServerPluginTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/ServerPluginTest.java
index 4ec9271..801db14 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/ServerPluginTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/ServerPluginTest.java
@@ -48,7 +48,7 @@ import org.rhq.core.domain.test.AbstractEJB3Test;
import org.rhq.core.util.MessageDigestGenerator;
import org.rhq.core.util.stream.StreamUtil;
-@Test
+@Test(groups = "integration.ejb3")
public class ServerPluginTest extends AbstractEJB3Test {
public void testUpdate() throws Throwable {
boolean done = false;
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/search/SavedSearchTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/search/SavedSearchTest.java
index d7dfc03..e631b83 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/search/SavedSearchTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/search/SavedSearchTest.java
@@ -33,7 +33,7 @@ import java.util.List;
public class SavedSearchTest extends AbstractEJB3Test {
- @Test
+ @Test(groups = "integration.ejb3")
public void testInsert() throws Exception {
getTransactionManager().begin();
EntityManager entityMgr = getEntityManager();
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/test/AbstractEJB3Test.java b/modules/core/domain/src/test/java/org/rhq/core/domain/test/AbstractEJB3Test.java
index ccf205f..57ec318 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/test/AbstractEJB3Test.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/test/AbstractEJB3Test.java
@@ -34,14 +34,17 @@ import javax.persistence.EntityManagerFactory;
import javax.transaction.TransactionManager;
import org.testng.AssertJUnit;
+import org.testng.annotations.AfterGroups;
import org.testng.annotations.AfterSuite;
+import org.testng.annotations.BeforeGroups;
import org.testng.annotations.BeforeSuite;
import org.jboss.ejb3.embedded.EJB3StandaloneBootstrap;
import org.jboss.ejb3.embedded.EJB3StandaloneDeployer;
public abstract class AbstractEJB3Test extends AssertJUnit {
- @BeforeSuite(groups = "integration.ejb3")
+// @BeforeSuite(groups = "integration.ejb3")
+ @BeforeGroups(groups = "integration.ejb3")
public static void startupEmbeddedJboss() {
System.out.println("Starting ejb3...");
String classesDir = System.getProperty("ejbjarDirectory", "target/classes");
@@ -81,8 +84,8 @@ public abstract class AbstractEJB3Test extends AssertJUnit {
}
}
- //@Configuration(groups = "integration.ejb3", afterSuite = true)
- @AfterSuite
+// @AfterSuite
+ @AfterGroups(groups = "integration.ejb3")
public static void shutdownEmbeddedJboss() {
EJB3StandaloneBootstrap.shutdown();
}
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/test/QueriesTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/test/QueriesTest.java
index a60fa33..634d684 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/test/QueriesTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/test/QueriesTest.java
@@ -54,7 +54,7 @@ import org.rhq.core.util.exception.ThrowableUtil;
* Use this to explicitly test any of our named queries with any set of parameters. Useful to make sure these run on
* both postgres and oracle, specifically those that try to do select distinct queries while retrieve LOB columns.
*/
-@Test
+@Test(groups = "integration.ejb3")
public class QueriesTest extends AbstractEJB3Test {
private Map<String, Map<String, Object>> queries; // here just so we dont have to pass it to the add()
diff --git a/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml b/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml
index 9383f3c..421bcab 100644
--- a/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml
+++ b/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml
@@ -1,4 +1,12 @@
<dataset>
+ <rhq_package_type/>
+ <rhq_measurement_def/>
+ <rhq_event_def/>
+ <rhq_operation_def/>
+ <rhq_process_scan/>
+ <rhq_config_def/>
+ <rhq_resource/>
+
<rhq_resource_type id="-1"
name="TestServer1"
category="SERVER"
13 years, 7 months
[rhq] Branch 'nagios' - 2 commits - modules/core modules/plugins
by Heiko W. Rupp
modules/core/plugin-container/src/main/java/org/rhq/core/pc/inventory/ChildResourceTypeDiscoveryRunner.java | 12 +++++-----
modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java | 8 ++++++
2 files changed, 14 insertions(+), 6 deletions(-)
New commits:
commit 570c4d4a1c70fd6043088a0280fd0d3840de5ab5
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Thu Oct 21 13:56:35 2010 +0200
Provide a better MeasurementDefinition
diff --git a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java
index e142eb7..475af32 100644
--- a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java
+++ b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java
@@ -27,6 +27,9 @@ import org.apache.commons.logging.LogFactory;
import org.rhq.core.domain.configuration.Configuration;
import org.rhq.core.domain.measurement.AvailabilityType;
+import org.rhq.core.domain.measurement.DataType;
+import org.rhq.core.domain.measurement.DisplayType;
+import org.rhq.core.domain.measurement.MeasurementCategory;
import org.rhq.core.domain.measurement.MeasurementDefinition;
import org.rhq.core.domain.measurement.MeasurementReport;
import org.rhq.core.domain.measurement.MeasurementScheduleRequest;
@@ -133,6 +136,11 @@ public class NagiosMonitorComponent implements ResourceComponent, MeasurementFac
//Create measurement definition for new created ResourceType
MeasurementDefinition measurementDef = new MeasurementDefinition(resourceType, resourceType.getName()
+ "Metric");
+ measurementDef.setDisplayName("Foo Metric");
+ measurementDef.setDefaultInterval(60*1000); // 1 min
+ measurementDef.setCategory(MeasurementCategory.PERFORMANCE);
+ measurementDef.setDataType(DataType.MEASUREMENT);
+ measurementDef.setDisplayType(DisplayType.SUMMARY); // Show graph by default
//Add new MeasurementDefinition to the resourceType
resourceType.addMetricDefinition(measurementDef);
commit d25e9a17efda038a7967537992b7e7cf6d21178d
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Thu Oct 21 13:03:04 2010 +0200
Disable duplicate check for now, as this currently prevents the type from being merged on the server side.
TODO investigate the changes that led to this situation
diff --git a/modules/core/plugin-container/src/main/java/org/rhq/core/pc/inventory/ChildResourceTypeDiscoveryRunner.java b/modules/core/plugin-container/src/main/java/org/rhq/core/pc/inventory/ChildResourceTypeDiscoveryRunner.java
index 8e0347e..42e875c 100644
--- a/modules/core/plugin-container/src/main/java/org/rhq/core/pc/inventory/ChildResourceTypeDiscoveryRunner.java
+++ b/modules/core/plugin-container/src/main/java/org/rhq/core/pc/inventory/ChildResourceTypeDiscoveryRunner.java
@@ -169,13 +169,13 @@ public class ChildResourceTypeDiscoveryRunner implements Callable<Set<ResourceTy
}
//Check if type does not already exist, only add ResourceType to set if so
- if (!childAllreadyExists) {
- if (log.isDebugEnabled()) {
- log.info("new ChildResourceType " + newTypetoAdd.getName()
- + " added to Set<ResourceTypes>");
- }
+// if (!childAllreadyExists) {
+// if (log.isDebugEnabled()) {
+// log.info("new ChildResourceType " + newTypetoAdd.getName()
+// + " added to Set<ResourceTypes>");
+// }
newTypesToAdd.add(newTypetoAdd);
- }
+// }
}
//Create a new ResourceType in the DB for the selected type
13 years, 7 months
[rhq] Branch 'nagios' - 4 commits - modules/plugins
by Heiko W. Rupp
modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeComponent.java | 35 +++-------
modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeDiscovery.java | 25 ++++++-
modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java | 34 +++++++++
modules/plugins/nagios/src/main/resources/META-INF/rhq-plugin.xml | 12 +--
4 files changed, 72 insertions(+), 34 deletions(-)
New commits:
commit b07051273c16264d7a2e3a431be8b625fee30a0f
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Thu Oct 21 11:55:25 2010 +0200
Add handling of our dynamic type for discovery and metrics.
diff --git a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeComponent.java b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeComponent.java
index 2743113..c683555 100755
--- a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeComponent.java
+++ b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeComponent.java
@@ -91,6 +91,14 @@ public class NagiosMonitorChildTypeComponent implements ResourceComponent, Measu
log.debug("RegEx: " + pattern);
}
+ // Handle our special discovered case
+ if (req.getName().equals(NagiosMonitorComponent.DYNAMIC_TYPE+"Metric")) {
+ MeasurementDataNumeric res = new MeasurementDataNumeric(req,Math.random()*100.0);
+ report.addData(res);
+ continue;
+ }
+
+
// Get "raw" data from nagios data structures - we need to pick our value below
String value = nagiosSystemData.getSingleHostServiceMetric(property, serviceName, "localhost")
.getValue(); // TODO use 'real' host
diff --git a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeDiscovery.java b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeDiscovery.java
index 32cb9fc..73c0c77 100755
--- a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeDiscovery.java
+++ b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeDiscovery.java
@@ -89,6 +89,20 @@ public class NagiosMonitorChildTypeDiscovery implements ResourceDiscoveryCompone
log.info("Discovered a nagios service: " + detail);
}
+ // Now handle the special case of our dynamically discovered type
+ if (wanted.getName().equals(NagiosMonitorComponent.DYNAMIC_TYPE)) {
+ DiscoveredResourceDetails detail = new DiscoveredResourceDetails(
+ wanted,
+ "nagiosKey@" + "Nr: foo", // resource key
+ "nagiosKey@" + "Nr: foo", // resource name
+ null, // version
+ "Automatically discovered type ", // description
+ null, null);
+ log.info("Discovered a nagios service: " + detail);
+ discoveredResources.add(detail);
+
+ }
+
return discoveredResources;
}
diff --git a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java
index 0356a6c..e142eb7 100644
--- a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java
+++ b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java
@@ -48,6 +48,7 @@ import org.rhq.plugins.nagios.managementInterface.NagiosManagementInterface;
* @author Alexander Kiefer
*/
public class NagiosMonitorComponent implements ResourceComponent, MeasurementFacet, ChildResourceTypeDiscoveryFacet {
+ static final String DYNAMIC_TYPE = "FooBar";
private final Log log = LogFactory.getLog(this.getClass());
public static final String DEFAULT_NAGIOSIP = "127.0.0.1";
@@ -126,7 +127,7 @@ public class NagiosMonitorComponent implements ResourceComponent, MeasurementFac
log.info("<nagiosMonitorComponent>discoverChildResourceTypes called");
ResourceType parentType = this.context.getResourceType();
- ResourceType resourceType = new ResourceType("FooBar", parentType.getPlugin(), ResourceCategory.SERVICE,
+ ResourceType resourceType = new ResourceType(DYNAMIC_TYPE, parentType.getPlugin(), ResourceCategory.SERVICE,
parentType);
//Create measurement definition for new created ResourceType
commit 0e22b707354a39a4445d27ce210655f30cf2c113
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Thu Oct 21 11:15:43 2010 +0200
Wire child discovery with the child discovery class and fix a NPE in it.
diff --git a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeDiscovery.java b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeDiscovery.java
index 84ec7e3..32cb9fc 100755
--- a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeDiscovery.java
+++ b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeDiscovery.java
@@ -38,7 +38,7 @@ import org.rhq.plugins.nagios.reply.LqlReply;
import org.rhq.plugins.nagios.request.LqlResourceTypeRequest;
/**
- *
+ *
* @author Alexander Kiefer
*
*/
@@ -52,6 +52,8 @@ public class NagiosMonitorChildTypeDiscovery implements ResourceDiscoveryCompone
public Set<DiscoveredResourceDetails> discoverResources(ResourceDiscoveryContext discoveryContext) throws Exception {
Set<DiscoveredResourceDetails> discoveredResources = new HashSet<DiscoveredResourceDetails>();
+ log.info("Discovering for type " + discoveryContext.getResourceType());
+
ResourceComponent tmpComponent = discoveryContext.getParentResourceComponent();
NagiosMonitorComponent parentComponent = (NagiosMonitorComponent) tmpComponent;
@@ -61,6 +63,11 @@ public class NagiosMonitorChildTypeDiscovery implements ResourceDiscoveryCompone
//Method requests available nagios services an returns the names of them
LqlReply resourceTypeReply = getResourceTypeInformation(nagiosHost, nagiosPort);
+ if (resourceTypeReply==null) {
+ log.warn("Null response from Nagios server at [" + nagiosHost + ":" + nagiosPort +"]");
+ return discoveredResources;
+ }
+
// the resource type we are interested in this invocation
ResourceType wanted = discoveryContext.getResourceType();
//for each available service
@@ -97,7 +104,7 @@ public class NagiosMonitorChildTypeDiscovery implements ResourceDiscoveryCompone
NetworkConnection connection = new NetworkConnection(nagiosIp, nagiosPort);
resourceTypeReply = connection.sendAndReceive(resourceTypeRequest);
- return null;
+ return resourceTypeReply;
}
@Override
diff --git a/modules/plugins/nagios/src/main/resources/META-INF/rhq-plugin.xml b/modules/plugins/nagios/src/main/resources/META-INF/rhq-plugin.xml
index 800bf8c..2f6d40d 100644
--- a/modules/plugins/nagios/src/main/resources/META-INF/rhq-plugin.xml
+++ b/modules/plugins/nagios/src/main/resources/META-INF/rhq-plugin.xml
@@ -28,26 +28,26 @@
description="Port on which mk_livestatus is listening"/>
</plugin-configuration>
- <service name="Root Partition" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="root partition service">
+ <service name="Root Partition" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorChildTypeDiscovery" description="root partition service">
<metric property="free_space|plugin_output|.*/ ([\d]+).*" displayName="Free space" measurementType="dynamic" units="megabytes" displayType="summary"/>
<metric property="free_inodes|plugin_output|.*inode=([\d]+)%.*" displayName="Free inodes percent" measurementType="dynamic" units="none" displayType="summary"/>
</service>
- <service name="Current Load" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="current load service">
+ <service name="Current Load" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorChildTypeDiscovery" description="current load service">
<metric property="load_average01|plugin_output|.*: ([\d]+\.[\d]+),.*" displayName="LoadAverage 1 min" measurementType="dynamic" units="none" displayType="summary"/>
<metric property="load_average05|plugin_output|.*: [\d]+\.[\d]+, ([\d]+\.[\d]+), .*" displayName="LoadAverage 5 min" measurementType="dynamic" units="none" displayType="summary"/>
<metric property="load_average15|plugin_output|.*: [\d]+\.[\d]+, [\d]+\.[\d]+, ([\d]+\.[\d]+).*" displayName="LoadAverage 15 min" measurementType="dynamic" units="none" displayType="summary"/>
</service>
- <service name="Current Users" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="current users service">
+ <service name="Current Users" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorChildTypeDiscovery" description="current users service">
<metric property="current_users|plugin_output|.*- ([\d]+).*" displayName="User count" measurementType="dynamic" units="none" displayType="summary"/>
</service>
- <service name="Total Processes" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="total processes service">
+ <service name="Total Processes" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorChildTypeDiscovery" description="total processes service">
<metric property="total_processes|plugin_output|.*: ([\d]+).*" displayName="Process count" measurementType="dynamic" units="none" displayType="summary"/>
</service>
- <service name="Swap Usage" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="swap space service">
+ <service name="Swap Usage" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorChildTypeDiscovery" description="swap space service">
<metric property="free_swap|plugin_output|.* \(([\d]+) .*" displayName="Free swap" measurementType="dynamic" units="megabytes" displayType="summary"/>
<metric property="free_swap_perc|plugin_output|.* - ([\d]+)%.*" displayName="Free swap percent" measurementType="dynamic" units="none" displayType="summary"/>
</service>
- <service name="SSH" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="SSHD">
+ <service name="SSH" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorChildTypeDiscovery" description="SSHD">
<metric property="ssh_version|plugin_output|.* - (.*)" displayName="SSH Version" dataType="trait" displayType="summary"/>
</service>
</server>
commit 1aee2c4206096ea4268f3584fd753a6072ee811d
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Thu Oct 21 10:59:16 2010 +0200
Child type discovery needs to be at parent level.
diff --git a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeComponent.java b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeComponent.java
index 6ff21a2..2743113 100755
--- a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeComponent.java
+++ b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorChildTypeComponent.java
@@ -47,12 +47,12 @@ import org.rhq.plugins.nagios.error.NagiosException;
import org.rhq.plugins.nagios.managementInterface.NagiosManagementInterface;
/**
- *
+ *
* @author Alexander Kiefer
*
*/
-public class NagiosMonitorChildTypeComponent implements ResourceComponent, MeasurementFacet,
- ChildResourceTypeDiscoveryFacet {
+public class NagiosMonitorChildTypeComponent implements ResourceComponent, MeasurementFacet
+ {
private final Log log = LogFactory.getLog(this.getClass());
@@ -120,27 +120,6 @@ public class NagiosMonitorChildTypeComponent implements ResourceComponent, Measu
}
- @Override
- public Set<ResourceType> discoverChildResourceTypes() {
-
- log.info("<nagiosMonitorComponent>discoverChildResourceTypes called");
-
- ResourceType parentType = this.context.getResourceType();
- ResourceType resourceType = new ResourceType("FooBar", parentType.getPlugin(), ResourceCategory.SERVICE,
- parentType);
-
- //Create measurement definition for new created ResourceType
- MeasurementDefinition measurementDef = new MeasurementDefinition(resourceType, resourceType.getName()
- + "Metric");
-
- //Add new MeasurementDefinition to the resourceType
- resourceType.addMetricDefinition(measurementDef);
-
- Set<ResourceType> resourceTypes = new HashSet<ResourceType>();
- resourceTypes.add(resourceType);
-
- return resourceTypes;
- }
public void start(ResourceContext context) throws InvalidPluginConfigurationException, Exception {
//get context of this component instance
diff --git a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java
index 3fa121e..0356a6c 100644
--- a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java
+++ b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/rhqNagiosPlugin/NagiosMonitorComponent.java
@@ -19,6 +19,7 @@ package org.rhq.plugins.nagios.rhqNagiosPlugin;
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
+import java.util.HashSet;
import java.util.Set;
import org.apache.commons.logging.Log;
@@ -26,8 +27,12 @@ import org.apache.commons.logging.LogFactory;
import org.rhq.core.domain.configuration.Configuration;
import org.rhq.core.domain.measurement.AvailabilityType;
+import org.rhq.core.domain.measurement.MeasurementDefinition;
import org.rhq.core.domain.measurement.MeasurementReport;
import org.rhq.core.domain.measurement.MeasurementScheduleRequest;
+import org.rhq.core.domain.resource.ResourceCategory;
+import org.rhq.core.domain.resource.ResourceType;
+import org.rhq.core.pluginapi.inventory.ChildResourceTypeDiscoveryFacet;
import org.rhq.core.pluginapi.inventory.InvalidPluginConfigurationException;
import org.rhq.core.pluginapi.inventory.ResourceComponent;
import org.rhq.core.pluginapi.inventory.ResourceContext;
@@ -42,7 +47,7 @@ import org.rhq.plugins.nagios.managementInterface.NagiosManagementInterface;
*
* @author Alexander Kiefer
*/
-public class NagiosMonitorComponent implements ResourceComponent, MeasurementFacet {
+public class NagiosMonitorComponent implements ResourceComponent, MeasurementFacet, ChildResourceTypeDiscoveryFacet {
private final Log log = LogFactory.getLog(this.getClass());
public static final String DEFAULT_NAGIOSIP = "127.0.0.1";
@@ -108,12 +113,36 @@ public class NagiosMonitorComponent implements ResourceComponent, MeasurementFac
/**
* Gather measurement data
* No measurement data for the nagios parent server type needed
- * everything is done by the NagiosMonitorChildTypeDiscovery/Component classes
+ * everything is done by the NagiosMonitorChildTypeDiscovery/Component classes
* @see org.rhq.core.pluginapi.measurement.MeasurementFacet#getValues(org.rhq.core.domain.measurement.MeasurementReport, java.util.Set)
*/
public void getValues(MeasurementReport report, Set<MeasurementScheduleRequest> metrics) {
}
+
+ @Override
+ public Set<ResourceType> discoverChildResourceTypes() {
+
+ log.info("<nagiosMonitorComponent>discoverChildResourceTypes called");
+
+ ResourceType parentType = this.context.getResourceType();
+ ResourceType resourceType = new ResourceType("FooBar", parentType.getPlugin(), ResourceCategory.SERVICE,
+ parentType);
+
+ //Create measurement definition for new created ResourceType
+ MeasurementDefinition measurementDef = new MeasurementDefinition(resourceType, resourceType.getName()
+ + "Metric");
+
+ //Add new MeasurementDefinition to the resourceType
+ resourceType.addMetricDefinition(measurementDef);
+
+ Set<ResourceType> resourceTypes = new HashSet<ResourceType>();
+ resourceTypes.add(resourceType);
+
+ return resourceTypes;
+ }
+
+
public String getNagiosHost() {
return nagiosHost;
}
commit e010ad882a46024d3a81b10c1ca81b96ddf3ef4e
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Thu Oct 21 10:25:14 2010 +0200
Use the child type component for children of nagios server type.
diff --git a/modules/plugins/nagios/src/main/resources/META-INF/rhq-plugin.xml b/modules/plugins/nagios/src/main/resources/META-INF/rhq-plugin.xml
index 932645b..800bf8c 100644
--- a/modules/plugins/nagios/src/main/resources/META-INF/rhq-plugin.xml
+++ b/modules/plugins/nagios/src/main/resources/META-INF/rhq-plugin.xml
@@ -28,26 +28,26 @@
description="Port on which mk_livestatus is listening"/>
</plugin-configuration>
- <service name="Root Partition" class="NagiosMonitorComponent" discovery="NagiosMonitorDiscovery" description="root partition service">
+ <service name="Root Partition" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="root partition service">
<metric property="free_space|plugin_output|.*/ ([\d]+).*" displayName="Free space" measurementType="dynamic" units="megabytes" displayType="summary"/>
<metric property="free_inodes|plugin_output|.*inode=([\d]+)%.*" displayName="Free inodes percent" measurementType="dynamic" units="none" displayType="summary"/>
</service>
- <service name="Current Load" class="NagiosMonitorComponent" discovery="NagiosMonitorDiscovery" description="current load service">
+ <service name="Current Load" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="current load service">
<metric property="load_average01|plugin_output|.*: ([\d]+\.[\d]+),.*" displayName="LoadAverage 1 min" measurementType="dynamic" units="none" displayType="summary"/>
<metric property="load_average05|plugin_output|.*: [\d]+\.[\d]+, ([\d]+\.[\d]+), .*" displayName="LoadAverage 5 min" measurementType="dynamic" units="none" displayType="summary"/>
<metric property="load_average15|plugin_output|.*: [\d]+\.[\d]+, [\d]+\.[\d]+, ([\d]+\.[\d]+).*" displayName="LoadAverage 15 min" measurementType="dynamic" units="none" displayType="summary"/>
</service>
- <service name="Current Users" class="NagiosMonitorComponent" discovery="NagiosMonitorDiscovery" description="current users service">
+ <service name="Current Users" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="current users service">
<metric property="current_users|plugin_output|.*- ([\d]+).*" displayName="User count" measurementType="dynamic" units="none" displayType="summary"/>
</service>
- <service name="Total Processes" class="NagiosMonitorComponent" discovery="NagiosMonitorDiscovery" description="total processes service">
+ <service name="Total Processes" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="total processes service">
<metric property="total_processes|plugin_output|.*: ([\d]+).*" displayName="Process count" measurementType="dynamic" units="none" displayType="summary"/>
</service>
- <service name="Swap Usage" class="NagiosMonitorComponent" discovery="NagiosMonitorDiscovery" description="swap space service">
+ <service name="Swap Usage" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="swap space service">
<metric property="free_swap|plugin_output|.* \(([\d]+) .*" displayName="Free swap" measurementType="dynamic" units="megabytes" displayType="summary"/>
<metric property="free_swap_perc|plugin_output|.* - ([\d]+)%.*" displayName="Free swap percent" measurementType="dynamic" units="none" displayType="summary"/>
</service>
- <service name="SSH" class="NagiosMonitorComponent" discovery="NagiosMonitorDiscovery" description="SSHD">
+ <service name="SSH" class="NagiosMonitorChildTypeComponent" discovery="NagiosMonitorDiscovery" description="SSHD">
<metric property="ssh_version|plugin_output|.* - (.*)" displayName="SSH Version" dataType="trait" displayType="summary"/>
</service>
</server>
13 years, 7 months
[rhq] Branch 'delete-agent-plugin' - modules/core
by John Sanda
modules/core/domain/src/main/java/org/rhq/core/domain/resource/ResourceType.java | 5
modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java | 30 +++++
modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml | 52 ++++++++++
3 files changed, 84 insertions(+), 3 deletions(-)
New commits:
commit 5fbc032760c132cfe2a23e0285574a89184ab91d
Author: John Sanda <jsanda(a)redhat.com>
Date: Wed Oct 20 21:19:55 2010 -0400
The find child query also needs to filter on the deleted flag for child types
diff --git a/modules/core/domain/src/main/java/org/rhq/core/domain/resource/ResourceType.java b/modules/core/domain/src/main/java/org/rhq/core/domain/resource/ResourceType.java
index 3dd9cd0..068d0c4 100644
--- a/modules/core/domain/src/main/java/org/rhq/core/domain/resource/ResourceType.java
+++ b/modules/core/domain/src/main/java/org/rhq/core/domain/resource/ResourceType.java
@@ -90,8 +90,9 @@ import org.rhq.core.domain.util.Summary;
"AND rt.deleted = false"),
/* authz'ed queries for ResourceTypeManagerBean */
- @NamedQuery(name = ResourceType.QUERY_FIND_CHILDREN, query = "SELECT rt.childResourceTypes "
- + "FROM ResourceType rt WHERE rt.id = :resourceTypeId AND rt.deleted = false"),
+ @NamedQuery(name = ResourceType.QUERY_FIND_CHILDREN, query = "SELECT c "
+ + "FROM ResourceType rt JOIN rt.childResourceTypes c WHERE rt.id = :resourceTypeId AND rt.deleted = false "
+ + "AND c.deleted = false"),
@NamedQuery(name = ResourceType.FIND_CHILDREN_BY_PARENT, query = "SELECT DISTINCT rt FROM ResourceType AS rt "
+ "JOIN FETCH rt.parentResourceTypes AS pa " + // also fetch parents, as we need them later
"WHERE rt.deleted = false and pa IN (:resourceType)"),
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java
index bb20925..d165a06 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java
@@ -49,7 +49,35 @@ public class ResourceTypeTest extends UnitilsTestNG {
.setParameter("plugin", "TestPlugin1")
.getResultList();
- assertEquals(results.size(), 0, "Deleted type should be ignored");
+ assertEquals(results.size(), 0, "Deleted types should be ignored");
+ }
+
+ @Test
+ @SuppressWarnings("unchecked")
+ public void findAll() {
+ List<ResourceType> results = entityMgr.createNamedQuery(QUERY_FIND_ALL).getResultList();
+
+ assertTrue(results.size() > 0, "Expected a non-empty result set");
+ assertDeletedTypesIgnored(results);
+ }
+
+ @Test
+ @SuppressWarnings("unchecked")
+ public void findChildren() {
+ List<ResourceType> results = entityMgr.createNamedQuery(QUERY_FIND_CHILDREN)
+ .setParameter("resourceTypeId", -4)
+ .getResultList();
+
+ assertEquals(results.size(), 2, "Expected to get two resource types for resource type with id -4");
+ assertDeletedTypesIgnored(results);
+ }
+
+ void assertDeletedTypesIgnored(List<ResourceType> types) {
+ for (ResourceType type : types) {
+ if (type.isDeleted()) {
+ fail("Deleted should be ignored.");
+ }
+ }
}
}
diff --git a/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml b/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml
index 15618c4..9383f3c 100644
--- a/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml
+++ b/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml
@@ -17,4 +17,56 @@
singleton="false"
plugin="TestPlugin1"
deleted="true"/>
+ <rhq_resource_type id="-3"
+ name="TestServer1"
+ category="SERVER"
+ creation_data_type="CONFIGURATION"
+ create_delete_policy="BOTH"
+ supports_manual_add="true"
+ singleton="false"
+ plugin="TestPlugin2"
+ deleted="true"/>
+ <rhq_resource_type id="-4"
+ name="ParentServer1"
+ category="SERVER"
+ creation_data_type="CONFIGURATION"
+ create_delete_policy="BOTH"
+ supports_manual_add="true"
+ singleton="false"
+ plugin="TestPlugin3"
+ deleted="false"/>
+ <rhq_resource_type id="-5"
+ name="ChildService1"
+ category="SERVICE"
+ creation_data_type="CONFIGURATION"
+ create_delete_policy="BOTH"
+ supports_manual_add="true"
+ singleton="false"
+ plugin="TestPlugin3"
+ deleted="false"/>
+ <rhq_resource_type id="-6"
+ name="ChildService2"
+ category="SERVICE"
+ creation_data_type="CONFIGURATION"
+ create_delete_policy="BOTH"
+ supports_manual_add="true"
+ singleton="false"
+ plugin="TestPlugin3"
+ deleted="false"/>
+ <rhq_resource_type id="-7"
+ name="ChildService3"
+ category="SERVICE"
+ creation_data_type="CONFIGURATION"
+ create_delete_policy="BOTH"
+ supports_manual_add="true"
+ singleton="false"
+ plugin="TestPlugin3"
+ deleted="true"/>
+
+ <rhq_resource_type_parents resource_type_id="-5"
+ parent_resource_type_id="-4"/>
+ <rhq_resource_type_parents resource_type_id="-6"
+ parent_resource_type_id="-4"/>
+ <rhq_resource_type_parents resource_type_id="-7"
+ parent_resource_type_id="-4"/>
</dataset>
\ No newline at end of file
13 years, 7 months
[rhq] Branch 'delete-agent-plugin' - modules/core modules/test-utils
by John Sanda
modules/core/domain/pom.xml | 6
modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java | 55 +++
modules/core/domain/src/test/resources/META-INF/test-persistence.xml | 144 ++++++++++
modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml | 20 +
modules/test-utils/pom.xml | 51 +++
modules/test-utils/src/main/resources/unitils.properties | 27 +
6 files changed, 303 insertions(+)
New commits:
commit ab9d3c77264a456c20d720d1dd6f6a45221ea715
Author: John Sanda <jsanda(a)redhat.com>
Date: Wed Oct 20 20:57:39 2010 -0400
Initial commit for ResourceTypeTest.java
Adding support for testing with unitils. The tests going into
ResourceTypeTest are right now specifically focused on testing the
queries that have been modified as a result of adding the deleted flag
to ResourceType.
diff --git a/modules/core/domain/pom.xml b/modules/core/domain/pom.xml
index d59169b..e00488c 100644
--- a/modules/core/domain/pom.xml
+++ b/modules/core/domain/pom.xml
@@ -110,6 +110,12 @@
-->
<!--================ Test Deps ================-->
+ <dependency>
+ <groupId>${groupId}</groupId>
+ <artifactId>test-utils</artifactId>
+ <version>${version}</version>
+ <scope>test</scope>
+ </dependency>
<dependency>
<groupId>javassist</groupId>
diff --git a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java
new file mode 100644
index 0000000..bb20925
--- /dev/null
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/ResourceTypeTest.java
@@ -0,0 +1,55 @@
+package org.rhq.core.domain.resource;
+
+import java.util.List;
+
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+
+import org.testng.annotations.Test;
+import org.unitils.UnitilsTestNG;
+import org.unitils.dbunit.annotation.DataSet;
+import org.unitils.orm.jpa.annotation.JpaEntityManagerFactory;
+
+import static org.rhq.core.domain.resource.ResourceType.*;
+import static org.testng.Assert.*;
+
+@JpaEntityManagerFactory(persistenceUnit = "rhq-test", configFile = "META-INF/test-persistence.xml")
+@DataSet
+public class ResourceTypeTest extends UnitilsTestNG {
+
+ @PersistenceContext
+ EntityManager entityMgr;
+
+ @Test
+ @SuppressWarnings("unchecked")
+ public void findByPlugin() {
+ List<ResourceType> results = entityMgr.createNamedQuery(QUERY_FIND_BY_PLUGIN)
+ .setParameter("plugin", "TestPlugin1")
+ .getResultList();
+
+ assertEquals(results.size(), 1, "Expected to get back 1 resource type");
+ assertEquals(results.get(0).getId(), -1, "The wrong resource type was returned");
+ }
+
+ @Test
+ @SuppressWarnings("unchecked")
+ public void findByNameAndPlugin() {
+ ResourceType type = (ResourceType) entityMgr.createNamedQuery(QUERY_FIND_BY_NAME_AND_PLUGIN)
+ .setParameter("name", "TestServer1")
+ .setParameter("plugin", "TestPlugin1")
+ .getSingleResult();
+
+ assertEquals(type.getId(), -1, "Failed to find resource type by name and by plugin");
+ }
+
+ @Test
+ public void findByNameAndPluginShouldNotReturnDeletedType() {
+ List results = entityMgr.createNamedQuery(QUERY_FIND_BY_NAME_AND_PLUGIN)
+ .setParameter("name", "TestServer2")
+ .setParameter("plugin", "TestPlugin1")
+ .getResultList();
+
+ assertEquals(results.size(), 0, "Deleted type should be ignored");
+ }
+
+}
diff --git a/modules/core/domain/src/test/resources/META-INF/test-persistence.xml b/modules/core/domain/src/test/resources/META-INF/test-persistence.xml
new file mode 100644
index 0000000..92dbe75
--- /dev/null
+++ b/modules/core/domain/src/test/resources/META-INF/test-persistence.xml
@@ -0,0 +1,144 @@
+<!--
+ ~ RHQ Management Platform
+ ~ Copyright (C) 2005-2008 Red Hat, Inc.
+ ~ All rights reserved.
+ ~
+ ~ This program is free software; you can redistribute it and/or modify
+ ~ it under the terms of the GNU General Public License as published by
+ ~ the Free Software Foundation version 2 of the License.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ ~ GNU General Public License for more details.
+ ~
+ ~ You should have received a copy of the GNU General Public License
+ ~ along with this program; if not, write to the Free Software
+ ~ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ -->
+
+<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">
+ <persistence-unit name="rhq-test" transaction-type="RESOURCE_LOCAL">
+ <!--<jar-file>target/classes</jar-file>-->
+ <provider>org.hibernate.ejb.HibernatePersistence</provider>
+ <class>org.rhq.core.domain.resource.ResourceType</class>
+ <class>org.rhq.core.domain.resource.Resource</class>
+ <class>org.rhq.core.domain.configuration.definition.ConfigurationDefinition</class>
+ <class>org.rhq.core.domain.resource.ResourceSubCategory</class>
+ <class>org.rhq.core.domain.resource.ProcessScan</class>
+ <class>org.rhq.core.domain.measurement.MeasurementDefinition</class>
+ <class>org.rhq.core.domain.event.EventDefinition</class>
+ <class>org.rhq.core.domain.configuration.Configuration</class>
+ <class>org.rhq.core.domain.resource.ProductVersion</class>
+ <class>org.rhq.core.domain.resource.Agent</class>
+ <class>org.rhq.core.domain.cloud.AffinityGroup</class>
+ <class>org.rhq.core.domain.cloud.Server</class>
+ <class>org.rhq.core.domain.operation.OperationDefinition</class>
+ <class>org.rhq.core.domain.content.PackageType</class>
+ <class>org.rhq.core.domain.resource.group.ResourceGroup</class>
+ <class>org.rhq.core.domain.auth.Subject</class>
+ <class>org.rhq.core.domain.resource.group.GroupDefinition</class>
+ <class>org.rhq.core.domain.authz.Role</class>
+ <class>org.rhq.core.domain.bundle.BundleType</class>
+ <class>org.rhq.core.domain.alert.AlertDefinition</class>
+ <class>org.rhq.core.domain.configuration.ResourceConfigurationUpdate</class>
+ <class>org.rhq.core.domain.configuration.group.GroupResourceConfigurationUpdate</class>
+ <class>org.rhq.core.domain.configuration.PluginConfigurationUpdate</class>
+ <class>org.rhq.core.domain.configuration.group.GroupPluginConfigurationUpdate</class>
+ <class>org.rhq.core.domain.content.ContentServiceRequest</class>
+ <class>org.rhq.core.domain.resource.CreateResourceHistory</class>
+ <class>org.rhq.core.domain.resource.DeleteResourceHistory</class>
+ <class>org.rhq.core.domain.content.InstalledPackage</class>
+ <class>org.rhq.core.domain.content.PackageVersion</class>
+ <class>org.rhq.core.domain.content.PackageBits</class>
+ <class>org.rhq.core.domain.content.Architecture</class>
+ <class>org.rhq.core.domain.content.Package</class>
+ <class>org.rhq.core.domain.operation.ResourceOperationHistory</class>
+ <class>org.rhq.core.domain.operation.GroupOperationHistory</class>
+ <class>org.rhq.core.domain.content.InstalledPackageHistory</class>
+ <class>org.rhq.core.domain.content.ResourceRepo</class>
+ <class>org.rhq.core.domain.content.Repo</class>
+ <class>org.rhq.core.domain.measurement.MeasurementSchedule</class>
+ <class>org.rhq.core.domain.measurement.Availability</class>
+ <class>org.rhq.core.domain.measurement.ResourceAvailability</class>
+ <class>org.rhq.core.domain.resource.ResourceError</class>
+ <class>org.rhq.core.domain.event.EventSource</class>
+ <class>org.rhq.core.domain.tagging.Tag</class>
+ <class>org.rhq.core.domain.bundle.BundleDestination</class>
+ <class>org.rhq.core.domain.bundle.Bundle</class>
+ <class>org.rhq.core.domain.bundle.BundleDeployment</class>
+ <class>org.rhq.core.domain.bundle.BundleVersion</class>
+ <class>org.rhq.core.domain.configuration.definition.PropertyDefinition</class>
+ <class>org.rhq.core.domain.configuration.definition.PropertyDefinitionMap</class>
+ <class>org.rhq.core.domain.configuration.definition.PropertyDefinitionList</class>
+ <class>org.rhq.core.domain.configuration.definition.PropertyDefinitionSimple</class>
+ <class>org.rhq.core.domain.configuration.Property</class>
+ <class>org.rhq.core.domain.configuration.PropertyMap</class>
+ <class>org.rhq.core.domain.configuration.PropertyList</class>
+ <class>org.rhq.core.domain.configuration.PropertySimple</class>
+ <class>org.rhq.core.domain.configuration.definition.PropertyGroupDefinition</class>
+ <class>org.rhq.core.domain.configuration.definition.ConfigurationTemplate</class>
+ <class>org.rhq.core.domain.alert.AlertCondition</class>
+ <class>org.rhq.core.domain.configuration.RawConfiguration</class>
+ <class>org.rhq.core.domain.content.ProductVersionPackageVersion</class>
+ <class>org.rhq.core.domain.resource.group.LdapGroup</class>
+ <class>org.rhq.core.domain.alert.AlertDampeningEvent</class>
+ <class>org.rhq.core.domain.alert.notification.AlertNotification</class>
+ <class>org.rhq.core.domain.alert.Alert</class>
+ <class>org.rhq.core.domain.content.RepoPackageVersion</class>
+ <class>org.rhq.core.domain.content.PackageInstallationStep</class>
+ <class>org.rhq.core.domain.content.RepoContentSource</class>
+ <class>org.rhq.core.domain.content.ContentSource</class>
+ <class>org.rhq.core.domain.content.ContentSourceType</class>
+ <class>org.rhq.core.domain.content.RepoRepoGroup</class>
+ <class>org.rhq.core.domain.content.RepoGroup</class>
+ <class>org.rhq.core.domain.content.RepoGroupType</class>
+ <class>org.rhq.core.domain.content.RepoRepoRelationship</class>
+ <class>org.rhq.core.domain.content.RepoRelationship</class>
+ <class>org.rhq.core.domain.content.RepoRelationshipType</class>
+ <class>org.rhq.core.domain.content.RepoSyncResults</class>
+ <class>org.rhq.core.domain.content.RepoDistribution</class>
+ <class>org.rhq.core.domain.content.Distribution</class>
+ <class>org.rhq.core.domain.content.DistributionType</class>
+ <class>org.rhq.core.domain.content.RepoAdvisory</class>
+ <class>org.rhq.core.domain.content.Advisory</class>
+ <class>org.rhq.core.domain.measurement.MeasurementBaseline</class>
+ <class>org.rhq.core.domain.event.Event</class>
+ <class>org.rhq.core.domain.bundle.BundleResourceDeployment</class>
+ <class>org.rhq.core.domain.bundle.BundleFile</class>
+ <class>org.rhq.core.domain.configuration.definition.constraint.Constraint</class>
+ <class>org.rhq.core.domain.configuration.definition.PropertyDefinitionEnumeration</class>
+ <class>org.rhq.core.domain.alert.AlertConditionLog</class>
+ <class>org.rhq.core.domain.alert.notification.AlertNotificationLog</class>
+ <class>org.rhq.core.domain.content.ContentSourceSyncResults</class>
+ <class>org.rhq.core.domain.content.DistributionFile</class>
+ <class>org.rhq.core.domain.content.AdvisoryPackage</class>
+ <class>org.rhq.core.domain.content.AdvisoryBuglist</class>
+ <class>org.rhq.core.domain.bundle.BundleResourceDeploymentHistory</class>
+ <class>org.rhq.core.domain.content.PackageBitsBlob</class>
+ <class>org.rhq.core.domain.content.PackageVersionContentSource</class>
+ <class>org.rhq.core.domain.measurement.MeasurementDataTrait</class>
+ <properties>
+ <property name="hibernate.connection.provider_class" value="org.hibernate.connection.DriverManagerConnectionProvider"/>
+ <!--
+ Setting the autodetection property is supposed to cause hibernate to scan
+ for entity classes alleviating the need to list out all of the classes as
+ was done above. The autoscan however has not been working.
+
+ jsanda 10/20/2010
+ -->
+ <property name="hibernate.archive.autodetection" value="class"/>
+ <property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/>
+ <property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/>
+ <property name="hibernate.connection.username" value="rhqadmin"/>
+ <property name="hibernate.connection.password" value="rhqadmin"/>
+ <property name="hibernate.connection.url" value="jdbc:postgresql://127.0.0.1:5432/rhq"/>
+ <property name="hibernate.jdbc.batch_size" value="30"/>
+ <property name="hibernate.cache.use_second_level_cache" value="false"/>
+ <property name="hibernate.show_sql" value="true" />
+ <property name="hibernate.format_sql" value="true" />
+ <property name="hibernate.use_sql_comments" value="true" />
+ <property name="hibernate.connection.autocommit" value="false"/>
+ </properties>
+ </persistence-unit>
+</persistence>
diff --git a/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml b/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml
new file mode 100644
index 0000000..15618c4
--- /dev/null
+++ b/modules/core/domain/src/test/resources/org/rhq/core/domain/resource/ResourceTypeTest.xml
@@ -0,0 +1,20 @@
+<dataset>
+ <rhq_resource_type id="-1"
+ name="TestServer1"
+ category="SERVER"
+ creation_data_type="CONFIGURATION"
+ create_delete_policy="BOTH"
+ supports_manual_add="true"
+ singleton="false"
+ plugin="TestPlugin1"
+ deleted="false"/>
+ <rhq_resource_type id="-2"
+ name="TestServer2"
+ category="SERVER"
+ creation_data_type="CONFIGURATION"
+ create_delete_policy="BOTH"
+ supports_manual_add="true"
+ singleton="false"
+ plugin="TestPlugin1"
+ deleted="true"/>
+</dataset>
\ No newline at end of file
diff --git a/modules/test-utils/pom.xml b/modules/test-utils/pom.xml
index d0b9c5c..258a5ae 100644
--- a/modules/test-utils/pom.xml
+++ b/modules/test-utils/pom.xml
@@ -32,5 +32,56 @@
<version>1.9.4.1</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.unitils</groupId>
+ <artifactId>unitils-dbunit</artifactId>
+ <version>3.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.unitils</groupId>
+ <artifactId>unitils-orm</artifactId>
+ <version>3.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.unitils</groupId>
+ <artifactId>unitils-dbmaintainer</artifactId>
+ <version>3.1</version>
+ <exclusions>
+ <!--
+ Unitils depends on hibernate 3.2.5 and we are using a
+ an earlier 3.2 build. The 3.2.5 version causes some
+ dependencies clashes around asm which gets pulled
+ in by cobertura. We are excluding hibernate here to
+ avoid the dependency clash and to force unitils into
+ using the version that we use else where.
+
+ jsanda 10/20/2010
+ -->
+ <exclusion>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.unitils</groupId>
+ <artifactId>unitils-easymock</artifactId>
+ <version>3.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.unitils</groupId>
+ <artifactId>unitils-testng</artifactId>
+ <version>3.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.unitils</groupId>
+ <artifactId>unitils-inject</artifactId>
+ <version>3.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.unitils</groupId>
+ <artifactId>unitils-mock</artifactId>
+ <version>3.1</version>
+ </dependency>
</dependencies>
</project>
diff --git a/modules/test-utils/src/main/resources/unitils.properties b/modules/test-utils/src/main/resources/unitils.properties
new file mode 100644
index 0000000..b73191e
--- /dev/null
+++ b/modules/test-utils/src/main/resources/unitils.properties
@@ -0,0 +1,27 @@
+# Defaults and other keys with explanations can be found there: http://unitils.org/unitils-default.properties
+unitils.module.database.enabled=true
+unitils.module.dbunit.enabled=true
+unitils.module.hibernate.enabled=false
+unitils.module.mock.enabled=false
+unitils.module.easymock.enabled=false
+unitils.module.inject.enabled=true
+unitils.module.spring.enabled=false
+unitils.module.jpa.enabled=true
+
+database.driverClassName=org.postgresql.Driver
+database.url=jdbc:postgresql://127.0.0.1:5432/rhq
+
+database.dialect=postgresql
+database.userName=rhqadmin
+database.password=rhqadmin
+database.schemaNames=public
+
+org.unitils.core.dbsupport.DbSupport.implClassName.postgresql=org.unitils.core.dbsupport.PostgreSqlDbSupport
+org.dbunit.dataset.datatype.IDataTypeFactory.implClassName.postgresql=org.dbunit.dataset.datatype.DefaultDataTypeFactory
+
+#DbUnitModule.DataSet.loadStrategy.default=org.unitils.dbunit.datasetloadstrategy.impl.RefreshLoadStrategy
+
+
+updateDataBaseSchema.enabled=false
+
+jpa.persistenceProvider=hibernate
13 years, 7 months
[rhq] modules/enterprise
by ips
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/ConfigurationEditor.java | 16 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/GroupConfigurationEditor.java | 133 +++++++---
2 files changed, 112 insertions(+), 37 deletions(-)
New commits:
commit d8d3923378207946060daf0a7158554a2e94696b
Author: Ian Springer <ian.springer(a)redhat.com>
Date: Wed Oct 20 19:48:29 2010 -0400
group config: add set-all-values-to controls at top of edit-member-values modal; fix a few other bugs in the group config editor
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/ConfigurationEditor.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/ConfigurationEditor.java
index 28d5960..163ff47 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/ConfigurationEditor.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/ConfigurationEditor.java
@@ -1283,11 +1283,13 @@ public class ConfigurationEditor extends LocatableVLayout {
valueItem = new PasswordItem();
break;
case BOOLEAN:
- valueItem = new RadioGroupItem();
- LinkedHashMap<String, String> valMap = new LinkedHashMap<String, String>();
- valMap.put("true", "Yes");
- valMap.put("false", "No");
- valueItem.setValueMap(valMap);
+ RadioGroupItem radioGroupItem = new RadioGroupItem();
+ radioGroupItem.setVertical(false);
+ valueItem = radioGroupItem;
+ LinkedHashMap<String, String> valueMap = new LinkedHashMap<String, String>();
+ valueMap.put("true", "Yes");
+ valueMap.put("false", "No");
+ valueItem.setValueMap(valueMap);
break;
case INTEGER:
case LONG:
@@ -1300,8 +1302,7 @@ public class ConfigurationEditor extends LocatableVLayout {
}
}
- valueItem.setDefaultValue((String)null);
- valueItem.setValue(propertySimple.getStringValue());
+ valueItem.setDefaultValue(propertySimple.getStringValue());
valueItem.setRequired(propertyDefinitionSimple.isRequired());
List<Validator> validators = buildValidators(propertyDefinitionSimple, propertySimple);
@@ -1606,6 +1607,7 @@ public class ConfigurationEditor extends LocatableVLayout {
String stringValue = (value != null) ? value.toString() : null;
item.setValue(stringValue);
}
+ item.setDefaultValue((String)null);
}
private static class PropertyDefinitionComparator implements Comparator<PropertyDefinition> {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/GroupConfigurationEditor.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/GroupConfigurationEditor.java
index 4583a4a..c2e2eb7 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/GroupConfigurationEditor.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/configuration/GroupConfigurationEditor.java
@@ -32,14 +32,19 @@ import com.smartgwt.client.widgets.events.ClickEvent;
import com.smartgwt.client.widgets.form.DynamicForm;
import com.smartgwt.client.widgets.form.events.ItemChangedEvent;
import com.smartgwt.client.widgets.form.events.ItemChangedHandler;
+import com.smartgwt.client.widgets.form.fields.ButtonItem;
+import com.smartgwt.client.widgets.form.fields.CheckboxItem;
import com.smartgwt.client.widgets.form.fields.FormItem;
import com.smartgwt.client.widgets.form.fields.FormItemIcon;
+import com.smartgwt.client.widgets.form.fields.SpacerItem;
import com.smartgwt.client.widgets.form.fields.StaticTextItem;
import com.smartgwt.client.widgets.form.fields.events.ChangedEvent;
import com.smartgwt.client.widgets.form.fields.events.ChangedHandler;
+import com.smartgwt.client.widgets.form.fields.events.ClickHandler;
import com.smartgwt.client.widgets.form.fields.events.FormItemClickHandler;
import com.smartgwt.client.widgets.form.fields.events.FormItemIconClickEvent;
import com.smartgwt.client.widgets.layout.HLayout;
+import com.smartgwt.client.widgets.layout.VLayout;
import org.rhq.core.domain.configuration.Configuration;
import org.rhq.core.domain.configuration.Property;
@@ -180,16 +185,81 @@ public class GroupConfigurationEditor extends ConfigurationEditor {
private void displayMemberValuesEditor(String locatorId, final PropertyDefinitionSimple propertyDefinitionSimple,
final PropertySimple aggregatePropertySimple,
Integer index, final FormItem aggregateValueItem) {
+ final Window popup = new Window();
+ popup.setTitle("Member Values for Property '" + propertyDefinitionSimple.getName() + "'");
+ popup.setWidth(800);
+ popup.setHeight(600);
+ popup.setIsModal(true);
+ popup.setShowModalMask(true);
+ popup.setShowCloseButton(false);
+ popup.centerInPage();
+
LocatableVLayout layout = new LocatableVLayout(locatorId);
layout.setHeight100();
+ layout.setMargin(11);
+
+ final DynamicForm setAllForm = new DynamicForm();
+ setAllForm.setNumCols(4);
+ setAllForm.setColWidths(175, 25, 250, 100);
+ setAllForm.setCellPadding(5);
+
+ List<FormItem> setAllItems = new ArrayList<FormItem>();
+
+ // Header Row
+ SpacerItem spacerItem = new SpacerItem();
+ setAllItems.add(spacerItem);
+
+ StaticTextItem unsetAllHeader = new StaticTextItem();
+ unsetAllHeader.setShowTitle(false);
+ unsetAllHeader.setDefaultValue("<h4>Unset</h4>");
+ setAllItems.add(unsetAllHeader);
+
+ StaticTextItem valueAllHeader = new StaticTextItem();
+ valueAllHeader.setShowTitle(false);
+ valueAllHeader.setDefaultValue("<h4>Value</h4>");
+
+ setAllItems.add(valueAllHeader);
+
+ spacerItem = new SpacerItem();
+ //spacerItem.setEndRow(true);
+ setAllItems.add(spacerItem);
+
+ // Input Row
+ StaticTextItem setAllValuesToItem = new StaticTextItem();
+ setAllValuesToItem.setShowTitle(false);
+ setAllValuesToItem.setDefaultValue("<b>Set all values to: </b>");
+ setAllValuesToItem.setAlign(Alignment.RIGHT);
+ setAllItems.add(setAllValuesToItem);
+
+ PropertySimple masterPropertySimple = new PropertySimple(aggregatePropertySimple.getName(), null);
+ final FormItem masterValueItem = super.buildSimpleField(propertyDefinitionSimple, masterPropertySimple);
+ masterValueItem.setDisabled(false);
+
+ FormItem masterUnsetItem = buildUnsetItem(propertyDefinitionSimple, masterPropertySimple, masterValueItem);
+ if (masterUnsetItem instanceof CheckboxItem) {
+ masterUnsetItem.setValue(false);
+ }
- // TODO: Add 'Set All Values To' and 'Unset All' controls in a separate DynamicForm.
+ setAllItems.add(masterUnsetItem);
+ setAllItems.add(masterValueItem);
- final DynamicForm form = new DynamicForm();
- form.setHeight100();
- form.setNumCols(3);
- form.setColWidths("60%", "8%", "32%");
- layout.addMember(form);
+ ButtonItem applyButtonItem = new ButtonItem();
+ applyButtonItem.setTitle("Apply");
+ //applyButtonItem.setEndRow(true);
+ setAllItems.add(applyButtonItem);
+
+ setAllForm.setFields(setAllItems.toArray(new FormItem[setAllItems.size()]));
+ layout.addMember(setAllForm);
+
+ VLayout spacerLayout = new VLayout();
+ spacerLayout.setHeight(20);
+ layout.addMember(spacerLayout);
+
+ final DynamicForm membersForm = new DynamicForm();
+ membersForm.setHeight100();
+ membersForm.setNumCols(3);
+ membersForm.setColWidths("52%", "8%", "40%");
+ layout.addMember(membersForm);
// Add header row.
List<FormItem> items = new ArrayList<FormItem>();
@@ -208,9 +278,8 @@ public class GroupConfigurationEditor extends ConfigurationEditor {
items.add(valueHeader);
// Add data rows.
- final Map<String, PropertySimple> memberProperties = new HashMap<String, PropertySimple>(this.memberConfigurations.size());
final List<FormItem> valueItems = new ArrayList<FormItem>(this.memberConfigurations.size());
- final List<FormItem> unsetItems = new ArrayList<FormItem>(this.memberConfigurations.size());
+ final Map<String, PropertySimple> valueItemNameToPropertySimpleMap = new HashMap<String, PropertySimple>();
for (GroupMemberConfiguration memberConfiguration : this.memberConfigurations) {
String memberName = memberConfiguration.getLabel();
StaticTextItem memberItem = new StaticTextItem();
@@ -219,26 +288,15 @@ public class GroupConfigurationEditor extends ConfigurationEditor {
items.add(memberItem);
Configuration configuration = memberConfiguration.getConfiguration();
PropertySimple memberPropertySimple = getPropertySimple(configuration, propertyDefinitionSimple, index);
- memberProperties.put(memberName, memberPropertySimple);
FormItem valueItem = buildSimpleField(propertyDefinitionSimple, memberPropertySimple);
- valueItem.setAttribute("rhq:property", memberPropertySimple);
valueItems.add(valueItem);
+ valueItemNameToPropertySimpleMap.put(valueItem.getName(), memberPropertySimple);
FormItem unsetItem = buildUnsetItem(propertyDefinitionSimple, memberPropertySimple, valueItem);
items.add(unsetItem);
- unsetItems.add(unsetItem);
items.add(valueItem);
valueItem.setEndRow(true);
}
- form.setItems(items.toArray(new FormItem[items.size()]));
-
- final Window popup = new Window();
- popup.setTitle("Member Values for Property '" + propertyDefinitionSimple.getName());
- popup.setWidth(800);
- popup.setHeight(600);
- popup.setIsModal(true);
- popup.setShowModalMask(true);
- popup.setShowCloseButton(false);
- popup.centerInPage();
+ membersForm.setItems(items.toArray(new FormItem[items.size()]));
final IButton okButton = new IButton("OK");
okButton.disable();
@@ -251,8 +309,7 @@ public class GroupConfigurationEditor extends ConfigurationEditor {
if ((value != null && !value.equals(firstValue)) || (value == null && firstValue != null)) {
valuesHomogeneous = false;
}
- PropertySimple memberPropertySimple =
- (PropertySimple)valueItem.getAttributeAsObject("rhq:property");
+ PropertySimple memberPropertySimple = valueItemNameToPropertySimpleMap.get(valueItem.getName());
memberPropertySimple.setValue(value);
memberPropertySimple.setErrorMessage(null);
}
@@ -269,8 +326,7 @@ public class GroupConfigurationEditor extends ConfigurationEditor {
aggregateUnsetItem.setValue(firstValue == null);
- // Set the aggregate value item's value to the homogeneous value, enable it, and make sure it has
- // validators set.
+ // Set the aggregate value item's value to the homogeneous value, unhide it, and enable it.
setValue(aggregateValueItem, firstValue);
aggregateValueItem.show();
aggregateValueItem.setDisabled(false);
@@ -286,18 +342,36 @@ public class GroupConfigurationEditor extends ConfigurationEditor {
aggregateStaticItem.show();
}
- form.markForRedraw();
+ membersForm.markForRedraw();
popup.destroy();
}
});
// Only enable the OK button if all properties are valid.
- form.addItemChangedHandler(new ItemChangedHandler() {
+ membersForm.addItemChangedHandler(new ItemChangedHandler() {
public void onItemChanged(ItemChangedEvent itemChangedEvent) {
- okButton.setDisabled(!form.validate());
+ okButton.setDisabled(!membersForm.validate());
}
});
+ applyButtonItem.addClickHandler(new ClickHandler() {
+ @Override
+ public void onClick(com.smartgwt.client.widgets.form.fields.events.ClickEvent clickEvent) {
+ Object value = masterValueItem.getValue();
+ for (FormItem valueItem : valueItems) {
+ setValue(valueItem, value);
+
+ FormItem unsetItem = valueItemNameToUnsetItemMap.get(valueItem.getName());
+ if (unsetItem instanceof CheckboxItem) {
+ unsetItem.setValue((value == null));
+ valueItem.setDisabled((value == null));
+ }
+
+ okButton.setDisabled(!membersForm.validate());
+ }
+ }
+ });
+
final IButton cancelButton = new IButton("Cancel");
cancelButton.addClickHandler(new com.smartgwt.client.widgets.events.ClickHandler() {
public void onClick(ClickEvent clickEvent) {
@@ -308,12 +382,11 @@ public class GroupConfigurationEditor extends ConfigurationEditor {
// TODO: Anchor the button bar at the bottom of the modal window, so it's always visible.
HLayout buttons = new HLayout();
buttons.setAlign(Alignment.CENTER);
- buttons.setMembersMargin(10);
+ buttons.setMembersMargin(7);
buttons.setMembers(okButton, cancelButton);
layout.addMember(buttons);
popup.addItem(layout);
-
popup.show();
}
13 years, 7 months
[rhq] modules/enterprise
by mazz
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/ResourceTypeTreeNodeBuilder.java | 28 +----
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/ResourceTypeTreeView.java | 52 +++++-----
2 files changed, 39 insertions(+), 41 deletions(-)
New commits:
commit 16ff182bc813383485b77bc96312505c74ea37ec
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Wed Oct 20 17:43:44 2010 -0400
no need to store the full resource type in the record
don't allow selections in the grids
refactor out common methods that trigger when edit buttons are pushed
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/ResourceTypeTreeNodeBuilder.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/ResourceTypeTreeNodeBuilder.java
index ec26699..c038076 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/ResourceTypeTreeNodeBuilder.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/ResourceTypeTreeNodeBuilder.java
@@ -141,50 +141,46 @@ public class ResourceTypeTreeNodeBuilder {
public static class ResourceTypeListGridRecord extends ListGridRecord {
- private ResourceType resourceType;
+ private int id;
private ResourceTypeListGridRecord(ResourceTypeTemplateCountComposite composite) {
- this.resourceType = composite.getType();
+ ResourceType resourceType = composite.getType();
+ this.id = resourceType.getId();
- setAttribute(ATTRIB_ID, String.valueOf(resourceType.getId()));
+ setAttribute(ATTRIB_ID, String.valueOf(id));
setAttribute(ATTRIB_NAME, resourceType.getName());
setAttribute(ATTRIB_PLUGIN, resourceType.getPlugin());
- setAttribute(ATTRIB_CATEGORY, resourceType.getCategory().getDisplayName());
+ setAttribute(ATTRIB_CATEGORY, resourceType.getCategory().name());
setAttribute(ATTRIB_ENABLED_ALERT_TEMPLATES, composite.getEnabledAlertCount());
setAttribute(ATTRIB_DISABLED_ALERT_TEMPLATES, composite.getDisabledAlertCount());
setAttribute(ATTRIB_ENABLED_METRIC_TEMPLATES, composite.getEnabledMetricCount());
setAttribute(ATTRIB_DISABLED_METRIC_TEMPLATES, composite.getDisabledMetricCount());
}
- public ResourceType getResourceType() {
- return resourceType;
- }
-
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
- if (!(o instanceof ResourceTypeTreeNode)) {
+ if (!(o instanceof ResourceTypeListGridRecord)) {
return false;
}
- return (this.resourceType.getId() == ((ResourceTypeTreeNode) o).resourceType.getId());
+ return (this.id == ((ResourceTypeListGridRecord) o).id);
}
@Override
public int hashCode() {
- return 31 * resourceType.getId();
+ return 31 * id;
}
}
public static class ResourceTypeTreeNode extends TreeNode {
- private ResourceType resourceType;
private String id;
private String parentId;
private ResourceTypeTreeNode(ResourceTypeTemplateCountComposite composite, String parentId) {
- this.resourceType = composite.getType();
+ ResourceType resourceType = composite.getType();
String id = String.valueOf(resourceType.getId());
setID(id);
@@ -197,7 +193,7 @@ public class ResourceTypeTreeNodeBuilder {
setAttribute(ATTRIB_PARENT_ID, parentId);
setAttribute(ATTRIB_NAME, resourceType.getName());
setAttribute(ATTRIB_PLUGIN, resourceType.getPlugin());
- setAttribute(ATTRIB_CATEGORY, resourceType.getCategory().getDisplayName());
+ setAttribute(ATTRIB_CATEGORY, resourceType.getCategory().name());
setAttribute(ATTRIB_ENABLED_ALERT_TEMPLATES, composite.getEnabledAlertCount());
setAttribute(ATTRIB_DISABLED_ALERT_TEMPLATES, composite.getDisabledAlertCount());
setAttribute(ATTRIB_DISABLED_METRIC_TEMPLATES, composite.getEnabledMetricCount());
@@ -206,10 +202,6 @@ public class ResourceTypeTreeNodeBuilder {
setIsFolder(true);
}
- public ResourceType getResourceType() {
- return resourceType;
- }
-
@Override
public boolean equals(Object o) {
if (this == o) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/ResourceTypeTreeView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/ResourceTypeTreeView.java
index 6e2047d..ff50be7 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/ResourceTypeTreeView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/ResourceTypeTreeView.java
@@ -20,6 +20,7 @@ package org.rhq.enterprise.gui.coregui.client.admin.templates;
import com.smartgwt.client.data.Record;
import com.smartgwt.client.types.Alignment;
+import com.smartgwt.client.types.SelectionStyle;
import com.smartgwt.client.types.VisibilityMode;
import com.smartgwt.client.util.SC;
import com.smartgwt.client.widgets.Canvas;
@@ -36,7 +37,7 @@ import com.smartgwt.client.widgets.tree.TreeGrid;
import com.smartgwt.client.widgets.tree.TreeGridField;
import com.smartgwt.client.widgets.tree.TreeNode;
-import org.rhq.core.domain.resource.ResourceType;
+import org.rhq.core.domain.resource.ResourceCategory;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableListGrid;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableTreeGrid;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableVLayout;
@@ -80,6 +81,25 @@ public class ResourceTypeTreeView extends LocatableVLayout {
new ResourceTypeTreeNodeBuilder(platformsList, platformServicesList, serversTreeGrid);
}
+ private static void editAlertTemplate(Record record) {
+ SC.say("Alert Template : " //
+ + record.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_NAME)
+ + "==>"
+ + record.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_PLUGIN)
+ + "==>"
+ + record.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_ID));
+ }
+
+ private static void editMetricTemplate(Record record) {
+ // http://localhost:7080/admin/platform/monitor/Config.do?nomenu=true&mode=c...
+ SC.say("Metric Template: " //
+ + record.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_NAME)
+ + "==>"
+ + record.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_PLUGIN)
+ + "==>"
+ + record.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_ID));
+ }
+
public static class CustomResourceTypeListGrid extends LocatableListGrid {
private HLayout rollOverCanvas;
private ListGridRecord rollOverRecord;
@@ -91,6 +111,7 @@ public class ResourceTypeTreeView extends LocatableVLayout {
setFixedRecordHeights(false);
setShowRollOverCanvas(true);
setEmptyMessage("Loading...");
+ setSelectionType(SelectionStyle.NONE);
final ListGridField name = new ListGridField(ResourceTypeTreeNodeBuilder.ATTRIB_NAME, "Name");
final ListGridField plugin = new ListGridField(ResourceTypeTreeNodeBuilder.ATTRIB_PLUGIN, "Plugin");
@@ -147,11 +168,7 @@ public class ResourceTypeTreeView extends LocatableVLayout {
metricTemplateImg.setWidth(16);
metricTemplateImg.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
- // http://localhost:7080/admin/platform/monitor/Config.do?nomenu=true&mode=c...
- SC.say("Metric Template: "
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_NAME) + "==>"
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_PLUGIN) + "==>"
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_ID));
+ editMetricTemplate(rollOverRecord);
}
});
@@ -166,10 +183,7 @@ public class ResourceTypeTreeView extends LocatableVLayout {
alertTemplateImg.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
- SC.say("Alert Template : "
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_NAME) + "==>"
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_PLUGIN) + "==>"
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_ID));
+ editAlertTemplate(rollOverRecord);
}
});
@@ -191,6 +205,7 @@ public class ResourceTypeTreeView extends LocatableVLayout {
setFixedRecordHeights(false);
setShowRollOverCanvas(true);
setEmptyMessage("Loading...");
+ setSelectionType(SelectionStyle.NONE);
setAnimateFolders(false);
final TreeGridField name = new TreeGridField(ResourceTypeTreeNodeBuilder.ATTRIB_NAME, "Name");
@@ -245,11 +260,7 @@ public class ResourceTypeTreeView extends LocatableVLayout {
metricTemplateImg.setWidth(16);
metricTemplateImg.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
- // http://localhost:7080/admin/platform/monitor/Config.do?nomenu=true&mode=c...
- SC.say("Metric Template: "
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_NAME) + "==>"
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_PLUGIN) + "==>"
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_ID));
+ editMetricTemplate(rollOverRecord);
}
});
@@ -264,10 +275,7 @@ public class ResourceTypeTreeView extends LocatableVLayout {
alertTemplateImg.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
- SC.say("Alert Template : "
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_NAME) + "==>"
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_PLUGIN) + "==>"
- + rollOverRecord.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_ID));
+ editAlertTemplate(rollOverRecord);
}
});
@@ -282,10 +290,8 @@ public class ResourceTypeTreeView extends LocatableVLayout {
if (record instanceof TreeNode) {
if (record instanceof ResourceTypeTreeNodeBuilder.ResourceTypeTreeNode) {
- ResourceType resourceType = ((ResourceTypeTreeNodeBuilder.ResourceTypeTreeNode) record)
- .getResourceType();
-
- switch (resourceType.getCategory()) {
+ String c = record.getAttribute(ResourceTypeTreeNodeBuilder.ATTRIB_CATEGORY);
+ switch (ResourceCategory.valueOf(c)) {
case PLATFORM:
return "types/Platform_up_16.png";
case SERVER:
13 years, 7 months