@Distributable public class AvailabilityMonitor extends AbstractServiceMonitor
| Modifier and Type | Field and Description |
|---|---|
static org.slf4j.Logger |
LOG |
| Constructor and Description |
|---|
AvailabilityMonitor() |
| Modifier and Type | Method and Description |
|---|---|
void |
initialize(Map<String,Object> parameters)
This method is called after the framework creates an instance of the
plug-in.
|
void |
initialize(MonitoredService svc)
initialize
|
PollStatus |
poll(MonitoredService svc,
Map<String,Object> parameters)
This method is the heart of the plug-in monitor.
|
void |
release()
release
|
void |
release(MonitoredService svc)
This method is the called whenever an interface is being removed from the
scheduler.
|
getKeyedBoolean, getKeyedInteger, getKeyedLong, getKeyedObject, getKeyedStringpublic void initialize(Map<String,Object> parameters)
This method is called after the framework creates an instance of the plug-in. The framework passes the object a proxy object that can be used to retrieve configuration information specific to the plug-in. Additionally, any parameters for the plug-in from the package definition are passed using the parameters element.
If there is a critical error, like missing service libraries, the the Monitor may throw a ServiceMonitorException. If the plug-in throws an exception then the plug-in will be disabled in the framework.
This method is called after the framework creates an instance of the plug-in. The framework passes the object a proxy object that can be used to retrieve configuration information specific to the plug-in. Additionally, any parameters for the plug-in from the package definition are passed using the parameters element.
If there is a critical error, like missing service libraries, the monitor may throw a ServiceMonitorException. If the plug-in throws an exception then the plug-in will be disabled in the framework.
initialize in interface ServiceMonitorinitialize in class AbstractServiceMonitorparameters - Not currently usedpublic void initialize(MonitoredService svc)
initialize
initialize in interface ServiceMonitorinitialize in class AbstractServiceMonitorsvc - a MonitoredService object.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 interface 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.
poll in interface ServiceMonitorpoll in class AbstractServiceMonitorsvc - TODOparameters - The package parameters (timeout, retry, etc...) to be used for
this poll.PollStatus.SERVICE_AVAILABLE,
PollStatus.SERVICE_UNAVAILABLE,
PollStatus.SERVICE_AVAILABLE,
PollStatus.SERVICE_UNAVAILABLEpublic void release()
release
release in interface ServiceMonitorrelease in class AbstractServiceMonitorpublic void release(MonitoredService svc)
This method is the called whenever an interface is being removed from the scheduler. For example, if a service is determined as being no longer supported then this method will be invoked to cleanup any information associated with this device. This gives the implementor of the interface the ability to serialize any data prior to the interface being discarded.
If an exception is thrown during the release the exception will be logged, but the interface will still be discarded for garbage collection.
This method is the called whenever an interface is being removed from the scheduler. For example, if a service is determined as being no longer supported then this method will be invoked to cleanup any information associated with this device. This gives the implementor of the interface the ability to serialize any data prior to the interface being discarded.
If an exception is thrown during the release the exception will be logged, but the interface will still be discarded for garbage collection.
release in interface ServiceMonitorrelease in class AbstractServiceMonitorsvc - TODOCopyright © 2017. All rights reserved.