Index: lib/subscriptionClasses.js |
=================================================================== |
--- a/lib/subscriptionClasses.js |
+++ b/lib/subscriptionClasses.js |
@@ -33,17 +33,16 @@ |
* @param {string} [title] title of the filter subscription |
* @constructor |
*/ |
function Subscription(url, title) |
{ |
this.url = url; |
this._filterText = []; |
- this._filters = []; |
if (title) |
this._title = title; |
Subscription.knownSubscriptions.set(url, this); |
} |
exports.Subscription = Subscription; |
@@ -63,23 +62,16 @@ |
/** |
* Filter text contained in the filter subscription. |
* @type {Array.<string>} |
* @private |
*/ |
_filterText: null, |
- /** |
- * {@link Filter} objects corresponding to the subscription's filter text. |
- * @type {Array.<Filter>} |
- * @private |
- */ |
- _filters: null, |
- |
_title: null, |
_fixedTitle: false, |
_disabled: false, |
/** |
* Title of the filter subscription |
* @type {string} |
*/ |
@@ -137,45 +129,36 @@ |
}, |
/** |
* The number of filters in the subscription. |
* @type {number} |
*/ |
get filterCount() |
{ |
- return this._filters.length; |
+ return this._filterText.length; |
}, |
/** |
* Yields the text for each filter in the subscription. |
* @yields {string} |
*/ |
*filterText() |
{ |
yield* this._filterText; |
}, |
/** |
- * Yields the {@link Filter} object for each filter in the subscription. |
- * @yields {Filter} |
- */ |
- *filters() |
- { |
- yield* this._filters; |
- }, |
- |
- /** |
- * Returns the {@link Filter} object at the given 0-based index. |
+ * Returns the filter text at the given 0-based index. |
* @param {number} index |
* @returns {?Filter} |
*/ |
- filterAt(index) |
+ filterTextAt(index) |
{ |
- return this._filters[index] || null; |
+ return this._filterText[index] || null; |
}, |
/** |
* Returns the 0-based index of the given filter. |
* @param {Filter} filter |
* @param {number} [fromIndex] The index from which to start the search. |
* @return {number} |
*/ |
@@ -185,52 +168,57 @@ |
}, |
/** |
* Removes all filters from the subscription. |
*/ |
clearFilters() |
{ |
this._filterText = []; |
- this._filters = []; |
}, |
/** |
* Adds a filter to the subscription. |
* @param {Filter} filter |
*/ |
addFilter(filter) |
{ |
this._filterText.push(filter.text); |
- this._filters.push(filter); |
+ }, |
+ |
+ /** |
+ * Adds a filter to the subscription. |
+ * @param {string} filterText |
+ */ |
+ addFilterText(filterText) |
+ { |
+ this._filterText.push(filterText); |
}, |
/** |
* Inserts a filter into the subscription. |
* @param {Filter} filter |
* @param {number} index The index at which to insert the filter. |
*/ |
insertFilterAt(filter, index) |
{ |
this._filterText.splice(index, 0, filter.text); |
- this._filters.splice(index, 0, filter); |
}, |
/** |
* Deletes a filter from the subscription. |
* @param {number} index The index at which to delete the filter. |
*/ |
deleteFilterAt(index) |
{ |
// Ignore index if out of bounds on the negative side, for consistency. |
if (index < 0) |
return; |
this._filterText.splice(index, 1); |
- this._filters.splice(index, 1); |
}, |
/** |
* Serializes the subscription for writing out on disk. |
* @yields {string} |
*/ |
*serialize() |
{ |