gecko-dev/dom/presentation/PresentationNetworkHelper.js
Jim Chen 23c3c2e325 Bug 1323576 - Convert GeckoNetworkManager events to bundle events; r=sebastian
Convert "Wifi:Enable" and "Wifi:GetIPAddress" events to GeckoBundle
events. Use the UI thread because we do things like starting activities
and using system services, which are best done on the UI thread.
2016-12-18 08:10:18 -05:00

29 lines
1.1 KiB
JavaScript

// -*- Mode: js2; tab-width: 2; indent-tabs-mode: nil; js2-basic-offset: 2; js2-skip-preprocessor-directives: t; -*-
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
const { classes: Cc, interfaces: Ci, utils: Cu } = Components;
Cu.import("resource://gre/modules/Messaging.jsm");
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
const NETWORKHELPER_CID = Components.ID("{5fb96caa-6d49-4f6b-9a4b-65dd0d51f92d}");
function PresentationNetworkHelper() {}
PresentationNetworkHelper.prototype = {
classID: NETWORKHELPER_CID,
QueryInterface: XPCOMUtils.generateQI([Ci.nsIPresentationNetworkHelper]),
getWifiIPAddress: function(aListener) {
EventDispatcher.instance.sendRequestForResult({type: "Wifi:GetIPAddress"})
.then(result => aListener.onGetWifiIPAddress(result),
err => aListener.onError(err));
}
};
this.NSGetFactory = XPCOMUtils.generateNSGetFactory([PresentationNetworkHelper]);