Package | air.net |
Class | public dynamic class ServiceMonitor |
Inheritance | ServiceMonitor EventDispatcher Object |
Subclasses | SocketMonitor, URLMonitor |
Runtime Versions: | AIR 1.0 |
This class is included in the aircore.swc file. Adobe® Flash™ Builder™ loads this class automatically when you create a project for Adobe® AIR™. Adobe® Flex™ SDK also includes this aircore.swc file, which you should include when compiling the application if you are using Flex SDK.
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:
import air.net.*;
To use air.net package in Adobe® Flash® Professional (CS4 or higher):
- 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 CSn/AIKn.n/frameworks/libs/air/aircore.swc file in the Adobe Flash Professional installation folder.
- Click the OK button.
- Add the following
import
statement to your ActionScript 3.0 code:import air.net.*;
More examples
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 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 | ||
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 | ||
Dispatches an event into the event flow. | EventDispatcher | ||
Checks whether the EventDispatcher object has any listeners registered for a specific type
of event. | EventDispatcher | ||
Indicates whether an object has a specified property defined. | Object | ||
Indicates whether an instance of the Object class is in the prototype chain of the object specified
as the parameter. | Object | ||
[static]
Adds public ServiceMonitor methods to a JavaScript constructor function's prototype. | ServiceMonitor | ||
Indicates whether the specified property exists and is enumerable. | Object | ||
Removes a listener from the EventDispatcher object. | EventDispatcher | ||
Sets the availability of a dynamic property for loop operations. | Object | ||
Starts the service monitor. | ServiceMonitor | ||
Stops monitoring the service. | ServiceMonitor | ||
Returns the string representation of this object, formatted according to locale-specific conventions. | Object | ||
[override]
Returns the string representation of the specified object. | ServiceMonitor | ||
Returns the primitive value of the specified object. | Object | ||
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 | ||
---|---|---|---|
Checks the status of the service. | ServiceMonitor |
Event | Summary | Defined By | ||
---|---|---|---|---|
[broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active. | EventDispatcher | |||
[broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive. | EventDispatcher | |||
Indicates that the service status has changed. | ServiceMonitor |
available | property |
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):void
lastStatusUpdate | property |
pollInterval | property |
pollInterval: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):void
running | property |
ServiceMonitor | () | Constructor |
public 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.
checkStatus | () | method |
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.
makeJavascriptSubclass | () | method |
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 aircore.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 |
stop | () | method |
toString | () | method |
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.
String — A string representation of the object.
|
status | Event |
flash.events.StatusEvent
property 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.
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. |
Wed Nov 21 2018, 06:34 AM -08:00