Skip to content

Commit be64ef7

Browse files
committed
cli tool for schedule:list and schedule:remove
1 parent 62b424f commit be64ef7

File tree

1 file changed

+47
-9
lines changed

1 file changed

+47
-9
lines changed
Lines changed: 47 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,64 @@
1+
var _ = require("lodash");
12
var DB = require("pico-engine-core/src/DB");
23
var path = require("path");
34
var leveldown = require("leveldown");
45

6+
var getDB = function(conf){
7+
return DB({
8+
db: leveldown(path.join(conf.home, "db"))
9+
});
10+
};
11+
12+
var printErr = function(err){
13+
console.error("" + err);
14+
};
15+
516
module.exports = {
617
"conf": function(conf){
718
console.log(JSON.stringify(conf, void 0, 2));
819
},
920
"schedule:list": function(conf){
10-
var db = DB({
11-
db: leveldown(path.join(conf.home, "db"))
12-
});
21+
var db = getDB(conf);
1322
db.listScheduled(function(err, list){
14-
if(err){
15-
console.error("" + err);
16-
return;
17-
}
23+
if(err) return printErr(err);
1824
list.forEach(function(s){
19-
console.log(s.id + " " + JSON.stringify(s));
25+
var str = s.id + " ";
26+
if(s.at){
27+
str += "at " + s.at;
28+
}
29+
if(s.timespec){
30+
str += "repeat " + s.timespec;
31+
}
32+
str += " " + s.event.eci
33+
+ "/" + s.event.eid
34+
+ "/" + s.event.domain
35+
+ "/" + s.event.type
36+
+ " " + JSON.stringify(s.event.attrs);
37+
console.log(str);
2038
});
2139
});
2240
},
2341
"schedule:remove": function(conf, args){
24-
console.log("TODO remove", conf, args);
42+
var id = args._[1];
43+
if(!_.isString(id)){
44+
console.error("Missing id");
45+
return;
46+
}
47+
var db = getDB(conf);
48+
if(id === "all"){
49+
db.listScheduled(function(err, list){
50+
if(err) return printErr(err);
51+
list.forEach(function(s){
52+
db.removeScheduled(s.id, function(err){
53+
if(err) return printErr(err);
54+
});
55+
});
56+
});
57+
return;
58+
}
59+
db.removeScheduled(id, function(err){
60+
if(err) return printErr(err);
61+
console.log("removed " + id);
62+
});
2563
},
2664
};

0 commit comments

Comments
 (0)