(AIR only)
| Runtime Versions: | AIR 1.0 |
The ServiceMonitor class implements the framework for monitoring the status and availability of network services.
The ServiceMonitor class acts as the base class for all other service monitors.
In Adobe® Flash® CS3 Professional,
this class is included in the ServiceMonitorShim.swc file. To use classes in the air.net package ,
you must first drag the ServiceMonitorShim component from the Components panel to the
Library and then add the following import statement to your ActionScript 3.0 code:
To use air.net package in Adobe® Flash® CS4 Professional:
- Select the File > Publish Settings command.
- In the Flash panel, click the Settings button for ActionScript 3.0. Select Library Path.
- Click the Browse to SWC File button. Browse to Adobe Flash CS4/AIK1.1/frameworks/libs/air/servicemoniter.swc
file in the Adobe Flash CS4 installation folder.
- Click the OK button.
- Add the following
import statement to your ActionScript 3.0 code: import air.net.*;
available:Boolean| Runtime Versions: | AIR 1.0 |
Whether the service is currently considered "available."
The initial value is false until either a status check sets the
property to true or the property is initialized to true explicitly.
Typically, this property is set by the checkStatus() implementation in a subclass or specializer,
but if the application has independent information about a service's availability (for example, a request just succeeded
or failed), the property can be set explicitly.
Implementation public function get available():Boolean public function set available(value:Boolean):voidlastStatusUpdate:Date [read-only]
| Runtime Versions: | AIR 1.0 |
The time of the last status update.
Implementation public function get lastStatusUpdate():DatepollInterval:Number| Runtime Versions: | AIR 1.0 |
The interval, in milliseconds, for polling the server.
If zero, the server is not polled periodically, but only immediately after start() is called
and when the network status changes.
The ServiceMonitor object only dispatches a status event if service
status has changed (not on every poll interval). The object also dispatches a status
event as a result of network connectivity changes (regardles of the poll interval).
The default value is 0.
Implementation public function get pollInterval():Number public function set pollInterval(value:Number):voidrunning:Boolean [read-only]
| Runtime Versions: | AIR 1.0 |
Whether the monitor has been started.
Implementation public function get running():Booleanpublic function ServiceMonitor()| Runtime Versions: | AIR 1.0 |
Creates a ServiceMonitor object.
This class is typically subclassed to monitor specific service types.
After creating a ServiceMonitor object (or a subclass object), call the start() method
to begin monitoring the status of the service.
As with the Timer object, the caller should maintain a reference to the ServiceMonitor
object. Otherwise, the runtime deletes the object and monitoring ends.
protected function checkStatus():void| Runtime Versions: | AIR 1.0 |
Checks the status of the service.
A subclass override method for checking the status of the service.
Typically, this method will initiate a network operation whose completion or failure will result in
setting the available property.
JavaScript code can specialize this method by defining a checkStatus() method
in the "specializer" object.
public static function makeJavascriptSubclass(constructorFunction:Object):void| Runtime Versions: | AIR 1.0 |
Adds public ServiceMonitor methods to a JavaScript constructor function's prototype.
Adds functions to the JavaScript constructor function's prototype that forward public
ServiceMonitor functions to the ServiceMonitor object. This approximates
a normal JavaScript subclass of the ActionScript base class.
A JavaScript class specializing a ServiceMonitor would look like this:
// JavaScript Constructor function
function MyHTTPMonitor(url, method)
{
// "that" variable makes "this" available in closures below
var that = this;
// Required initialization of the service monitor, returns the actual ServiceMonitor object.
this.monitor = this.initServiceMonitor();
// Initializes URLStream and event handlers.
this._urlStream = new air.URLStream();
this._urlRequest = new air.URLRequest(url);
if (method)
{
this._urlRequest.method = method;
}
else
{
this._urlRequest.method = "GET";
}
function onStatus(event) {
that.monitor.available = Number(event.status) == 200;
that._urlStream.close();
}
function onError(event)
{
that.monitor.available = false;
that._urlStream.close();
}
this._urlStream.addEventListener(air.HTTPStatusEvent.HTTP_RESPONSE_STATUS, onStatus);
this._urlStream.addEventListener(air.SecurityErrorEvent.SECURITY_ERROR, onError);
this._urlStream.addEventListener(air.IOErrorEvent.IO_ERROR, onError);
}
// Augment JavaScript prototype with public methods from ServiceMonitor
air.ServiceMonitor.makeJavascriptSubclass(MyHTTPMonitor);
// Implement specializer functions, just as you would when subclassing a JavaScript class
MyHTTPMonitor.prototype.checkStatus = function()
{
air.trace('OVERRIDDEN checkStatus!', this);
this._urlStream.load(this._urlRequest);
}
To use the JavaScript class:
var httpMon = new MyHTTPMonitor('http://www.adobe.com')
Be sure to load the AIRAliases.js and ServiceMonitor.swf files with script tags.
Parameters
| constructorFunction:Object — The JavaScript object's prototype property. For example, if the JavaScript
object that you are using to serve as a specializer object is named MyHTTPMonitor, pass
MyHTTPMonitor.prototype as the value for this parameter.
|
public function start():void| Runtime Versions: | AIR 1.0 |
Starts the service monitor.
public function stop():void| Runtime Versions: | AIR 1.0 |
Stops monitoring the service.
override public function toString():String| Runtime Versions: | AIR 1.0 |
Returns the string representation of the specified object.
Note: Methods of the Object class are dynamically created on Object's prototype. To redefine this method in a subclass of Object, do not use the override keyword. For example, a subclass of Object implements function toString():String instead of using an override of the base class.
Returns | String — A string representation of the object.
|
Event Object Type: flash.events.StatusEventproperty StatusEvent.type = flash.events.StatusEvent.STATUS| Runtime Versions: | AIR 1.0 |
Indicates that the service status has changed.
The value of the code property is either "Service.available" or "Service.unavailable",
but best practice is to check the value of the ServiceMonitor.available property.
Defines the value of the
type property of a
status event object.
This event has the following properties:
| Property | Value |
|---|
bubbles | false |
cancelable | false; there is no default behavior to cancel. |
code | A description of the object's status. |
currentTarget | The object that is actively processing the Event
object with an event listener. |
level | The category of the message, such as "status", "warning" or "error". |
target | The object reporting its status. |
© 2009 Adobe Systems Incorporated. All rights reserved.
Wed Jul 29 2009, 04:58 PM -07:00 ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor ServiceMonitor
air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor air.net.ServiceMonitor