UNPKG

737 BJavaScriptView Raw
1/* eslint global-require: 0 */
2const debug = require('debug')('loopback:component:mq')
3const modelDefinition = require('./models/queue.json')
4
5// Remove properties that will confuse LB
6function getModelSettings(def) {
7 const settings = {}
8
9 for (const s in def) {
10 if (def.hasOwnProperty(s)) {
11 if (s !== 'name' || s !== 'properties') {
12 settings[s] = def[s]
13 }
14 }
15 }
16 return settings
17}
18
19module.exports = function setupModelFn(app, ds, rabbit, topology) {
20 debug('setupModelFn')
21
22 const newModel = ds.createModel(
23 modelDefinition.name,
24 modelDefinition.properties,
25 getModelSettings(modelDefinition)
26 )
27
28 const Model = require('./models/queue')(newModel, rabbit, topology)
29
30 app.model(Model)
31}
32