Bug 1307456 - Remove dom/newapps r=baku draft
authorValentin Gosu <valentin.gosu@gmail.com>
Mon, 31 Oct 2016 15:21:11 +0100
changeset 431760 7d7c8e4ec4a68f52b5c9325d964c25d2d2c7f265
parent 431640 e3279760cd977aac30bd9e8032d3ee71f55d2a67
child 431761 25ac286f8b0b69dfb0c80966a78926751f955284
push id34102
push uservalentin.gosu@gmail.com
push dateMon, 31 Oct 2016 14:36:30 +0000
reviewersbaku
bugs1307456
milestone52.0a1
Bug 1307456 - Remove dom/newapps r=baku MozReview-Commit-ID: BjT3IB9AK0E
b2g/installer/package-manifest.in
browser/installer/package-manifest.in
dom/moz.build
dom/newapps/InstallPackagedWebapp.js
dom/newapps/InstallPackagedWebapp.manifest
dom/newapps/interfaces/moz.build
dom/newapps/interfaces/nsIInstallPackagedWebapp.idl
dom/newapps/moz.build
dom/newapps/test/xpcshell/test_install.js
dom/newapps/test/xpcshell/xpcshell.ini
mobile/android/installer/package-manifest.in
--- a/b2g/installer/package-manifest.in
+++ b/b2g/installer/package-manifest.in
@@ -144,17 +144,16 @@
 @RESPATH@/components/content_xslt.xpt
 @RESPATH@/components/cookie.xpt
 @RESPATH@/components/directory.xpt
 @RESPATH@/components/diskspacewatcher.xpt
 @RESPATH@/components/docshell.xpt
 @RESPATH@/components/dom.xpt
 @RESPATH@/components/dom_activities.xpt
 @RESPATH@/components/dom_apps.xpt
-@RESPATH@/components/dom_newapps.xpt
 @RESPATH@/components/dom_audiochannel.xpt
 @RESPATH@/components/dom_base.xpt
 @RESPATH@/components/dom_system.xpt
 @RESPATH@/components/dom_workers.xpt
 #ifdef MOZ_WIDGET_GONK
 @RESPATH@/components/dom_wifi.xpt
 @RESPATH@/components/dom_system_gonk.xpt
 #endif
@@ -609,20 +608,16 @@
 @RESPATH@/components/privatebrowsing.xpt
 @RESPATH@/components/PrivateBrowsing.manifest
 @RESPATH@/components/PrivateBrowsingTrackingProtectionWhitelist.js
 
 ; Security Reports
 @RESPATH@/components/SecurityReporter.manifest
 @RESPATH@/components/SecurityReporter.js
 
-; Signed Packaged Content
-@RESPATH@/components/InstallPackagedWebapp.manifest
-@RESPATH@/components/InstallPackagedWebapp.js
-
 ; ANGLE on Win32
 #ifdef XP_WIN32
 #ifndef HAVE_64BIT_BUILD
 @BINPATH@/libEGL.dll
 @BINPATH@/libGLESv2.dll
 #endif
 #endif
 
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -177,17 +177,16 @@
 @RESPATH@/components/content_webrtc.xpt
 #endif
 @RESPATH@/components/content_xslt.xpt
 @RESPATH@/components/cookie.xpt
 @RESPATH@/components/directory.xpt
 @RESPATH@/components/docshell.xpt
 @RESPATH@/components/dom.xpt
 @RESPATH@/components/dom_apps.xpt
-@RESPATH@/components/dom_newapps.xpt
 @RESPATH@/components/dom_base.xpt
 @RESPATH@/components/dom_system.xpt
 #ifdef MOZ_B2G_BT
 @RESPATH@/components/dom_bluetooth.xpt
 #endif
 @RESPATH@/components/dom_canvas.xpt
 @RESPATH@/components/dom_core.xpt
 @RESPATH@/components/dom_css.xpt
@@ -584,20 +583,16 @@
 @RESPATH@/components/privatebrowsing.xpt
 @RESPATH@/components/PrivateBrowsing.manifest
 @RESPATH@/components/PrivateBrowsingTrackingProtectionWhitelist.js
 
 ; Security Reports
 @RESPATH@/components/SecurityReporter.manifest
 @RESPATH@/components/SecurityReporter.js
 
-; Signed Packaged Content
-@RESPATH@/components/InstallPackagedWebapp.manifest
-@RESPATH@/components/InstallPackagedWebapp.js
-
 ; ANGLE GLES-on-D3D rendering library
 #ifdef MOZ_ANGLE_RENDERER
 @BINPATH@/libEGL.dll
 @BINPATH@/libGLESv2.dll
 
 #ifdef MOZ_D3DCOMPILER_VISTA_DLL
 @BINPATH@/@MOZ_D3DCOMPILER_VISTA_DLL@
 #endif
--- a/dom/moz.build
+++ b/dom/moz.build
@@ -97,17 +97,16 @@ DIRS += [
     'inputmethod',
     'webidl',
     'xbl',
     'xml',
     'xslt',
     'xul',
     'manifest',
     'vr',
-    'newapps',
     'u2f',
     'console',
     'performance',
     'xhr',
 ]
 
 if CONFIG['OS_ARCH'] == 'WINNT':
     DIRS += ['plugins/ipc/hangui']
deleted file mode 100644
--- a/dom/newapps/InstallPackagedWebapp.js
+++ /dev/null
@@ -1,63 +0,0 @@
-/* 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/. */
-
-const { classes: Cc, interfaces: Ci, utils: Cu, results: Cr, Constructor: CC } = Components;
-
-Cu.import("resource://gre/modules/XPCOMUtils.jsm");
-Cu.import("resource://gre/modules/AppsUtils.jsm");
-
-XPCOMUtils.defineLazyModuleGetter(this, "PermissionsInstaller",
-    "resource://gre/modules/PermissionsInstaller.jsm");
-
-function debug(aMsg) {
-  dump("-*-*- InstallPackagedWebapps.js : " + aMsg + "\n");
-}
-
-function InstallPackagedWebapp() {
-}
-
-InstallPackagedWebapp.prototype = {
-  QueryInterface: XPCOMUtils.generateQI([Ci.nsIInstallPackagedWebapp]),
-  classID:          Components.ID("{5cc6554a-5421-4a5e-b8c2-c62e8b7f4f3f}"),
-
-  /**
-   * Install permissions for signed packaged web content
-   * @param string manifestContent
-   *        The manifest content of the cached package.
-   * @param string aOrigin
-   *        The package origin.
-   * @param string aManifestURL
-   *        The manifest URL of the package.
-   * @returns boolean
-   **/
-
-  installPackagedWebapp: function(aManifestContent, aOrigin, aManifestURL) {
-
-    try {
-      let isSuccess = true;
-      let manifest = JSON.parse(aManifestContent);
-
-      PermissionsInstaller.installPermissions({
-        manifest: manifest,
-        manifestURL: aManifestURL,
-        origin: aOrigin,
-        isPreinstalled: false,
-        isCachedPackage: true
-      }, false, function() {
-        Cu.reportError(ex);
-      });
-
-      // TODO Bug 1206058 - Register app handlers (system msg) on navigation
-      // to signed packages.
-
-      return isSuccess;
-    }
-    catch(ex) {
-      Cu.reportError(ex);
-      return false;
-    }
-  },
-};
-
-this.NSGetFactory = XPCOMUtils.generateNSGetFactory([InstallPackagedWebapp]);
deleted file mode 100644
--- a/dom/newapps/InstallPackagedWebapp.manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-component {5cc6554a-5421-4a5e-b8c2-c62e8b7f4f3f} InstallPackagedWebapp.js
-contract  @mozilla.org/newapps/installpackagedwebapp;1 {5cc6554a-5421-4a5e-b8c2-c62e8b7f4f3f}
deleted file mode 100644
--- a/dom/newapps/interfaces/moz.build
+++ /dev/null
@@ -1,11 +0,0 @@
-# -*- 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/.
-
-XPIDL_SOURCES += [
-    'nsIInstallPackagedWebapp.idl'
-]
-
-XPIDL_MODULE = 'dom_newapps'
deleted file mode 100644
--- a/dom/newapps/interfaces/nsIInstallPackagedWebapp.idl
+++ /dev/null
@@ -1,13 +0,0 @@
-/* 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/. */
-
-#include "nsISupports.idl"
-
-[scriptable, uuid(3b4b69a0-56dc-11e5-a837-0800200c9a66)]
-interface nsIInstallPackagedWebapp : nsISupports
-{
-  boolean installPackagedWebapp(in string aManifestContent,
-                                in string aOrigin,
-                                in string aManifestURL);
-};
deleted file mode 100644
--- a/dom/newapps/moz.build
+++ /dev/null
@@ -1,14 +0,0 @@
-# -*- 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/.
-
-DIRS += ['interfaces']
-
-EXTRA_COMPONENTS += [
-    'InstallPackagedWebapp.js',
-    'InstallPackagedWebapp.manifest',
-]
-
-XPCSHELL_TESTS_MANIFESTS += ['test/xpcshell/xpcshell.ini']
deleted file mode 100644
--- a/dom/newapps/test/xpcshell/test_install.js
+++ /dev/null
@@ -1,123 +0,0 @@
-/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-/* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
-
-'use strict';
-
-var { classes: Cc, interfaces: Ci, utils: Cu } = Components;
-
-Cu.import('resource://gre/modules/XPCOMUtils.jsm');
-Cu.import('resource://gre/modules/Services.jsm');
-Cu.import("resource://gre/modules/PermissionSettings.jsm");
-Cu.import("resource://gre/modules/PermissionsTable.jsm");
-Cu.import("resource://gre/modules/AppsUtils.jsm");
-
-const mod = Cc['@mozilla.org/newapps/installpackagedwebapp;1']
-                  .getService(Ci.nsIInstallPackagedWebapp);
-
-XPCOMUtils.defineLazyServiceGetter(this,
-                                   "appsService",
-                                   "@mozilla.org/AppsService;1",
-                                   "nsIAppsService");
-
-function run_test() {
-
-  do_get_profile();
-
-  let manifestWithPerms = {
-    name: "Test App",
-    launch_path: "/index.html",
-    type: "privileged",
-    permissions: {
-      "alarms": { },
-      "wifi-manage": { },
-      "tcp-socket": { },
-      "desktop-notification": { },
-      "geolocation": { },
-    },
-  };
-
-  let manifestNoPerms = {
-    name: "Test App",
-    launch_path: "/index.html",
-    type: "privileged",
-  };
-
-  let appStatus = "privileged";
-
-  // Triggering error due to bad manifest
-  let origin = "";
-  let manifestURL = "";
-  let manifestString = "boum";
-
-  let res = mod.installPackagedWebapp(manifestString, origin, manifestURL);
-  equal(res, false);
-
-  // Install a package with permissions
-  origin = "http://test.com^appId=1019&inBrowser=1";
-  manifestURL = "http://test.com/manifest.json";
-  manifestString = JSON.stringify(manifestWithPerms);
-  let manifestHelper = new ManifestHelper(manifestWithPerms, origin, manifestURL);
-
-  cleanDB(manifestHelper, origin, manifestURL);
-
-  res = mod.installPackagedWebapp(manifestString, origin, manifestURL);
-  equal(res, true);
-  checkPermissions(manifestHelper, origin, manifestURL, appStatus);
-
-  // Install a package with permissions
-  origin = "http://test.com";
-  manifestHelper = new ManifestHelper(manifestWithPerms, origin, manifestURL);
-
-  cleanDB(manifestHelper, origin, manifestURL);
-
-  res = mod.installPackagedWebapp(manifestString, origin, manifestURL);
-  equal(res, true);
-  checkPermissions(manifestHelper, origin, manifestURL, appStatus);
-
-
-  // Install a package with no permission
-  origin = "http://bar.com^appId=1337&inBrowser=1";
-  manifestURL = "http://bar.com/manifest.json";
-  manifestString = JSON.stringify(manifestNoPerms);
-  manifestHelper = new ManifestHelper(manifestNoPerms, origin, manifestURL);
-
-  cleanDB(manifestHelper, origin, manifestURL);
-
-  res = mod.installPackagedWebapp(manifestString, origin, manifestURL);
-  equal(res, true);
-  checkPermissions(manifestHelper, origin, manifestURL, appStatus);
-}
-
-// Cleaning permissions database before running a test
-function cleanDB(manifestHelper, origin, manifestURL) {
-  for (let permName in manifestHelper.permissions) {
-    PermissionSettingsModule.removePermission(permName, manifestURL, origin, "", true);
-  }
-}
-
-// Check permissions are correctly set in the database
-function checkPermissions(manifestHelper, origin, manifestURL, appStatus) {
-  let perm;
-  for (let permName in manifestHelper.permissions) {
-    let permValue = PermissionSettingsModule.getPermission(
-        permName, manifestURL, origin, "", true);
-    switch (PermissionsTable[permName][appStatus]) {
-      case Ci.nsIPermissionManager.UNKNOWN_ACTION:
-        perm = "unknown";
-        break;
-      case Ci.nsIPermissionManager.ALLOW_ACTION:
-        perm = "allow";
-        break;
-      case Ci.nsIPermissionManager.DENY_ACTION:
-        perm = "deny";
-        break;
-      case Ci.nsIPermissionManager.PROMPT_ACTION:
-        perm = "prompt";
-        break;
-      default:
-        break;
-    }
-    equal(permValue, perm);
-  }
-}
deleted file mode 100644
--- a/dom/newapps/test/xpcshell/xpcshell.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[DEFAULT]
-head =
-tail =
-
-[test_install.js]
--- a/mobile/android/installer/package-manifest.in
+++ b/mobile/android/installer/package-manifest.in
@@ -110,17 +110,16 @@
 @BINPATH@/components/content_html.xpt
 @BINPATH@/components/content_webrtc.xpt
 @BINPATH@/components/content_xslt.xpt
 @BINPATH@/components/cookie.xpt
 @BINPATH@/components/directory.xpt
 @BINPATH@/components/docshell.xpt
 @BINPATH@/components/dom.xpt
 @BINPATH@/components/dom_apps.xpt
-@BINPATH@/components/dom_newapps.xpt
 @BINPATH@/components/dom_base.xpt
 @BINPATH@/components/dom_canvas.xpt
 @BINPATH@/components/dom_core.xpt
 @BINPATH@/components/dom_css.xpt
 @BINPATH@/components/dom_events.xpt
 @BINPATH@/components/dom_geolocation.xpt
 @BINPATH@/components/dom_media.xpt
 @BINPATH@/components/dom_network.xpt
@@ -369,19 +368,16 @@
 @BINPATH@/components/htmlMenuBuilder.js
 @BINPATH@/components/htmlMenuBuilder.manifest
 
 @BINPATH@/components/SystemMessageInternal.js
 @BINPATH@/components/SystemMessageManager.js
 @BINPATH@/components/SystemMessageCache.js
 @BINPATH@/components/SystemMessageManager.manifest
 
-@BINPATH@/components/InstallPackagedWebapp.manifest
-@BINPATH@/components/InstallPackagedWebapp.js
-
 #ifdef MOZ_WEBRTC
 @BINPATH@/components/PeerConnection.js
 @BINPATH@/components/PeerConnection.manifest
 #endif
 
 @BINPATH@/components/CaptivePortalDetectComponents.manifest
 @BINPATH@/components/captivedetect.js