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

Unified Diff: chrome/browser/resources/file_manager/js/metadata/function_sequence.js

Issue 39123003: [Files.app] Split the JavaScript files into subdirectories: common, background, and foreground (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fixed test failure. Created 7 years, 2 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/metadata/function_sequence.js
diff --git a/chrome/browser/resources/file_manager/js/metadata/function_sequence.js b/chrome/browser/resources/file_manager/js/metadata/function_sequence.js
deleted file mode 100644
index a2372f9f146ce21e9d8981138161a4e5d1decfd2..0000000000000000000000000000000000000000
--- a/chrome/browser/resources/file_manager/js/metadata/function_sequence.js
+++ /dev/null
@@ -1,133 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-'use strict';
-
-/**
- * @class FunctionSequence to invoke steps in sequence
- *
- * @param {string} name // TODO(JSDOC).
- * @param {Array} steps array of functions to invoke in sequence.
- * @param {Object} logger logger.
- * @param {function} callback callback to invoke on success.
- * @param {function} failureCallback callback to invoke on failure.
- * @constructor
- */
-function FunctionSequence(name, steps, logger, callback, failureCallback) {
- // Private variables hidden in closure
- this.currentStepIdx_ = -1;
- this.failed_ = false;
- this.steps_ = steps;
- this.callback_ = callback;
- this.failureCallback_ = failureCallback;
- this.logger = logger;
- this.name = name;
-
- this.onError = this.onError_.bind(this);
- this.finish = this.finish_.bind(this);
- this.nextStep = this.nextStep_.bind(this);
- this.apply = this.apply_.bind(this);
-}
-
-/**
- * Sets new callback
- *
- * @param {function} callback new callback to call on succeed.
- */
-FunctionSequence.prototype.setCallback = function(callback) {
- this.callback_ = callback;
-};
-
-/**
- * Sets new error callback
- *
- * @param {function} failureCallback new callback to call on failure.
- */
-FunctionSequence.prototype.setFailureCallback = function(failureCallback) {
- this.failureCallback_ = failureCallback;
-};
-
-
-/**
- * Error handling function, which traces current error step, stops sequence
- * advancing and fires error callback.
- *
- * @param {string} err Error message.
- * @private
- */
-FunctionSequence.prototype.onError_ = function(err) {
- this.logger.vlog('Failed step: ' + this.steps_[this.currentStepIdx_].name +
- ': ' + err);
- if (!this.failed_) {
- this.failed_ = true;
- this.failureCallback_(err);
- }
-};
-
-/**
- * Finishes sequence processing and jumps to the last step.
- * This method should not be used externally. In external
- * cases should be used finish function, which is defined in closure and thus
- * has access to internal variables of functionsequence.
- * @private
- */
-FunctionSequence.prototype.finish_ = function() {
- if (!this.failed_ && this.currentStepIdx_ < this.steps_.length) {
- this.currentStepIdx_ = this.steps_.length;
- this.callback_();
- }
-};
-
-/**
- * Advances to next step.
- * This method should not be used externally. In external
- * cases should be used nextStep function, which is defined in closure and thus
- * has access to internal variables of functionsequence.
- * @private
- * @param {...} var_args // TODO(JSDOC).
- */
-FunctionSequence.prototype.nextStep_ = function(var_args) {
- if (this.failed_) {
- return;
- }
-
- if (++this.currentStepIdx_ >= this.steps_.length) {
- this.logger.vlog('Sequence ended');
- this.callback_.apply(this, arguments);
- } else {
- this.logger.vlog('Attempting to start step [' +
- this.steps_[this.currentStepIdx_].name +
- ']');
- try {
- this.steps_[this.currentStepIdx_].apply(this, arguments);
- } catch (e) {
- this.onError(e.toString());
- }
- }
-};
-
-/**
- * This function should be called only once on start, so start sequence pipeline
- * @param {...} var_args // TODO(JSDOC).
- */
-FunctionSequence.prototype.start = function(var_args) {
- if (this.started) {
- throw new Error('"Start" method of FunctionSequence was called twice');
- }
-
- this.logger.log('Starting sequence with ' + arguments.length + ' arguments');
-
- this.started = true;
- this.nextStep.apply(this, arguments);
-};
-
-/**
- * Add Function object mimics to FunctionSequence
- * @private
- * @param {*} obj // TODO(JSDOC).
- * @param {Array.*} args // TODO(JSDOC).
- */
-FunctionSequence.prototype.apply_ = function(obj, args) {
- this.start.apply(this, args);
-};

Powered by Google App Engine
This is Rietveld 408576698