/** * XML-RPC callback listener * * @author Adhidarma Hadiwinoto <me@adhisimon.org> * @since 2021-06-02 * @version 20210602 */ const MODULE_NAME = 'CALLBACK'; const express = require('express'); const uniqid = require('uniqid'); const config = require('komodo-sdk/config'); const logger = require('komodo-sdk/logger'); const commonMiddleware = require('./common-middleware'); const mainHandler = require('./main-handler'); const listenPort = config.partner.callback_port || config.reverse_report_port; if (!listenPort) { logger.warn(`${MODULE_NAME} B2D51894: Please specified callback listen port on config.partner.callback_port`); process.exit(1); } const app = express(); app.use((req, res, next) => { res.locals.xid = uniqid(); next(); }); app.use(express.text({ type: 'text/*' })); app.use(commonMiddleware); app.use(mainHandler); app .listen(listenPort, () => { logger.verbose(`${MODULE_NAME} 12322885: Start listening`, { port: listenPort, }); }) .on('error', (e) => { logger.warn(`${MODULE_NAME} 03709C04: Exception on starting`, { eCode: e.code, eMessage: e.message, }); process.exit(1); });