-
Notifications
You must be signed in to change notification settings - Fork 12
/
api.js
80 lines (72 loc) · 2.29 KB
/
api.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
var express = require('express');
var router = express.Router();
var libs = require('../lib/libs');
/* GET users listing. */
router.get('/', function(req, res, next) {
res.send('respond with a resource');
});
router.get('/getBatchTimeout', function(req, res, next) {
res.send(libs.loadRs(libs.BatchTimeout));
});
router.get('/getMaxMessageCount', function(req, res, next) {
res.send(libs.loadRs(libs.MaxMessageCount));
});
router.get('/getAbsoluteMaxBytes', function(req, res, next) {
res.send(libs.loadRs(libs.AbsoluteMaxBytes));
});
router.get('/getPreferredMaxBytes', function(req, res, next) {
res.send(libs.loadRs(libs.PreferredMaxBytes));
});
router.get('/getTPS', function(req, res, next) {
res.send(libs.loadRs(libs.TPS));
});
router.get('/run', function(req, res, next) {
var d = new Date();
var status = 0;
libs.init();
console.log(req.query);
CmdInfo = {
Chaincode:'sample',
Path: req.query.Path,
CoolDown: parseFloat(req.query.CoolDown),
PrepareCLI: req.query.PrepareCLI,
StartCLI: req.query.StartCLI,
ShutDownCLI: req.query.ShutDownCLI,
tapeCount: parseFloat(req.query.TapeCount),
}
if (req.query.DryRun) {
CmdInfo.DryRun = req.query.DryRun;
}
BatchTimeout = [];
BatchTimeoutArray = req.query.BatchTimeout.toString().split(",");
BatchTimeoutArray.forEach(element => {
BatchTimeout.push(parseFloat(element));
});
//
MaxMessageCount = [];
MaxMessageCountArray = req.query.MaxMessageCount.toString().split(",");
MaxMessageCountArray.forEach(element => {
MaxMessageCount.push(parseFloat(element));
});
//
AbsoluteMaxBytes = [];
AbsoluteMaxBytesArray = req.query.AbsoluteMaxBytes.toString().split(",");
AbsoluteMaxBytesArray.forEach(element => {
AbsoluteMaxBytes.push(parseFloat(element));
});
//
PreferredMaxBytes = [];
PreferredMaxBytesArray = req.query.PreferredMaxBytes.toString().split(",");
PreferredMaxBytesArray.forEach(element => {
PreferredMaxBytes.push(parseFloat(element));
});
status = libs.run(CmdInfo,BatchTimeout,MaxMessageCount,AbsoluteMaxBytes,PreferredMaxBytes);
if (status == 0) {
console.log(new Date().toString());
res.send(d.toString()+' success at '+new Date().toString());
} else {
console.log('error');
res.sendStatus(500);
}
});
module.exports = router;