Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: assets/js/FilterStorage.jsm

Issue 6590816134889472: Noissue - Removed unused assets (Closed)
Patch Set: Created Oct. 14, 2014, 9:51 a.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « assets/js/FilterNotifier.jsm ('k') | assets/js/Matcher.jsm » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: assets/js/FilterStorage.jsm
diff --git a/assets/js/FilterStorage.jsm b/assets/js/FilterStorage.jsm
deleted file mode 100755
index 504b18037fed26cce646fb14aa8ac376d713a721..0000000000000000000000000000000000000000
--- a/assets/js/FilterStorage.jsm
+++ /dev/null
@@ -1,556 +0,0 @@
-/*
- * This file is part of Adblock Plus <http://adblockplus.org/>,
- * Copyright (C) 2006-2014 Eyeo GmbH
- *
- * Adblock Plus is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 3 as
- * published by the Free Software Foundation.
- *
- * Adblock Plus is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-//
-// This file has been generated automatically from Adblock Plus source code
-//
-
-(function (_patchFunc11) {
- const formatVersion = 4;
- var FilterStorage = {
- get formatVersion() {
- return formatVersion;
- },
- get sourceFile() {
- var file = null;
- if (Prefs.patternsfile) {
- file = Utils.resolveFilePath(Prefs.patternsfile);
- }
- if (!file) {
- file = Utils.resolveFilePath(Prefs.data_directory);
- if (file)
- file.append("patterns.ini");
- }
- if (!file) {
- try {
- file = Utils.resolveFilePath(Prefs.defaultBranch.getCharPref("data_directory"));
- if (file)
- file.append("patterns.ini");
- }
- catch (e){}
- }
- if (!file)
- Cu.reportError("Adblock Plus: Failed to resolve filter file location from extensions.adblockplus.patternsfile preference");
- this.__defineGetter__("sourceFile", function () {
- return file;
- });
- return this.sourceFile;
- }
- ,
- fileProperties: {
- __proto__: null
- },
- subscriptions: [],
- knownSubscriptions: {
- __proto__: null
- },
- getGroupForFilter: function (filter) {
- var generalSubscription = null;
- for (var _loopIndex0 = 0;
- _loopIndex0 < FilterStorage.subscriptions.length; ++ _loopIndex0) {
- var subscription = FilterStorage.subscriptions[_loopIndex0];
- if (subscription instanceof SpecialSubscription) {
- if (subscription.isDefaultFor(filter))
- return subscription;
- if (!generalSubscription && (!subscription.defaults || !subscription.defaults.length))
- generalSubscription = subscription;
- }
- }
- return generalSubscription;
- }
- ,
- addSubscription: function (subscription, silent) {
- if (subscription.url in FilterStorage.knownSubscriptions)
- return ;
- FilterStorage.subscriptions.push(subscription);
- FilterStorage.knownSubscriptions[subscription.url] = subscription;
- addSubscriptionFilters(subscription);
- if (!silent)
- FilterNotifier.triggerListeners("subscription.added", subscription);
- }
- ,
- removeSubscription: function (subscription, silent) {
- for (var i = 0;
- i < FilterStorage.subscriptions.length; i++) {
- if (FilterStorage.subscriptions[i].url == subscription.url) {
- removeSubscriptionFilters(subscription);
- FilterStorage.subscriptions.splice(i--, 1);
- delete FilterStorage.knownSubscriptions[subscription.url];
- if (!silent)
- FilterNotifier.triggerListeners("subscription.removed", subscription);
- return ;
- }
- }
- }
- ,
- moveSubscription: function (subscription, insertBefore) {
- var currentPos = FilterStorage.subscriptions.indexOf(subscription);
- if (currentPos < 0)
- return ;
- var newPos = insertBefore ? FilterStorage.subscriptions.indexOf(insertBefore) : -1;
- if (newPos < 0)
- newPos = FilterStorage.subscriptions.length;
- if (currentPos < newPos)
- newPos--;
- if (currentPos == newPos)
- return ;
- FilterStorage.subscriptions.splice(currentPos, 1);
- FilterStorage.subscriptions.splice(newPos, 0, subscription);
- FilterNotifier.triggerListeners("subscription.moved", subscription);
- }
- ,
- updateSubscriptionFilters: function (subscription, filters) {
- removeSubscriptionFilters(subscription);
- subscription.oldFilters = subscription.filters;
- subscription.filters = filters;
- addSubscriptionFilters(subscription);
- FilterNotifier.triggerListeners("subscription.updated", subscription);
- delete subscription.oldFilters;
- if (subscription instanceof SpecialSubscription && !subscription.filters.length && subscription.disabled)
- subscription.disabled = false;
- }
- ,
- addFilter: function (filter, subscription, position, silent) {
- if (!subscription) {
- if (filter.subscriptions.some(function (s) {
- return s instanceof SpecialSubscription;
- }))
- return ;
- subscription = FilterStorage.getGroupForFilter(filter);
- }
- if (!subscription) {
- subscription = SpecialSubscription.createForFilter(filter);
- this.addSubscription(subscription);
- return ;
- }
- if (typeof position == "undefined")
- position = subscription.filters.length;
- if (filter.subscriptions.indexOf(subscription) < 0)
- filter.subscriptions.push(subscription);
- subscription.filters.splice(position, 0, filter);
- if (!silent)
- FilterNotifier.triggerListeners("filter.added", filter, subscription, position);
- }
- ,
- removeFilter: function (filter, subscription, position) {
- var subscriptions = (subscription ? [subscription] : filter.subscriptions.slice());
- for (var i = 0;
- i < subscriptions.length; i++) {
- var subscription = subscriptions[i];
- if (subscription instanceof SpecialSubscription) {
- var positions = [];
- if (typeof position == "undefined") {
- var index = -1;
- do {
- index = subscription.filters.indexOf(filter, index + 1);
- if (index >= 0)
- positions.push(index);
- }
- while (index >= 0);
- }
- else
- positions.push(position);
- for (var j = positions.length - 1;
- j >= 0; j--) {
- var position = positions[j];
- if (subscription.filters[position] == filter) {
- subscription.filters.splice(position, 1);
- if (subscription.filters.indexOf(filter) < 0) {
- var index = filter.subscriptions.indexOf(subscription);
- if (index >= 0)
- filter.subscriptions.splice(index, 1);
- }
- FilterNotifier.triggerListeners("filter.removed", filter, subscription, position);
- }
- }
- }
- }
- }
- ,
- moveFilter: function (filter, subscription, oldPosition, newPosition) {
- if (!(subscription instanceof SpecialSubscription) || subscription.filters[oldPosition] != filter)
- return ;
- newPosition = Math.min(Math.max(newPosition, 0), subscription.filters.length - 1);
- if (oldPosition == newPosition)
- return ;
- subscription.filters.splice(oldPosition, 1);
- subscription.filters.splice(newPosition, 0, filter);
- FilterNotifier.triggerListeners("filter.moved", filter, subscription, oldPosition, newPosition);
- }
- ,
- increaseHitCount: function (filter) {
- if (!Prefs.savestats || Prefs.privateBrowsing || !(filter instanceof ActiveFilter))
- return ;
- filter.hitCount++;
- filter.lastHit = Date.now();
- }
- ,
- resetHitCounts: function (filters) {
- if (!filters) {
- filters = [];
- for (var _loopIndex2 = 0;
- _loopIndex2 < Filter.knownFilters.length; ++ _loopIndex2) {
- var filter = Filter.knownFilters[_loopIndex2];
- filters.push(filter);
- }
- }
- for (var _loopIndex1 = 0;
- _loopIndex1 < filters.length; ++ _loopIndex1) {
- var filter = filters[_loopIndex1];
- filter.hitCount = 0;
- filter.lastHit = 0;
- }
- }
- ,
- loadFromDisk: function (sourceFile, silent) {
- if (!silent) {
- Filter.knownFilters = {
- __proto__: null
- };
- Subscription.knownSubscriptions = {
- __proto__: null
- };
- }
- var explicitFile = true;
- if (!sourceFile) {
- sourceFile = FilterStorage.sourceFile;
- explicitFile = false;
- if (!sourceFile || !sourceFile.exists()) {
- var patternsURL = Utils.ioService.newURI("chrome://adblockplus-defaults/content/patterns.ini", null, null);
- patternsURL = Utils.chromeRegistry.convertChromeURL(patternsURL);
- if (patternsURL instanceof Ci.nsIFileURL)
- sourceFile = patternsURL.file;
- }
- }
- var userFilters = null;
- var backup = 0;
- while (true) {
- FilterStorage.subscriptions = [];
- FilterStorage.knownSubscriptions = {
- __proto__: null
- };
- try {
- if (sourceFile && sourceFile.exists()) {
- var fileStream = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(Ci.nsIFileInputStream);
- fileStream.init(sourceFile, 1, 292, 0);
- var stream = Cc["@mozilla.org/intl/converter-input-stream;1"].createInstance(Ci.nsIConverterInputStream);
- stream.init(fileStream, "UTF-8", 16384, 0);
- stream = stream.QueryInterface(Ci.nsIUnicharLineInputStream);
- userFilters = parseIniFile(stream);
- stream.close();
- if (!FilterStorage.subscriptions.length) {
- throw new Error("No data in the file");
- }
- }
- break;
- }
- catch (e){
- Cu.reportError("Adblock Plus: Failed to read filters from file " + sourceFile.path);
- Cu.reportError(e);
- }
- if (explicitFile)
- break;
- sourceFile = FilterStorage.sourceFile;
- if (!sourceFile)
- break;
- var part1 = sourceFile.leafName;
- var part2 = "";
- if (/^(.*)(\.\w+)$/.test(part1)) {
- part1 = RegExp["$1"];
- part2 = RegExp["$2"];
- }
- sourceFile = sourceFile.clone();
- sourceFile.leafName = part1 + "-backup" + (++ backup) + part2;
- }
- for (var _loopIndex3 = 0;
- _loopIndex3 < ["~il~", "~wl~", "~fl~", "~eh~"].length; ++ _loopIndex3) {
- var specialSubscription = ["~il~", "~wl~", "~fl~", "~eh~"][_loopIndex3];
- if (specialSubscription in FilterStorage.knownSubscriptions) {
- var subscription = Subscription.fromURL(specialSubscription);
- if (subscription.filters.length == 0)
- FilterStorage.removeSubscription(subscription, true);
- }
- }
- if (userFilters) {
- for (var _loopIndex4 = 0;
- _loopIndex4 < userFilters.length; ++ _loopIndex4) {
- var filter = userFilters[_loopIndex4];
- filter = Filter.fromText(filter);
- if (filter)
- FilterStorage.addFilter(filter, null, undefined, true);
- }
- }
- if (!silent)
- FilterNotifier.triggerListeners("load");
- }
- ,
- saveToDisk: function (targetFile) {
- var explicitFile = true;
- if (!targetFile) {
- targetFile = FilterStorage.sourceFile;
- explicitFile = false;
- }
- if (!targetFile)
- return ;
- try {
- targetFile.normalize();
- }
- catch (e){}
- try {
- targetFile.parent.create(Ci.nsIFile.DIRECTORY_TYPE, 493);
- }
- catch (e){}
- var tempFile = targetFile.clone();
- tempFile.leafName += "-temp";
- var fileStream, stream;
- try {
- fileStream = Cc["@mozilla.org/network/safe-file-output-stream;1"].createInstance(Ci.nsIFileOutputStream);
- fileStream.init(tempFile, 2 | 8 | 32, 420, 0);
- stream = Cc["@mozilla.org/intl/converter-output-stream;1"].createInstance(Ci.nsIConverterOutputStream);
- stream.init(fileStream, "UTF-8", 16384, Ci.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER);
- }
- catch (e){
- Cu.reportError(e);
- return ;
- }
- const maxBufLength = 1024;
- var buf = ["# Adblock Plus preferences", "version=" + formatVersion];
- var lineBreak = Utils.getLineBreak();
- function writeBuffer() {
- stream.writeString(buf.join(lineBreak) + lineBreak);
- buf.splice(0, buf.length);
- }
- var saved = {
- __proto__: null
- };
- for (var _loopIndex5 = 0;
- _loopIndex5 < FilterStorage.subscriptions.length; ++ _loopIndex5) {
- var subscription = FilterStorage.subscriptions[_loopIndex5];
- if (subscription instanceof ExternalSubscription)
- continue;
- for (var _loopIndex7 = 0;
- _loopIndex7 < subscription.filters.length; ++ _loopIndex7) {
- var filter = subscription.filters[_loopIndex7];
- if (!(filter.text in saved)) {
- filter.serialize(buf);
- saved[filter.text] = filter;
- if (buf.length > maxBufLength)
- writeBuffer();
- }
- }
- }
- for (var _loopIndex6 = 0;
- _loopIndex6 < FilterStorage.subscriptions.length; ++ _loopIndex6) {
- var subscription = FilterStorage.subscriptions[_loopIndex6];
- if (subscription instanceof ExternalSubscription)
- continue;
- buf.push("");
- subscription.serialize(buf);
- if (subscription.filters.length) {
- buf.push("", "[Subscription filters]");
- subscription.serializeFilters(buf);
- }
- if (buf.length > maxBufLength)
- writeBuffer();
- }
- try {
- stream.writeString(buf.join(lineBreak) + lineBreak);
- stream.flush();
- fileStream.QueryInterface(Ci.nsISafeOutputStream).finish();
- }
- catch (e){
- Cu.reportError(e);
- return ;
- }
- if (!explicitFile && targetFile.exists()) {
- var part1 = targetFile.leafName;
- var part2 = "";
- if (/^(.*)(\.\w+)$/.test(part1)) {
- part1 = RegExp["$1"];
- part2 = RegExp["$2"];
- }
- var doBackup = (Prefs.patternsbackups > 0);
- if (doBackup) {
- var lastBackup = targetFile.clone();
- lastBackup.leafName = part1 + "-backup1" + part2;
- if (lastBackup.exists() && (Date.now() - lastBackup.lastModifiedTime) / 3600000 < Prefs.patternsbackupinterval)
- doBackup = false;
- }
- if (doBackup) {
- var backupFile = targetFile.clone();
- backupFile.leafName = part1 + "-backup" + Prefs.patternsbackups + part2;
- try {
- backupFile.remove(false);
- }
- catch (e){}
- for (var i = Prefs.patternsbackups - 1;
- i >= 0; i--) {
- backupFile.leafName = part1 + (i > 0 ? "-backup" + i : "") + part2;
- try {
- backupFile.moveTo(backupFile.parent, part1 + "-backup" + (i + 1) + part2);
- }
- catch (e){}
- }
- }
- }
- else
- if (targetFile.exists())
- targetFile.remove(false);
- tempFile.moveTo(targetFile.parent, targetFile.leafName);
- if (!explicitFile)
- FilterNotifier.triggerListeners("save");
- }
- ,
- getBackupFiles: function () {
- var result = [];
- var part1 = FilterStorage.sourceFile.leafName;
- var part2 = "";
- if (/^(.*)(\.\w+)$/.test(part1)) {
- part1 = RegExp["$1"];
- part2 = RegExp["$2"];
- }
- for (var i = 1;
- ;
- i++) {
- var file = FilterStorage.sourceFile.clone();
- file.leafName = part1 + "-backup" + i + part2;
- if (file.exists())
- result.push(file);
- else
- break;
- }
- return result;
- }
-
- };
- function addSubscriptionFilters(subscription) {
- if (!(subscription.url in FilterStorage.knownSubscriptions))
- return ;
- for (var _loopIndex8 = 0;
- _loopIndex8 < subscription.filters.length; ++ _loopIndex8) {
- var filter = subscription.filters[_loopIndex8];
- filter.subscriptions.push(subscription);
- }
- }
- function removeSubscriptionFilters(subscription) {
- if (!(subscription.url in FilterStorage.knownSubscriptions))
- return ;
- for (var _loopIndex9 = 0;
- _loopIndex9 < subscription.filters.length; ++ _loopIndex9) {
- var filter = subscription.filters[_loopIndex9];
- var i = filter.subscriptions.indexOf(subscription);
- if (i >= 0)
- filter.subscriptions.splice(i, 1);
- }
- }
- function parseIniFile(stream) {
- var wantObj = true;
- FilterStorage.fileProperties = {
-
- };
- var curObj = FilterStorage.fileProperties;
- var curSection = null;
- var line = {
-
- };
- var haveMore = true;
- var userFilters = null;
- while (true) {
- if (haveMore)
- haveMore = stream.readLine(line);
- else
- line.value = "[end]";
- var val = line.value;
- if (wantObj === true && /^(\w+)=(.*)$/.test(val))
- curObj[RegExp["$1"]] = RegExp["$2"];
- else
- if (/^\s*\[(.+)\]\s*$/.test(val)) {
- var newSection = RegExp["$1"].toLowerCase();
- if (curObj) {
- switch (curSection) {
- case "filter": ;
- case "pattern": {
- if ("text" in curObj)
- Filter.fromObject(curObj);
- break;
- }
- case "subscription": {
- var subscription = Subscription.fromObject(curObj);
- if (subscription)
- FilterStorage.addSubscription(subscription, true);
- break;
- }
- case "subscription filters": ;
- case "subscription patterns": {
- if (FilterStorage.subscriptions.length) {
- var subscription = FilterStorage.subscriptions[FilterStorage.subscriptions.length - 1];
- for (var _loopIndex10 = 0;
- _loopIndex10 < curObj.length; ++ _loopIndex10) {
- var text = curObj[_loopIndex10];
- var filter = Filter.fromText(text);
- if (filter) {
- subscription.filters.push(filter);
- filter.subscriptions.push(subscription);
- }
- }
- }
- break;
- }
- case "user patterns": {
- userFilters = curObj;
- break;
- }
- }
- }
- if (newSection == "end")
- break;
- curSection = newSection;
- switch (curSection) {
- case "filter": ;
- case "pattern": ;
- case "subscription": {
- wantObj = true;
- curObj = {
-
- };
- break;
- }
- case "subscription filters": ;
- case "subscription patterns": ;
- case "user patterns": {
- wantObj = false;
- curObj = [];
- break;
- }
- default: {
- wantObj = undefined;
- curObj = null;
- }
- }
- }
- else
- if (wantObj === false && val)
- curObj.push(val.replace(/\\\[/g, "["));
- }
- return userFilters;
- }
- if (typeof _patchFunc11 != "undefined")
- eval("(" + _patchFunc11.toString() + ")()");
- window.FilterStorage = FilterStorage;
-}
-)(window.FilterStoragePatch);
« no previous file with comments | « assets/js/FilterNotifier.jsm ('k') | assets/js/Matcher.jsm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld