| Pakiet | air.net |
| Klasa | public dynamic class ServiceMonitor |
| Dziedziczenie | ServiceMonitor EventDispatcher Object |
| Podklasy | SocketMonitor, URLMonitor |
| Wersje środowiska wykonawczego: | AIR 1.0 |
Klasa ta jest zawarta w pliku aircore.swc. Program Adobe® Flash™ Builder™ ładuje tę klasę automatycznie podczas tworzenia projektu dla środowiska Adobe® AIR™. Pakiet Adobe® Flex™ SDK również zawiera plik aircore.swc, który należy dołączyć podczas kompilowania aplikacji, jeśli używany jest pakiet Flex SDK.
W programie Adobe® Flash® CS3 Professional tę klasę zawiera plik ServiceMonitorShim.swc. Aby używać klas z pakietu air.net, należy najpierw przeciągnąć składnik ServiceMonitorShim z panelu Składniki do Biblioteki, a następnie dodać poniższą instrukcję import do kodu ActionScript 3.0:
import air.net.*;
Aby korzystać z pakietu air.net w programie Adobe® Flash® Professional (CS4 lub nowsza wersja):
- Wybierz polecenie Plik > Ustawienia publikowania.
- W panelu Flash kliknij przycisk Ustawienia dla ActionScript 3.0. Wybierz opcję Ścieżka biblioteki.
- Kliknij przycisk Przejdź do pliku SWC. Przejdź do pliku Adobe Flash CSn/AIKn.n/frameworks/libs/air/aircore.swc w folderze instalacyjnym programu Adobe Flash Professional.
- Kliknij przycisk OK.
- Dodaj poniższą instrukcję
importdo kodu ActionScript 3.0:import air.net.*;
| Właściwość | Zdefiniowane przez | ||
|---|---|---|---|
| available : Boolean
Informuje, czy usługa jest obecnie uznawana za dostępną. Wartością początkową jest false. Wartość ta zmienia się, gdy w wyniku sprawdzenia stanu właściwość zostanie ustawiona na true lub gdy właściwość zostanie jawnie zainicjowana wartością true. Zwykle ta właściwość jest ustawiana przez implementację metody checkStatus() w podklasie lub klasie typu specializer, jednak jeśli aplikacja ma z niezależnego źródła informację o dostępności usługi (np. jakieś zadanie zakończyło się właśnie powodzeniem lub niepowodzeniem), właściwość można ustawić jawnie.
| ServiceMonitor | ||
![]() | constructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu. | Object | |
| lastStatusUpdate : Date [tylko do odczytu]
Czas ostatniej aktualizacji stanu. | ServiceMonitor | ||
| pollInterval : Number
Przedział czasowy, w milisekundach, między kolejnymi odpytaniami serwera. | ServiceMonitor | ||
| running : Boolean [tylko do odczytu]
Informuje, czy monitor został uruchomiony. | ServiceMonitor | ||
| Metoda | Zdefiniowane przez | ||
|---|---|---|---|
Tworzy obiekt ServiceMonitor. | ServiceMonitor | ||
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Rejestruje obiekt detektora zdarzeń w obiekcie EventDispatcher, dzięki czemu detektor będzie otrzymywał powiadomienia o zdarzeniu. | EventDispatcher | |
![]() |
Wywołuje zdarzenie, tj. kieruje je do przepływu zdarzeń. | EventDispatcher | |
![]() |
Sprawdza, czy obiekt EventDispatcher zawiera jakiekolwiek detektory zarejestrowane dla konkretnego typu zdarzeń. | EventDispatcher | |
![]() |
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | |
![]() |
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr. | Object | |
[statyczny]
Dodaje publiczne metody ServiceMonitor do prototypu funkcji konstruktora JavaScript. | ServiceMonitor | ||
![]() |
Wskazuje, czy określona właściwość istnieje i jest przeliczalna. | Object | |
![]() |
Usuwa detektor z obiektu EventDispatcher. | EventDispatcher | |
![]() |
Ustawia dostępność właściwości dynamicznej używanej w pętlach. | Object | |
Uruchamia monitor usług. | ServiceMonitor | ||
Zatrzymuje monitorowanie usługi. | ServiceMonitor | ||
![]() |
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych. | Object | |
[przesłanianie]
Zwraca ciąg reprezentujący określony obiekt. | ServiceMonitor | ||
![]() |
Zwraca pierwotną wartość dla określonego obiektu. | Object | |
![]() |
Sprawdza, czy detektor zdarzeń określonego typu jest zarejestrowany w tym obiekcie EventDispatcher lub jego elementach macierzystych. | EventDispatcher | |
| Metoda | Zdefiniowane przez | ||
|---|---|---|---|
Sprawdza stan usługi. | ServiceMonitor | ||
| Zdarzenie | Podsumowanie | Zdefiniowane przez | ||
|---|---|---|---|---|
![]() | [zdarzenie broadcast] Wywoływane, gdy program Flash Player lub aplikacja środowiska wykonawczego AIR uzyskuje fokus w systemie operacyjnym i przechodzi w stan aktywny. | EventDispatcher | ||
![]() | [zdarzenie broadcast] Wywoływane, gdy program Flash Player lub aplikacja AIR traci fokus w systemie operacyjnym i przechodzi w stan nieaktywny. | EventDispatcher | ||
| Określa, że stan usługi uległ zmianie. | ServiceMonitor | |||
available | właściwość |
available:Boolean| Wersje środowiska wykonawczego: | AIR 1.0 |
Informuje, czy usługa jest obecnie uznawana za dostępną.
Wartością początkową jest false. Wartość ta zmienia się, gdy w wyniku sprawdzenia stanu właściwość zostanie ustawiona na true lub gdy właściwość zostanie jawnie zainicjowana wartością true.
Zwykle ta właściwość jest ustawiana przez implementację metody checkStatus() w podklasie lub klasie typu specializer, jednak jeśli aplikacja ma z niezależnego źródła informację o dostępności usługi (np. jakieś zadanie zakończyło się właśnie powodzeniem lub niepowodzeniem), właściwość można ustawić jawnie.
Implementacja
public function get available():Boolean public function set available(value:Boolean):void lastStatusUpdate | właściwość |
pollInterval | właściwość |
pollInterval:Number| Wersje środowiska wykonawczego: | AIR 1.0 |
Przedział czasowy, w milisekundach, między kolejnymi operacjami pobierania danych z serwera.
Wartość zero powoduje, że serwer nie jest odpytywany okresowo, lecz tylko raz, niezwłocznie po wywołaniu funkcji start() oraz po zmianie stanu sieci.
Obiekt ServiceMonitor wywołuje zdarzenie status tylko po zmianie stanu usługi (a nie po upływie każdego przedziału czasowego odpytywania). Obiekt wywołuje również zdarzenie status w wyniku zmian stanu komunikacji sieciowej (niezależnie od przedziału czasu odpytywania).
Wartością domyślną jest 0.
Implementacja
public function get pollInterval():Number public function set pollInterval(value:Number):void running | właściwość |
ServiceMonitor | () | Konstruktor |
public function ServiceMonitor()| Wersje środowiska wykonawczego: | AIR 1.0 |
Tworzy obiekt ServiceMonitor.
Ta klasa zawiera zwykle podklasy, dzięki czemu może monitorować usługi określonych typów.
Po utworzeniu obiektu ServiceMonitor (lub instancji podklasy) należy wywołać metodę start(), aby rozpocząć monitorowanie stanu usługi.
Podobnie jak w przypadku obiektu Timer, kod wywołujący powinien przechowywać odwołanie do obiektu ServiceMonitor. W przeciwnym razie środowisko wykonawcze usunie obiekt i monitorowanie zostanie zakończone.
checkStatus | () | metoda |
protected function checkStatus():void| Wersje środowiska wykonawczego: | AIR 1.0 |
Sprawdza stan usługi.
Metoda przesłaniania podklasy służąca do sprawdzania stanu usługi.
Zwykle ta metoda inicjuje operację sieciową, której ukończenie lub niepowodzenie będzie podstawą do odpowiedniego ustawienia właściwości available.
Kod JavaScript może wyspecjalizować tę metodę, definiując metodę checkStatus() w obiekcie „specializer”.
makeJavascriptSubclass | () | metoda |
public static function makeJavascriptSubclass(constructorFunction:Object):void| Wersje środowiska wykonawczego: | AIR 1.0 |
Dodaje publiczne metody ServiceMonitor do prototypu funkcji konstruktora JavaScript.
Dodaje do prototypu funkcji konstruktora JavaScript funkcje przekazujące publiczne funkcje klasy ServiceMonitor obiektu ServiceMonitor. Takie rozwiązanie jest w przybliżeniu odpowiednikiem tworzenia normalnej podklasy języka JavaScript na podstawie klasy bazowej języka ActionScript.
Klasa JavaScript specjalizująca klasę ServiceMonitor miałaby następującą postać:
// 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);
}
Aby użyć klasy języka JavaScript:
var httpMon = new MyHTTPMonitor('http://www.adobe.com')
Należy koniecznie załadować pliki AIRAliases.js oraz aircore.swf ze znacznikami script.
Parametry
constructorFunction:Object — Właściwość prototype obiektu JavaScript. Na przykład, jeśli obiekt JavaScript używany jako obiekt typu specializer ma nazwę MyHTTPMonitor, należy jako wartość tego parametru przekazać MyHTTPMonitor.prototype.
|
start | () | metoda |
stop | () | metoda |
toString | () | metoda |
override public function toString():String| Wersje środowiska wykonawczego: | AIR 1.0 |
Zwraca ciąg znaków reprezentujący określony obiekt.
Uwaga: Metody klasy Object są tworzone dynamicznie w prototypie klasy Object. Do ponownego zdefiniowania tej metody w podklasie Object, nie należy używać słowa kluczowego override. Na przykład zamiast nadpisania klasy podstawowej dla podklasy Object implementowana jest funkcja function toString():String.
String — Ciąg znaków reprezentujący obiekt.
|
status | Zdarzenie |
flash.events.StatusEventwłaściwość StatusEvent.type =
flash.events.StatusEvent.STATUS| Wersje środowiska wykonawczego: | AIR 1.0 |
Wskazuje, że stan usługi uległ zmianie.
Właściwość code ma wartość "Service.available" albo "Service.unavailable", ale w praktyce sprawdza się wartość właściwości ServiceMonitor.available.
type obiektu zdarzenia status.
To zdarzenie ma następujące właściwości:
| Właściwość | Wartość |
|---|---|
bubbles | false |
cancelable | false; nie ma domyślnego zachowania, które można byłoby anulować. |
code | Opis stanu obiektu. |
currentTarget | Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń. |
level | Kategoria komunikatu, np. "status", "warning" lub "error". |
target | Obiekt informujący o swoim stanie. |
Tue Jun 12 2018, 12:06 PM Z
Ukryj dziedziczone właściwości publiczne
Pokaż dziedziczone właściwości publiczne