mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-30 20:37:31 +09:00
parent
51025a5a81
commit
fe9637c0f8
6 changed files with 0 additions and 275 deletions
|
|
@ -1,99 +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/. */
|
||||
|
||||
"use strict;"
|
||||
|
||||
// Note that this module used to supervise the step-by-step migration from
|
||||
// a legacy Sync account to a FxA-based Sync account. In bug 1205928, this
|
||||
// changed to automatically disconnect the legacy Sync account.
|
||||
|
||||
const {classes: Cc, interfaces: Ci, results: Cr, utils: Cu} = Components;
|
||||
|
||||
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
|
||||
Cu.import("resource://gre/modules/Log.jsm");
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
|
||||
XPCOMUtils.defineLazyGetter(this, "WeaveService", function() {
|
||||
return Cc["@mozilla.org/weave/service;1"]
|
||||
.getService(Components.interfaces.nsISupports)
|
||||
.wrappedJSObject;
|
||||
});
|
||||
|
||||
XPCOMUtils.defineLazyModuleGetter(this, "Weave",
|
||||
"resource://services-sync/main.js");
|
||||
|
||||
// We send this notification when we perform the disconnection. The browser
|
||||
// window will show a one-off notification bar.
|
||||
const OBSERVER_STATE_CHANGE_TOPIC = "fxa-migration:state-changed";
|
||||
|
||||
const OBSERVER_TOPICS = [
|
||||
"xpcom-shutdown",
|
||||
"weave:eol",
|
||||
];
|
||||
|
||||
function Migrator() {
|
||||
// Leave the log-level as Debug - Sync will setup log appenders such that
|
||||
// these messages generally will not be seen unless other log related
|
||||
// prefs are set.
|
||||
this.log.level = Log.Level.Debug;
|
||||
|
||||
for (let topic of OBSERVER_TOPICS) {
|
||||
Services.obs.addObserver(this, topic, false);
|
||||
}
|
||||
}
|
||||
|
||||
Migrator.prototype = {
|
||||
log: Log.repository.getLogger("Sync.SyncMigration"),
|
||||
|
||||
finalize() {
|
||||
for (let topic of OBSERVER_TOPICS) {
|
||||
Services.obs.removeObserver(this, topic);
|
||||
}
|
||||
},
|
||||
|
||||
observe(subject, topic, data) {
|
||||
this.log.debug("observed " + topic);
|
||||
switch (topic) {
|
||||
case "xpcom-shutdown":
|
||||
this.finalize();
|
||||
break;
|
||||
|
||||
default:
|
||||
// this notification when configured with legacy Sync means we want to
|
||||
// disconnect
|
||||
if (!WeaveService.fxAccountsEnabled) {
|
||||
this.log.info("Disconnecting from legacy Sync");
|
||||
// Set up an observer for when the disconnection is complete.
|
||||
let observe;
|
||||
Services.obs.addObserver(observe = () => {
|
||||
this.log.info("observed that startOver is complete");
|
||||
Services.obs.removeObserver(observe, "weave:service:start-over:finish");
|
||||
// Send the notification for the UI.
|
||||
Services.obs.notifyObservers(null, OBSERVER_STATE_CHANGE_TOPIC, null);
|
||||
}, "weave:service:start-over:finish", false);
|
||||
|
||||
// Do the disconnection.
|
||||
Weave.Service.startOver();
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
get learnMoreLink() {
|
||||
try {
|
||||
var url = Services.prefs.getCharPref("app.support.baseURL");
|
||||
} catch (err) {
|
||||
return null;
|
||||
}
|
||||
url += "sync-upgrade";
|
||||
let sb = Services.strings.createBundle("chrome://weave/locale/services/sync.properties");
|
||||
return {
|
||||
text: sb.GetStringFromName("sync.eol.learnMore.label"),
|
||||
href: Services.urlFormatter.formatURL(url),
|
||||
};
|
||||
},
|
||||
};
|
||||
|
||||
// We expose a singleton
|
||||
this.EXPORTED_SYMBOLS = ["fxaMigrator"];
|
||||
var fxaMigrator = new Migrator();
|
||||
Loading…
Add table
Add a link
Reference in a new issue