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

Unified Diff: chrome/browser/resources/file_manager/js/media/audio_player.js

Issue 10384155: [filemanager] Content metadata moved to the cache. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Bug Created 8 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/resources/file_manager/js/media/audio_player.js
===================================================================
--- chrome/browser/resources/file_manager/js/media/audio_player.js (revision 138459)
+++ chrome/browser/resources/file_manager/js/media/audio_player.js (working copy)
@@ -18,7 +18,7 @@
*/
function AudioPlayer(container, filesystemRootURL) {
this.container_ = container;
- this.metadataProvider_ = new MetadataProvider(filesystemRootURL);
+ this.metadataCache_ = MetadataCache.createFull();
this.currentTrack_ = -1;
this.playlistGeneration_ = 0;
@@ -52,6 +52,8 @@
chrome.fileBrowserPrivate.getStrings(function(strings) {
container.ownerDocument.title = strings['AUDIO_PLAYER_TITLE'];
this.errorString_ = strings['AUDIO_ERROR'];
+ AudioPlayer.TrackInfo.DEFAULT_ARTIST =
+ strings['AUDIO_PLAYER_DEFAULT_ARTIST'];
}.bind(this));
}
@@ -140,15 +142,16 @@
this.fetchMetadata_(url, function(metadata) {
var media = this.audioControls_.getMedia();
// Do not try no stream when offline.
- media.src = (navigator.onLine && metadata.streamingURL) || url;
+ media.src =
+ (navigator.onLine && metadata.streaming && metadata.streaming.url) ||
+ url;
media.load();
this.audioControls_.play();
}.bind(this));
};
AudioPlayer.prototype.fetchMetadata_ = function(url, callback) {
- this.metadataProvider_.fetch(
- url,
+ this.metadataCache_.get(url, 'thumbnail|media|streaming',
function(generation, metadata) {
// Do nothing if another load happened since the metadata request.
if (this.playlistGeneration_ == generation)
@@ -220,7 +223,7 @@
this.urls_[track],
function(metadata) {
metadata.error = true;
- metadata.artist = this.errorString_;
+ metadata.media = { artist: this.errorString_ };
this.displayMetadata_(track, metadata);
this.scheduleAutoAdvance_();
}.bind(this));
@@ -319,12 +322,14 @@
return title;
};
+AudioPlayer.TrackInfo.DEFAULT_ARTIST = 'Unknown Artist';
+
AudioPlayer.TrackInfo.prototype.getDefaultArtist = function() {
- return 'Unknown Artist'; // TODO(kaznacheev): i18n
+ return AudioPlayer.TrackInfo.DEFAULT_ARTIST;
};
/**
- * @param {Object} metadata The metadata object
+ * @param {Object} metadata The metadata object.
* @param {HTMLElement} container The container for the tracks.
*/
AudioPlayer.TrackInfo.prototype.setMetadata = function(metadata, container) {
@@ -332,14 +337,14 @@
this.art_.classList.add('blank');
this.art_.classList.add('error');
container.classList.remove('noart');
- } else if (metadata.thumbnailURL) {
+ } else if (metadata.thumbnail && metadata.thumbnail.url) {
this.img_.onload = function() {
// Only display the image if the thumbnail loaded successfully.
this.art_.classList.remove('blank');
container.classList.remove('noart');
}.bind(this);
- this.img_.src = metadata.thumbnailURL;
+ this.img_.src = metadata.thumbnail.url;
}
- this.title_.textContent = metadata.title || this.getDefaultTitle();
- this.artist_.textContent = metadata.artist || this.getDefaultArtist();
+ this.title_.textContent = metadata.media.title || this.getDefaultTitle();
+ this.artist_.textContent = metadata.media.artist || this.getDefaultArtist();
};

Powered by Google App Engine
This is Rietveld 408576698