modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/NagiosMonitorDiscovery.java | 30 +++++++--- 1 file changed, 22 insertions(+), 8 deletions(-)
New commits: commit 66b41a0096182b70463e2414efd5dc3ebdceac72 Author: Heiko W. Rupp hwr@redhat.com Date: Mon Sep 20 12:28:20 2010 +0200
Allow for autodiscovery of NagiosMonitor (server) types while RHQ UI is in rework.
diff --git a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/NagiosMonitorDiscovery.java b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/NagiosMonitorDiscovery.java index fc592fa..594faac 100644 --- a/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/NagiosMonitorDiscovery.java +++ b/modules/plugins/nagios/src/main/java/org/rhq/plugins/nagios/NagiosMonitorDiscovery.java @@ -33,7 +33,6 @@ import org.rhq.core.pluginapi.inventory.ManualAddFacet; import org.rhq.core.pluginapi.inventory.ResourceComponent; import org.rhq.core.pluginapi.inventory.ResourceDiscoveryComponent; import org.rhq.core.pluginapi.inventory.ResourceDiscoveryContext; -import org.rhq.plugins.nagios.NagiosMonitorComponent; import org.rhq.plugins.nagios.network.NetworkConnection; import org.rhq.plugins.nagios.reply.LqlReply; import org.rhq.plugins.nagios.request.LqlResourceTypeRequest; @@ -56,17 +55,13 @@ public class NagiosMonitorDiscovery implements ResourceDiscoveryComponent, Manua public DiscoveredResourceDetails discoverResource(Configuration configuration, ResourceDiscoveryContext resourceDiscoveryContext) throws InvalidPluginConfigurationException {
- String nagiosHost = configuration.getSimpleValue("nagiosHost", NagiosMonitorComponent.DEFAULT_NAGIOSIP); - String nagiosPort = configuration.getSimpleValue("nagiosPort", NagiosMonitorComponent.DEFAULT_NAGIOSPORT); - - DiscoveredResourceDetails detail = new DiscoveredResourceDetails(resourceDiscoveryContext.getResourceType(), - "nagios@" + nagiosHost + ":" + nagiosPort, "Nagios@" + nagiosHost + ":" + nagiosPort, null, - "Nagios server @ " + nagiosHost + ":" + nagiosPort, configuration, null); + DiscoveredResourceDetails detail = createNagiosMonitorServerDetail(configuration, resourceDiscoveryContext); log.info("Adding NagiosMonitor " + detail);
return detail; }
+ /** * Don run the auto-discovery for the services below the NagiosMonitor server type. */ @@ -75,9 +70,16 @@ public class NagiosMonitorDiscovery implements ResourceDiscoveryComponent, Manua
// If we have no parent, it means the NagiosMonitoring server type is not yet up. ResourceComponent tmpComponent = discoveryContext.getParentResourceComponent(); - if (tmpComponent == null || !(tmpComponent instanceof NagiosMonitorComponent)) + if (tmpComponent == null || !(tmpComponent instanceof NagiosMonitorComponent)) { + + // Temporarily allow autodiscovery of NagiosMonitor server type, while RHQ 4 ui work is going on + discoveredResources.add( + createNagiosMonitorServerDetail(discoveryContext.getDefaultPluginConfiguration(),discoveryContext)); return discoveredResources;
+ } + + NagiosMonitorComponent parentComponent = (NagiosMonitorComponent) tmpComponent; String nagiosHost = parentComponent.getNagiosHost(); int nagiosPort = parentComponent.getNagiosPort(); @@ -109,6 +111,18 @@ public class NagiosMonitorDiscovery implements ResourceDiscoveryComponent, Manua return discoveredResources; }
+ private DiscoveredResourceDetails createNagiosMonitorServerDetail(Configuration configuration, + ResourceDiscoveryContext resourceDiscoveryContext) { + String nagiosHost = configuration.getSimpleValue("nagiosHost", NagiosMonitorComponent.DEFAULT_NAGIOSIP); + String nagiosPort = configuration.getSimpleValue("nagiosPort", NagiosMonitorComponent.DEFAULT_NAGIOSPORT); + + DiscoveredResourceDetails detail = new DiscoveredResourceDetails(resourceDiscoveryContext.getResourceType(), + "nagios@" + nagiosHost + ":" + nagiosPort, "Nagios@" + nagiosHost + ":" + nagiosPort, null, + "Nagios server @ " + nagiosHost + ":" + nagiosPort, configuration, null); + return detail; + } + + /** * Don't run the auto-discovery of this "nagios" server type, * as we probably won't have one on each platform. Rather have the admin
rhq-commits@lists.fedorahosted.org