Class MailTransportMonitor

  • All Implemented Interfaces:
    ServiceMonitor

    public class MailTransportMonitor
    extends AbstractServiceMonitor
    This ServiceMonitor is designed to monitor the transport of SMTP email. Use cases: a) Class will test that it can successfully send an email. b) Class will test that it can successfully connect to a mail server and get mailbox contents. c) Class will test that it can successfully read a new email message from a mail server. d) Class will test that it can send an email and read that same email from a mail server.
    Version:
    $Id: $
    Author:
    David Hustace
    • Constructor Detail

      • MailTransportMonitor

        public MailTransportMonitor()
    • Method Detail

      • poll

        public PollStatus poll​(MonitoredService svc,
                               Map<String,​Object> parameters)

        This method is the heart of the plug-in monitor. Each time an interface requires a check to be performed as defined by the scheduler the poll method is invoked. The poll is passed the service to check.

        By default when the status transition from up to down or vice versa the framework will generate an event. Additionally, if the polling interval changes due to an extended unavailability, the framework will generate an additional down event. The plug-in can suppress the generation of the default events by setting the suppress event bit in the returned integer.

        NOTE: This method may be invoked on a Minion, in which case certain bean and facilities will not be available. If any state related information is required such as agent related configuration, it should retrieved by the ServiceMonitor.getRuntimeAttributes(MonitoredService, Map).

        Parameters:
        svc - Includes details about to the service being monitored.
        parameters - Includes the service parameters defined in poller-configuration.xml and those returned by ServiceMonitor.getRuntimeAttributes(MonitoredService, Map).
        Returns:
        The availability of the interface and if a transition event should be suppressed.
        See Also:
        PollStatus.SERVICE_AVAILABLE, PollStatus.SERVICE_UNAVAILABLE, PollStatus.SERVICE_AVAILABLE, PollStatus.SERVICE_UNAVAILABLE