ThomasBurleson
11/21/2013 - 1:28 AM

Refactor Dash.js JavaScript class - to use AMD pattern, eliminate requirement to construct with `new`, remove unnecessary use of Promises.

Refactor Dash.js JavaScript class - to use AMD pattern, eliminate requirement to construct with new, remove unnecessary use of Promises.

MediaPlayer.rules.BaseRulesCollection = function () {
    "use strict";

    var rules = [];

    return {
        downloadRatioRule: undefined,
        insufficientBufferRule: undefined,
        //limitSwitchesRule: undefined,

        getRules: function () {
            return Q.when(rules);
        },

        setup: function () {
            var self = this;

            self.getRules().then(
                function (r) {
                    r.push(self.downloadRatioRule);
                    r.push(self.insufficientBufferRule);
                    //r.push(self.limitSwitchesRule);
                }
            );
        }
    };
};

MediaPlayer.rules.BaseRulesCollection.prototype = {
    constructor: MediaPlayer.rules.BaseRulesCollection
};