diff --git a/lib/compute-schema.js b/lib/compute-schema.js new file mode 100644 index 00000000..e072c3b9 --- /dev/null +++ b/lib/compute-schema.js @@ -0,0 +1,12 @@ +const { asyncLocalStorage } = require('./async-storage') + +const computeSchema = (req, res, next) => { + const store = new Map() + store.set('schema', 'public') + store.set('defaultSchema', 'ERROR_SCHEMA') + asyncLocalStorage.run(store, () => { + next() + }) +} + +module.exports = computeSchema diff --git a/lib/routes.js b/lib/routes.js index 49095f15..9b062a22 100644 --- a/lib/routes.js +++ b/lib/routes.js @@ -8,6 +8,8 @@ const nocache = require('nocache') const authorize = require('./middlewares/authorize') const errorHandler = require('./middlewares/errorHandler') const filterOldRequests = require('./middlewares/filterOldRequests') +const computeSchema = require('./compute-schema') +const dbErrorCodes = require('./db-error-codes') const logger = require('./logger') const options = require('./options') const findOperatorId = require('./middlewares/operatorId') @@ -56,6 +58,7 @@ app.use('/', pairingRoutes) app.use(findOperatorId) app.use(populateDeviceId) +app.use(computeSchema) if (!devMode) app.use(authorize) app.use(configRequiredRoutes, populateSettings) app.use(filterOldRequests)