Commit c1e6950b52c7a2dc31a67ff7e5c84071c00ee169
1 parent
4a7ed5bd6b
Exists in
master
Change api-server.router-config.save using config-save
Showing 1 changed file with 27 additions and 29 deletions Side-by-side Diff
api-server/router-config.js
1 | +const MODULE_NAME = 'KOMODO-SDK.API-SERVER.ROUTER-CONFIG'; | |
2 | + | |
1 | 3 | const fs = require('fs'); |
2 | 4 | const express = require('express'); |
3 | 5 | const bodyParser = require('body-parser'); |
4 | 6 | const jsonQuery = require('json-query'); |
5 | 7 | const dot = require('dot-object'); |
6 | -const copyFile = require('fs-copy-file'); | |
7 | -const moment = require('moment'); | |
8 | +const logger = require('tektrans-logger'); | |
8 | 9 | |
9 | 10 | const config = require('../config'); |
10 | 11 | const matrix = require('../matrix'); |
12 | +const configSave = require('./config-save'); | |
11 | 13 | |
12 | 14 | const router = express.Router(); |
13 | 15 | module.exports = router; |
... | ... | @@ -57,34 +59,30 @@ function delConfigElement(req, res) { |
57 | 59 | }); |
58 | 60 | } |
59 | 61 | |
60 | -function saveConfig(req, res) { | |
61 | - copyFile('config.json', `config-backup/config_${moment().format('YYYYMMDD_HHmmss.SS')}.json`, (err) => { | |
62 | - if (err) { | |
63 | - res.json({ | |
64 | - method: '/config/save', | |
65 | - error: err.toString(), | |
66 | - }); | |
67 | - return; | |
68 | - } | |
69 | - | |
70 | - fs.writeFile('config.json', JSON.stringify(config, null, 2), (errWriteFile) => { | |
71 | - if (errWriteFile) { | |
72 | - res.json({ | |
73 | - method: '/config/save', | |
74 | - error: errWriteFile.toString(), | |
75 | - }); | |
76 | - | |
77 | - return; | |
78 | - } | |
79 | - | |
80 | - matrix.config_is_dirty = false; | |
81 | - | |
82 | - res.json({ | |
83 | - method: '/config/save', | |
84 | - error: null, | |
85 | - }); | |
62 | +async function saveConfig(req, res) { | |
63 | + const { xid } = res.locals; | |
64 | + try { | |
65 | + await configSave(xid); | |
66 | + | |
67 | + res.json({ | |
68 | + method: '/config/save', | |
69 | + error: null, | |
86 | 70 | }); |
87 | - }); | |
71 | + } catch (e) { | |
72 | + logger.warn(`${MODULE_NAME} 22E7FCA2: Exception on saving`, { | |
73 | + xid, | |
74 | + eCode: e.code, | |
75 | + eMessage: e.message || e, | |
76 | + }); | |
77 | + | |
78 | + res.json({ | |
79 | + method: '/config/save', | |
80 | + error: [ | |
81 | + e.code || 'UNKNOWN', | |
82 | + e.message || 'ERROR', | |
83 | + ].join(' - '), | |
84 | + }); | |
85 | + } | |
88 | 86 | } |
89 | 87 | |
90 | 88 | function isDirty(req, res) { |