Class HttpPostMonitor
- java.lang.Object
-
- org.opennms.netmgt.poller.support.AbstractServiceMonitor
-
- org.opennms.netmgt.poller.monitors.support.ParameterSubstitutingMonitor
-
- org.opennms.netmgt.poller.monitors.HttpPostMonitor
-
- All Implemented Interfaces:
ServiceMonitor
public final class HttpPostMonitor extends ParameterSubstitutingMonitor
This class is designed to be used by the service poller framework to test the availability of a url by posting a generic payload and evaulating the http response code and banner. The class implements the ServiceMonitor interface that allows it to be used along with other plug-ins by the service poller framework.- Author:
- Jeff Gehlbach, Chris Liles, OpenNMS
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DEFAULT_CHARSET
static java.lang.String
DEFAULT_MIMETYPE
static java.lang.String
DEFAULT_SCHEME
static boolean
DEFAULT_SSLFILTER
static java.lang.String
DEFAULT_URI
static java.lang.String
PARAMETER_BANNER
static java.lang.String
PARAMETER_CHARSET
static java.lang.String
PARAMETER_MIMETYPE
static java.lang.String
PARAMETER_PASSWORD
static java.lang.String
PARAMETER_PAYLOAD
static java.lang.String
PARAMETER_PORT
static java.lang.String
PARAMETER_SCHEME
static java.lang.String
PARAMETER_SSLFILTER
static java.lang.String
PARAMETER_URI
static java.lang.String
PARAMETER_USERNAME
-
Constructor Summary
Constructors Constructor Description HttpPostMonitor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PollStatus
poll(MonitoredService svc, java.util.Map<java.lang.String,java.lang.Object> parameters)
This method is the heart of the plug-in monitor.-
Methods inherited from class org.opennms.netmgt.poller.monitors.support.ParameterSubstitutingMonitor
getRuntimeAttributes, getSubstitutedParameters, parseString, resolveKeyedString
-
Methods inherited from class org.opennms.netmgt.poller.support.AbstractServiceMonitor
getEffectiveLocation, getKeyedBoolean, getKeyedInstance, getKeyedInteger, getKeyedLong, getKeyedObject, getKeyedString, getServiceProperties
-
-
-
-
Field Detail
-
DEFAULT_MIMETYPE
public static final java.lang.String DEFAULT_MIMETYPE
- See Also:
- Constant Field Values
-
DEFAULT_CHARSET
public static final java.lang.String DEFAULT_CHARSET
-
DEFAULT_URI
public static final java.lang.String DEFAULT_URI
- See Also:
- Constant Field Values
-
DEFAULT_SCHEME
public static final java.lang.String DEFAULT_SCHEME
- See Also:
- Constant Field Values
-
DEFAULT_SSLFILTER
public static final boolean DEFAULT_SSLFILTER
- See Also:
- Constant Field Values
-
PARAMETER_SCHEME
public static final java.lang.String PARAMETER_SCHEME
- See Also:
- Constant Field Values
-
PARAMETER_PORT
public static final java.lang.String PARAMETER_PORT
- See Also:
- Constant Field Values
-
PARAMETER_URI
public static final java.lang.String PARAMETER_URI
- See Also:
- Constant Field Values
-
PARAMETER_PAYLOAD
public static final java.lang.String PARAMETER_PAYLOAD
- See Also:
- Constant Field Values
-
PARAMETER_MIMETYPE
public static final java.lang.String PARAMETER_MIMETYPE
- See Also:
- Constant Field Values
-
PARAMETER_CHARSET
public static final java.lang.String PARAMETER_CHARSET
- See Also:
- Constant Field Values
-
PARAMETER_BANNER
public static final java.lang.String PARAMETER_BANNER
- See Also:
- Constant Field Values
-
PARAMETER_SSLFILTER
public static final java.lang.String PARAMETER_SSLFILTER
- See Also:
- Constant Field Values
-
PARAMETER_USERNAME
public static final java.lang.String PARAMETER_USERNAME
- See Also:
- Constant Field Values
-
PARAMETER_PASSWORD
public static final java.lang.String PARAMETER_PASSWORD
- See Also:
- Constant Field Values
-
-
Method Detail
-
poll
public PollStatus poll(MonitoredService svc, java.util.Map<java.lang.String,java.lang.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
Poll the specified address for service availability. During the poll an attempt is made to execute the named method (with optional input) connect on the specified port. If the exec on request is successful, the banner line generated by the interface is parsed and if the banner text indicates that we are talking to Provided that the interface's response is valid we set the service status to SERVICE_AVAILABLE and return.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 byServiceMonitor.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
-
-