org.opennms.netmgt.poller.monitors
Class IcmpMonitor

java.lang.Object
  extended by org.opennms.netmgt.poller.monitors.IPv4Monitor
      extended by org.opennms.netmgt.poller.monitors.IcmpMonitor
All Implemented Interfaces:
ServiceMonitor

@Distributable(value=DAEMON)
public final class IcmpMonitor
extends IPv4Monitor

This class is designed to be used by the service poller framework to test the availability of the ICMP service on remote interfaces. The class implements the ServiceMonitor interface that allows it to be used along with other plug-ins by the service poller framework.

Author:
Tarus Balog, OpenNMS

Constructor Summary
IcmpMonitor()
          Constructs a new monitor.
 
Method Summary
 PollStatus poll(MonitoredService svc, Map parameters)
           Poll the specified address for ICMP service availability.
 
Methods inherited from class org.opennms.netmgt.poller.monitors.IPv4Monitor
initialize, initialize, log, logDown, logDown, logUp, release, release
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IcmpMonitor

public IcmpMonitor()
            throws IOException
Constructs a new monitor.

Throws:
IOException
Method Detail

poll

public PollStatus poll(MonitoredService svc,
                       Map parameters)

Poll the specified address for ICMP service availability.

The ICMP service monitor relies on Discovery for the actual generation of IMCP 'ping' requests. A JSDT session with two channels (send/recv) is utilized for passing poll requests and receiving poll replies from discovery. All exchanges are SOAP/XML compliant.

Specified by:
poll in interface ServiceMonitor
Specified by:
poll in class IPv4Monitor
Parameters:
parameters - The package parameters (timeout, retry, etc...) to be used for this poll.
iface - The network interface to test the service on.
Returns:
The availability of the interface and if a transition event should be suppressed.
See Also:
PollStatus.SERVICE_AVAILABLE, PollStatus.SERVICE_UNAVAILABLE


Copyright © 2009. All Rights Reserved.