Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(35)

Side by Side Diff: content/browser/resources/media/item_store.js

Issue 23769009: Removes the --enable-new-media-internals flag. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: removed unused files from old-media-internals Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « content/browser/resources/media/event_list.js ('k') | content/browser/resources/media/main.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 cr.define('media', function() {
6
7 /**
8 * This class stores hashes by their id field and provides basic methods for
9 * iterating over the collection.
10 * @constructor
11 */
12 function ItemStore() {
13 this.items_ = {};
14 }
15
16 ItemStore.prototype = {
17 /**
18 * Get a sorted list of item ids.
19 * @return {Array} A sorted array of ids.
20 */
21 ids: function() {
22 var ids = [];
23 for (var i in this.items_)
24 ids.push(i);
25 return ids.sort();
26 },
27
28 /**
29 * Add an item to the store.
30 * @param {Object} item The item to be added.
31 * @param {string} item.id The id of the item.
32 */
33 addItem: function(item) {
34 this.items_[item.id] = item;
35 },
36
37 /**
38 * Add a dictionary of items to the store.
39 * @param {Object} items A dictionary of individual items. The keys are
40 * irrelevant but each must have an id field.
41 */
42 addItems: function(items) {
43 for (id in items)
44 this.addItem(items[id]);
45 },
46
47 /**
48 * Remove an item from the store.
49 * @param {string} id The id of the item to be removed.
50 */
51 removeItem: function(id) {
52 delete this.items_[id];
53 },
54
55 /**
56 * Map this itemStore to an Array. Items are sorted by id.
57 * @param {function(*)} mapper The mapping function applied to each item.
58 * @return {Array} An array of mapped items.
59 */
60 map: function(mapper) {
61 var items = this.items_;
62 var ids = this.ids();
63 return ids.map(function(id) { return mapper(items[id]); });
64 }
65 };
66
67 return {
68 ItemStore: ItemStore
69 };
70 });
OLDNEW
« no previous file with comments | « content/browser/resources/media/event_list.js ('k') | content/browser/resources/media/main.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698