mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-21 02:25:59 +00:00
using nedb for connections, controllers
This commit is contained in:
36
api/src/controllers/connections.js
Normal file
36
api/src/controllers/connections.js
Normal file
@@ -0,0 +1,36 @@
|
||||
const os = require('os');
|
||||
const path = require('path');
|
||||
const fs = require('fs-extra');
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
const { fork } = require('child_process');
|
||||
const _ = require('lodash');
|
||||
const datadir = require('../utility/datadir');
|
||||
const nedb = require('nedb-promises');
|
||||
|
||||
module.exports = {
|
||||
datastore: null,
|
||||
async _init() {
|
||||
const dir = await datadir();
|
||||
this.datastore = nedb.create(path.join(dir, 'connections.jsonl'));
|
||||
},
|
||||
list_meta: 'get',
|
||||
async list() {
|
||||
return this.datastore.find();
|
||||
},
|
||||
test_meta: {
|
||||
method: 'post',
|
||||
raw: true,
|
||||
},
|
||||
test(req, res) {
|
||||
const subprocess = fork(`${__dirname}/../connectProcess.js`);
|
||||
subprocess.send(req.body);
|
||||
subprocess.on('message', resp => res.json(resp));
|
||||
},
|
||||
|
||||
save_meta: 'post',
|
||||
async save(connection) {
|
||||
const res = await this.datastore.insert(connection);
|
||||
return res;
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user