update to current status

This commit is contained in:
LosslessBot
2016-05-04 02:49:43 +02:00
parent cc38d47828
commit 71c883609b
15 changed files with 136 additions and 42 deletions

View File

@ -1,6 +1,5 @@
/// <reference path="./typings/main.d.ts" />
import plugins = require("./taskbuffer.plugins");
import classes = require("./taskbuffer.classes");
import task = require("./taskbuffer.task");
import taskchain = require("./taskbuffer.taskchain");

View File

@ -0,0 +1,29 @@
/// <reference path="./typings/main.d.ts" />
import plugins = require("./taskbuffer.plugins");
import classes = require("./taskbuffer.classes");
export var emptyTaskFunction = function(){
var done = plugins.Q.defer();
done.resolve();
return done.promise;
};
export var isTask = function(taskArg):boolean{
if(
taskArg instanceof classes.Task
&& typeof taskArg.task === "function"
){
return true;
} else {
return false;
}
};
export var runTask = function(taskArg){
var done = plugins.Q.defer();
var taskReturn;
if(isTask(taskArg)){
taskReturn taskArg.task();
}
return done.promise;
};

View File

@ -1,22 +1,38 @@
/// <reference path="./typings/main.d.ts" />
import plugins = require("./taskbuffer.plugins");
import helpers = require("./taskbuffer.classes.helpers");
export class Task {
task:any;
idle:boolean;
buffered:boolean;
bufferedForced:boolean;
running:boolean;
buffered:boolean;
private _counterBufferRelative;
private _counterTriggerAbsolute;
private _state:string;
preTask:Task;
afterTask:Task;
constructor(taskArg,optionsArg?:{preTask?:Task,afterTask?:Task}){
constructor(taskArg,optionsArg:{preTask?:Task,afterTask?:Task, buffered?:boolean} = {}){
var options = optionsArg;
this.task = taskArg;
this.preTask = options.preTask;
this.afterTask = options.afterTask;
this.idle = true;
this.running = false;
if (typeof options.buffered === "boolean"){
this.buffered = options.buffered;
} else {
this.buffered = false;
}
}
trigger(){
this.preTask.task()
.then(this.task)
.then(this.afterTask.task);
helpers.runTask(this.preTask)
.then(function(){
})
.then(function(){
})
};
triggerBuffered(){
var done = plugins.Q.defer();
@ -34,10 +50,11 @@ export class Task {
}
}
export class TaskChain extends Task {
constructor(taskArrayArg:Task[]){
super({
task:function(){}
task: function(){}
});
}
}