API Docs for: 0.0.4
Show:

File: lib\algorithms\algorithm.js


var DURATION_TwoWeeks = 1000 * 60 * 60 * 24 * 14;
var DURATION_OneWeeks = 1000 * 60 * 60 * 24 * 7;

/**
 * 
 * @class Algorithm
 * @constructor
 * @param {String} name
 * @param {Object} options
 */
module.exports = function(name, options) {
	this.__proto__ = Object;
	options = options || {};

	var points = options.points || 10;
	var duration = options.duration || DURATION_TwoWeeks;
	var first = options.first || 1; // Monday

	/**
	 * 
	 * @property name
	 * @type String
	 */
	this.name = name;

	/**
	 * The first day of the sprint.
	 * 
	 * 0: Sunday
	 * 1: Monday  
	 * 2: Tuesday 
	 * ...   
	 * 
	 * @method first
	 * @param {Number} [start] 
	 * @return {Number}
	 */
	this.first = function(start) {
		if(start) {
			first = start;
		}
		return first;
	};

	/**
	 * 
	 * @method points
	 * @param {Number} [expected] 
	 * @return {Number}
	 */
	this.points = function(expected) {
		if(expected) {
			points = expected;
		}
		return points;
	};

	/**
	 * 
	 * @method duration
	 * @param {Number} [time] Duration for the sprint in milliseconds.
	 * @return {Number}
	 */
	this.duration = function(time) {
		if(time) {
			duration = time;
		}
		return duration;
	};

	/**
	 * 
	 * @method process
	 * @param {Board} board 
	 * @return {Promise | > | Board}
	 */
	this.process = function() {
		throw new Error("Process Method not Implemented");
	};
};