org.opennms.netmgt.poller.monitors
Class ImapMonitor

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

@Distributable
public final class ImapMonitor
extends IPv4Monitor

This class is designed to be used by the service poller framework to test the availability of the IMAP 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.

Version:
CVS 1.1.1.1
Author:
Tarus Balog , Sowmya Nataraj , Mike Davidson , OpenNMS

Constructor Summary
ImapMonitor()
           
 
Method Summary
 PollStatus poll(MonitoredService svc, Map parameters)
           Poll the specified address for IMAP 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

ImapMonitor

public ImapMonitor()
Method Detail

poll

public PollStatus poll(MonitoredService svc,
                       Map parameters)

Poll the specified address for IMAP service availability.

During the poll an attempt is made to connect on the specified port (by default TCP port 143). If the connection request is successful, the banner line generated by the interface is parsed and if it starts with a '* OK , it indicates that we are talking to an IMAP server and we continue. Next, a 'LOGOUT' command is sent to the interface. Again the response is parsed and the response is verified to see that we get a '* OK'. If the interface's response is valid we set the service status to SERVICE_AVAILABLE and return.

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 availibility of the interface and if a transition event should be supressed.
See Also:
PollStatus.SERVICE_AVAILABLE, PollStatus.SERVICE_UNAVAILABLE


Copyright © 2009. All Rights Reserved.