Bladeren bron

added env variables for rethink

tags/v0.3.2
Big Bad Waffle 5 jaren geleden
bovenliggende
commit
ef63101880
5 gewijzigde bestanden met toevoegingen van 45 en 30 verwijderingen
  1. +21
    -1
      helpers/sqlite-to-rethink/cheatsheet.js
  2. BIN
     
  3. +8
    -1
      src/server/config/serverConfig.js
  4. +5
    -11
      src/server/security/io.js
  5. +11
    -17
      src/server/security/ioRethink.js

+ 21
- 1
helpers/sqlite-to-rethink/cheatsheet.js Bestand weergeven

@@ -25,7 +25,7 @@ r.db('test').table('character')
});
});

//Group by mod action source,a ggregate and order by count
//Group by mod action source, aggregate and order by count
r.db('test').table('modLog')
.group(r => r('value')('source')).count().ungroup().orderBy('reduction');

@@ -47,3 +47,23 @@ r.db('test').table('character')
return c('cpn').count().ge(1);
});
});

//Play time per account from low to thigh
r.db('test').table('character')
.concatMap(row => {
return row('value')('components')
.filter(cpn => {
return cpn('type').eq('stats');
})
.concatMap(c => {
return [{
account: row('value')('account'),
name: row('value')('name'),
played: c('stats')('played')
}];
});
})
.group('account')
.sum('played')
.ungroup()
.orderBy('reduction');


+ 8
- 1
src/server/config/serverConfig.js Bestand weergeven

@@ -2,5 +2,12 @@ module.exports = {
version: '0.3.1',
port: 4000,
startupMessage: 'Server: ready',
defaultZone: 'fjolarok'
defaultZone: 'fjolarok',

//Options:
// sqlite
// rethink
db: 'rethink',
dbHost: 'localhost',
dbPort: 28015
};

+ 5
- 11
src/server/security/io.js Bestand weergeven

@@ -1,12 +1,11 @@
let fs = require('fs');
let util = require('util');
let serverConfig = require('../config/serverConfig');

let rethink = null;

const useRethink = true;

if (useRethink)
rethink = require('./ioRethink');
if (serverConfig.db === 'rethink') {
module.exports = require('./ioRethink');
return;
}

module.exports = {
db: null,
@@ -31,11 +30,6 @@ module.exports = {
},

init: async function (cbReady) {
if (rethink)
await rethink.init(this);
//cbReady();
//return;

let sqlite = require('sqlite3').verbose();
this.db = new sqlite.Database(this.file, this.onDbCreated.bind(this, cbReady));
},


+ 11
- 17
src/server/security/ioRethink.js Bestand weergeven

@@ -1,4 +1,5 @@
let r = require('rethinkdb');
let serverConfig = require('../config/serverConfig');

const tables = [
'character',
@@ -19,16 +20,20 @@ module.exports = {
connection: null,
useDb: 'dev',

init: async function () {
this.connection = await r.connect({
host: 'localhost',
port: 28015
});
init: async function (cbReady) {
const dbConfig = {
//eslint-disable-next-line no-process-env
host: process.env.dbHost || serverConfig.dbHost || 'localhost',
//eslint-disable-next-line no-process-env
port: process.env.dbPort || serverConfig.dbPort || 28015
};

this.connection = await r.connect(dbConfig);

await this.connection.use(this.useDb);
await this.create();

this.bindHandlers();
cbReady();
},

create: async function () {
@@ -48,17 +53,6 @@ module.exports = {
}
},

bindHandlers: function () {
io.getAsync = this.getAsync.bind(this);
io.getAllAsync = this.getAllAsync.bind(this);
io.setAsync = this.setAsync.bind(this);
io.deleteAsync = this.deleteAsync.bind(this);

io.subscribe = this.subscribe.bind(this);
io.append = this.append.bind(this);
io.exists = this.exists.bind(this);
},

getAsync: async function ({
table,
key,


Laden…
Annuleren
Opslaan