Bug 1003095 - Refactor transport.js to be worker friendly;r=past

This commit is contained in:
Eddy Bruel 2014-05-30 16:43:01 +02:00
parent 1064971045
commit 389e9edbab
4 changed files with 25 additions and 21 deletions

View File

@ -25,16 +25,17 @@
*/
const { Cc, Ci, Cu } = require("chrome");
const { Promise: promise } =
Cu.import("resource://gre/modules/Promise.jsm", {});
const Heritage = require("sdk/core/heritage");
const DevToolsUtils = require("devtools/toolkit/DevToolsUtils");
const { dumpn, dumpv } = DevToolsUtils;
const StreamUtils = require("devtools/toolkit/transport/stream-utils");
const unicodeConverter = Cc["@mozilla.org/intl/scriptableunicodeconverter"]
.createInstance(Ci.nsIScriptableUnicodeConverter);
unicodeConverter.charset = "UTF-8";
DevToolsUtils.defineLazyGetter(this, "unicodeConverter", () => {
const unicodeConverter = Cc["@mozilla.org/intl/scriptableunicodeconverter"]
.createInstance(Ci.nsIScriptableUnicodeConverter);
unicodeConverter.charset = "UTF-8";
return unicodeConverter;
});
// The transport's previous check ensured the header length did not exceed 20
// characters. Here, we opt for the somewhat smaller, but still large limit of

View File

@ -5,15 +5,18 @@
"use strict";
const { Ci, Cc, Cu, Cr, CC } = require("chrome");
const { Promise: promise } =
Cu.import("resource://gre/modules/Promise.jsm", {});
const Services = require("Services");
const DevToolsUtils = require("devtools/toolkit/DevToolsUtils");
const { dumpv } = DevToolsUtils;
const IOUtil = Cc["@mozilla.org/io-util;1"].getService(Ci.nsIIOUtil);
const ScriptableInputStream = CC("@mozilla.org/scriptableinputstream;1",
"nsIScriptableInputStream", "init");
DevToolsUtils.defineLazyGetter(this, "IOUtil", () => {
return Cc["@mozilla.org/io-util;1"].getService(Ci.nsIIOUtil);
});
DevToolsUtils.defineLazyGetter(this, "ScriptableInputStream", () => {
return CC("@mozilla.org/scriptableinputstream;1",
"nsIScriptableInputStream", "init");
});
const BUFFER_SIZE = 0x8000;

View File

@ -8,14 +8,14 @@
// an SDK module (see bug 1000814)
(function (factory) { // Module boilerplate
if (this.module && module.id.indexOf("transport") >= 0) { // require
factory(require, exports);
factory.call(this, require, exports);
} else { // loadSubScript
if (this.require) {
factory(require, this);
factory.call(this, require, this);
} else {
const Cu = Components.utils;
const { devtools } = Cu.import("resource://gre/modules/devtools/Loader.jsm", {});
factory(devtools.require, this);
factory.call(this, devtools.require, this);
}
}
}).call(this, function (require, exports) {
@ -23,8 +23,6 @@
"use strict";
const { Cc, Ci, Cr, Cu, CC } = require("chrome");
const { Promise: promise } =
Cu.import("resource://gre/modules/Promise.jsm", {});
const Services = require("Services");
const DevToolsUtils = require("devtools/toolkit/DevToolsUtils");
const { dumpn, dumpv } = DevToolsUtils;
@ -32,9 +30,14 @@ const StreamUtils = require("devtools/toolkit/transport/stream-utils");
const { Packet, JSONPacket, BulkPacket } =
require("devtools/toolkit/transport/packets");
const Pipe = CC("@mozilla.org/pipe;1", "nsIPipe", "init");
const ScriptableInputStream = CC("@mozilla.org/scriptableinputstream;1",
"nsIScriptableInputStream", "init");
DevToolsUtils.defineLazyGetter(this, "Pipe", () => {
return CC("@mozilla.org/pipe;1", "nsIPipe", "init");
});
DevToolsUtils.defineLazyGetter(this, "ScriptableInputStream", () => {
return CC("@mozilla.org/scriptableinputstream;1",
"nsIScriptableInputStream", "init");
});
const PACKET_HEADER_MAX = 200;

View File

@ -102,9 +102,6 @@ function createModule(id) {
//
// TODO: Remove this when the whitelist becomes empty
let chromeWhitelist = [
"devtools/toolkit/transport/transport",
"devtools/toolkit/transport/stream-utils",
"devtools/toolkit/transport/packets",
"devtools/toolkit/DevToolsUtils",
"devtools/toolkit/event-emitter",
"devtools/styleinspector/css-logic",