From 5f8de423f190bbb79a62f804151bc24824fa32d8 Mon Sep 17 00:00:00 2001 From: "Matt A. Tobin" Date: Fri, 2 Feb 2018 04:16:08 -0500 Subject: Add m-esr52 at 52.6.0 --- devtools/shared/apps/Simulator.jsm | 44 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 devtools/shared/apps/Simulator.jsm (limited to 'devtools/shared/apps/Simulator.jsm') diff --git a/devtools/shared/apps/Simulator.jsm b/devtools/shared/apps/Simulator.jsm new file mode 100644 index 000000000..d7d70842a --- /dev/null +++ b/devtools/shared/apps/Simulator.jsm @@ -0,0 +1,44 @@ +/* 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"; + +Components.utils.import("resource://devtools/shared/event-emitter.js"); + +/** + * TODO (Bug 1132453) The `Simulator` module is deprecated, and should be + * removed once all simulator addons stop using it (see bug 1132452). + * + * If you want to register, unregister, or otherwise deal with installed + * simulators, please use the `Simulators` module defined in: + * + * devtools/client/webide/modules/simulators.js + */ + +this.EXPORTED_SYMBOLS = ["Simulator"]; + +let Simulator = this.Simulator = { + _simulators: {}, + + register: function (name, simulator) { + // simulators register themselves as "Firefox OS X.Y" + this._simulators[name] = simulator; + this.emit("register", name); + }, + + unregister: function (name) { + delete this._simulators[name]; + this.emit("unregister", name); + }, + + availableNames: function () { + return Object.keys(this._simulators).sort(); + }, + + getByName: function (name) { + return this._simulators[name]; + }, +}; + +EventEmitter.decorate(Simulator); -- cgit v1.2.3