Bug 1524688: Part 20 - Convert URILoader components to static registration. r=smaug
☠☠ backed out by 3b1b94e39795 ☠ ☠
authorKris Maglione <maglione.k@gmail.com>
Tue, 29 Jan 2019 21:06:18 -0800
changeset 458993 4ed0cf6be580
parent 458992 d8efb5ed62b1
child 458994 4cbbb367ba0b
push id111909
push usermaglione.k@gmail.com
push dateThu, 14 Feb 2019 02:30:40 +0000
treeherdermozilla-inbound@81dc12cc9257 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerssmaug
bugs1524688
milestone67.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1524688: Part 20 - Convert URILoader components to static registration. r=smaug
browser/installer/package-manifest.in
mobile/android/installer/package-manifest.in
uriloader/exthandler/WebHandlerApp.jsm
uriloader/exthandler/components.conf
uriloader/exthandler/moz.build
uriloader/exthandler/nsWebHandlerApp.js
uriloader/exthandler/nsWebHandlerApp.manifest
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -220,22 +220,20 @@
 @RESPATH@/components/mozProtocolHandler.js
 @RESPATH@/components/mozProtocolHandler.manifest
 @RESPATH@/components/nsDefaultCLH.manifest
 @RESPATH@/components/nsDefaultCLH.js
 @RESPATH@/components/ContentPrefService2.manifest
 @RESPATH@/components/ContentPrefService2.js
 @RESPATH@/components/nsContentDispatchChooser.manifest
 @RESPATH@/components/nsContentDispatchChooser.js
+@RESPATH@/components/contentAreaDropListener.manifest
+@RESPATH@/components/contentAreaDropListener.js
 @RESPATH@/components/HandlerService.manifest
 @RESPATH@/components/HandlerService.js
-@RESPATH@/components/nsWebHandlerApp.manifest
-@RESPATH@/components/nsWebHandlerApp.js
-@RESPATH@/components/contentAreaDropListener.manifest
-@RESPATH@/components/contentAreaDropListener.js
 #ifdef XP_MACOSX
 @RESPATH@/browser/components/MacTouchBar.manifest
 @RESPATH@/browser/components/MacTouchBar.js
 #endif
 @RESPATH@/components/SyncComponents.manifest
 @RESPATH@/components/FxAccountsComponents.manifest
 @RESPATH@/components/FxAccountsPush.js
 @RESPATH@/components/CaptivePortalDetectComponents.manifest
--- a/mobile/android/installer/package-manifest.in
+++ b/mobile/android/installer/package-manifest.in
@@ -152,18 +152,16 @@
 
 @BINPATH@/components/ProcessSingleton.manifest
 @BINPATH@/components/nsURLFormatter.manifest
 @BINPATH@/components/nsURLFormatter.js
 @BINPATH@/components/ContentPrefService2.manifest
 @BINPATH@/components/ContentPrefService2.js
 @BINPATH@/components/HandlerService.manifest
 @BINPATH@/components/HandlerService.js
-@BINPATH@/components/nsWebHandlerApp.manifest
-@BINPATH@/components/nsWebHandlerApp.js
 @BINPATH@/components/contentAreaDropListener.manifest
 @BINPATH@/components/contentAreaDropListener.js
 @BINPATH@/components/servicesComponents.manifest
 @BINPATH@/components/servicesSettings.manifest
 @BINPATH@/components/RemoteSettingsComponents.js
 
 #ifndef MOZ_GECKOVIEW_JAR
 @BINPATH@/components/TelemetryStartup.js
rename from uriloader/exthandler/nsWebHandlerApp.js
rename to uriloader/exthandler/WebHandlerApp.jsm
--- a/uriloader/exthandler/nsWebHandlerApp.js
+++ b/uriloader/exthandler/WebHandlerApp.jsm
@@ -157,13 +157,9 @@ nsWebHandlerApp.prototype = {
   },
 
   //////////////////////////////////////////////////////////////////////////////
   //// nsISupports
 
   QueryInterface: ChromeUtils.generateQI([Ci.nsIWebHandlerApp, Ci.nsIHandlerApp])
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// Module
-
-this.NSGetFactory = XPCOMUtils.generateNSGetFactory([nsWebHandlerApp]);
-
+var EXPORTED_SYMBOLS = ["nsWebHandlerApp"];
new file mode 100644
--- /dev/null
+++ b/uriloader/exthandler/components.conf
@@ -0,0 +1,14 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# 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/.
+
+Classes = [
+    {
+        'cid': '{8b1ae382-51a9-4972-b930-56977a57919d}',
+        'contract_ids': ['@mozilla.org/uriloader/web-handler-app;1'],
+        'jsm': 'resource://gre/modules/WebHandlerApp.jsm',
+        'constructor': 'nsWebHandlerApp',
+    },
+]
--- a/uriloader/exthandler/moz.build
+++ b/uriloader/exthandler/moz.build
@@ -105,18 +105,24 @@ if CONFIG['MOZ_ENABLE_DBUS']:
     ]
     EXPORTS.mozilla += [
         'DBusHelpers.h',
     ]
 
 EXTRA_COMPONENTS += [
     'HandlerService.js',
     'HandlerService.manifest',
-    'nsWebHandlerApp.js',
-    'nsWebHandlerApp.manifest',
+]
+
+EXTRA_JS_MODULES += [
+    'WebHandlerApp.jsm',
+]
+
+XPCOM_MANIFESTS += [
+    'components.conf',
 ]
 
 IPDL_SOURCES += [
     'PExternalHelperApp.ipdl',
     'PHandlerService.ipdl',
 ]
 
 include('/ipc/chromium/chromium-config.mozbuild')
deleted file mode 100644
--- a/uriloader/exthandler/nsWebHandlerApp.manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-component {8b1ae382-51a9-4972-b930-56977a57919d} nsWebHandlerApp.js
-contract @mozilla.org/uriloader/web-handler-app;1 {8b1ae382-51a9-4972-b930-56977a57919d}