| window.runtime property | window.runtime.air.net.ServiceMonitor |
| Inheritance | ServiceMonitor EventDispatcher Object |
| Subclasses | SocketMonitor, URLMonitor |
Implements the framework for montoring network services.
To use this class in JavaScript code, load the ServiceMonitor.swf file, as in the following:
<script src="ServiceMonitor.swf" type="application/x-shockwave-flash">
| Property | Defined By | ||
|---|---|---|---|
| available : Boolean
Whether the service is currently considered "available."
The initial value is false until either a status check sets the
property to true or the 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.
| ServiceMonitor | ||
![]() | constructor : Object
A reference to the class object or constructor function for a given object instance.
| Object | |
| lastStatusUpdate : Date
[read-only]
The time of the last status update.
| ServiceMonitor | ||
| pollInterval : Number
The interval, in milliseconds, for polling the server.
| ServiceMonitor | ||
![]() | prototype : Object
[static]
A reference to the prototype object of a class or function object.
| Object | |
| running : Boolean
[read-only]
Whether the monitor has been started.
| ServiceMonitor | ||
| Method | Defined By | ||
|---|---|---|---|
|
Creates a ServiceMonitor object.
| ServiceMonitor | ||
![]() |
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener
receives notification of an event.
| EventDispatcher | |
![]() |
dispatchEvent(event:Event):Boolean
Dispatches an event into the event flow.
| EventDispatcher | |
![]() |
hasEventListener(type:String):Boolean
Checks whether the EventDispatcher object has any listeners registered for a specific type
of event.
| EventDispatcher | |
![]() |
hasOwnProperty(name:String):Boolean
Indicates whether an object has a specified property defined.
| Object | |
![]() |
isPrototypeOf(theClass:Object):Boolean
Indicates whether an instance of the Object class is in the prototype chain of the object specified
as the parameter.
| Object | |
|
makeJavascriptSubclass(constructorFunction:Object):void
[static]
Adds public ServiceMonitor methods to a JavaScript constructor function's prototype.
| ServiceMonitor | ||
![]() |
propertyIsEnumerable(name:String):Boolean
Indicates whether the specified property exists and is enumerable.
| Object | |
![]() |
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Removes a listener from the EventDispatcher object.
| EventDispatcher | |
![]() |
setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void
Sets the availability of a dynamic property for loop operations.
| Object | |
|
start():void
Start the service monitor.
| ServiceMonitor | ||
|
stop():void
Stop monitoring the service.
| ServiceMonitor | ||
|
toString():String
Returns the string representation of the specified object.
| ServiceMonitor | ||
![]() |
valueOf():Object
Returns the primitive value of the specified object.
| Object | |
![]() |
willTrigger(type:String):Boolean
Checks whether an event listener is registered with this EventDispatcher object or any of
its ancestors for the specified event type.
| EventDispatcher | |
| Method | Defined By | ||
|---|---|---|---|
|
checkStatus():void
Check the status of the service.
| ServiceMonitor | ||
| Event | Summary | Defined By | ||
|---|---|---|---|---|
![]() | Dispatched when Flash Player or an AIR application gains operating system focus and becomes active. | EventDispatcher | ||
![]() | Dispatched when Flash Player or an AIR application loses operating system focus and is becoming inactive. | EventDispatcher | ||
| Indicates that the service status has changed. | ServiceMonitor | |||
| available | property |
available:Boolean [read-write] Whether the service is currently considered "available."
The initial value is false until either a status check sets the
property to true or the 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.
| lastStatusUpdate | property |
lastStatusUpdate:Date [read-only] The time of the last status update.
| pollInterval | property |
pollInterval:Number [read-write] 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 default value is 0.
| running | property |
running:Boolean [read-only] Whether the monitor has been started.
| ServiceMonitor | () | Constructor |
function ServiceMonitor()
Creates a ServiceMonitor object.
The class can be specialized in JavaScript (from HTML application content), as described in
the description of the makeJavascriptSubclass() method.
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.
| checkStatus | () | method |
function checkStatus():void
Check 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 specialise this method by defining a checkStatus() method
in the "specializer" object.
| makeJavascriptSubclass | () | method |
function makeJavascriptSubclass(constructorFunction:Object):void
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. 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.
|
| start | () | method |
function start():void
Start the service monitor.
| stop | () | method |
function stop():void
Stop monitoring the service.
| toString | () | method |
function toString():String
Returns the string representation of the specified object. Returns
String — A string representation of the object.
|
| status | Event |
flash.events.StatusEvent
flash.events.Event.STATUS
Indicates that the service status has changed.
The value of the "code" property will be either "Service.available" or "Service.unavailable", but best practice is
to check the value of the ServiceMonitor.available property.
Send me an e-mail when comments are added to this page | Comment Report
Current page: http://livedocs.adobe.com/labs/air/1/jslr/air/net/ServiceMonitor.html