mirror of
https://github.com/roleypoly/roleypoly-v1.git
synced 2025-06-16 02:19:08 +00:00
first sync
This commit is contained in:
parent
5d6f382c8a
commit
a4acc441ea
52 changed files with 28315 additions and 0 deletions
53
Server/Roleypoly.js
Normal file
53
Server/Roleypoly.js
Normal file
|
@ -0,0 +1,53 @@
|
|||
const log = new (require('./logger'))('World')
|
||||
const Sequelize = require('sequelize')
|
||||
const fetchModels = require('./models')
|
||||
const fetchApis = require('./api')
|
||||
|
||||
class Roleypoly {
|
||||
constructor (router, io, app) {
|
||||
this.router = router
|
||||
this.io = io
|
||||
this.ctx = {}
|
||||
|
||||
this.ctx.config = {
|
||||
appUrl: process.env.APP_URL
|
||||
}
|
||||
|
||||
this.ctx.io = io
|
||||
this.__app = app
|
||||
|
||||
if (log.debugOn) log.warn('debug mode is on')
|
||||
|
||||
this.__initialized = this._mountServices()
|
||||
}
|
||||
|
||||
async awaitServices () {
|
||||
await this.__initialized
|
||||
}
|
||||
|
||||
async _mountServices () {
|
||||
const sequelize = new Sequelize(process.env.DB_URL, { logging: log.sql.bind(log, log) })
|
||||
this.ctx.sql = sequelize
|
||||
this.M = fetchModels(sequelize)
|
||||
this.ctx.M = this.M
|
||||
await sequelize.sync()
|
||||
|
||||
// this.ctx.redis = new (require('ioredis'))({
|
||||
// port: process.env.REDIS_PORT || '6379',
|
||||
// host: process.env.REDIS_HOST || 'localhost',
|
||||
// parser: 'hiredis',
|
||||
// dropBufferSupport: true,
|
||||
// enableReadyCheck: true,
|
||||
// enableOfflineQueue: true
|
||||
// })
|
||||
|
||||
this.ctx.discord = new (require('./services/discord'))(this.ctx)
|
||||
}
|
||||
|
||||
async mountRoutes () {
|
||||
fetchApis(this.router, this.ctx)
|
||||
this.__app.use(this.router.middleware())
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = Roleypoly
|
Loading…
Add table
Add a link
Reference in a new issue