| Index: ui/file_manager/file_manager/background/js/import_history.js
|
| diff --git a/ui/file_manager/file_manager/background/js/import_history.js b/ui/file_manager/file_manager/background/js/import_history.js
|
| index aba2c16f454cc3be96b0e405c3f1d4a5d2e19c09..46558772ba0928b41daa170f04be4509fdef40b4 100644
|
| --- a/ui/file_manager/file_manager/background/js/import_history.js
|
| +++ b/ui/file_manager/file_manager/background/js/import_history.js
|
| @@ -1011,3 +1011,37 @@ importer.RuntimeHistoryLoader.prototype.addHistoryLoadedListener =
|
| function(listener) {
|
| this.historyResolver_.promise.then(listener);
|
| };
|
| +
|
| +/**
|
| + * @param {!FileEntry} fileEntry
|
| + * @return {!Promise<string>} Resolves with a "hashcode" consisting of
|
| + * just the last modified time and the file size.
|
| + */
|
| +importer.createMetadataHashcode = function(fileEntry) {
|
| + return new Promise(
|
| + /**
|
| + * @param {function()} resolve
|
| + * @param {function()} reject
|
| + * @this {importer.PersistentImportHistory}
|
| + */
|
| + function(resolve, reject) {
|
| + metadataProxy.getEntryMetadata(fileEntry).then(
|
| + /**
|
| + * @param {!Object} metadata
|
| + * @return {!Promise<string>}
|
| + * @this {importer.PersistentImportHistory}
|
| + */
|
| + function(metadata) {
|
| + if (!('modificationTime' in metadata)) {
|
| + reject('File entry missing "modificationTime" field.');
|
| + } else if (!('size' in metadata)) {
|
| + reject('File entry missing "size" field.');
|
| + } else {
|
| + var secondsSinceEpoch = importer.toSecondsFromEpoch(
|
| + metadata.modificationTime);
|
| + resolve(secondsSinceEpoch + '_' + metadata.size);
|
| + }
|
| + }.bind(this));
|
| + }.bind(this))
|
| + .catch(importer.getLogger().catcher('importer-common-create-hashcode'));
|
| +};
|
|
|