openhim-core
Version:
The OpenHIM core application that provides logging and routing of http requests
63 lines (50 loc) • 1.25 kB
JavaScript
var ChannelSchema, MediatorSchema, RouteDef, Schema, configDef, connectionDefault, mongoose, server;
mongoose = require("mongoose");
server = require("../server");
connectionDefault = server.connectionDefault;
Schema = mongoose.Schema;
RouteDef = require('./channels').RouteDef;
ChannelSchema = require('./channels').ChannelSchema;
exports.configParamTypes = ['string', 'bool', 'number', 'option', 'bigstring'];
configDef = {
"param": String,
"displayName": String,
"description": String,
"type": {
type: String,
"enum": exports.configParamTypes
},
"values": [
{
type: String
}
]
};
MediatorSchema = new Schema({
"urn": {
type: String,
required: true,
unique: true
},
"version": {
type: String,
required: true
},
"name": {
type: String,
required: true
},
"description": String,
"endpoints": [RouteDef],
"defaultChannelConfig": [ChannelSchema],
"configDefs": [configDef],
"config": Object,
"_configModifiedTS": Date,
"_uptime": Number,
"_lastHeartbeat": Date
});
MediatorSchema.index("defaultChannelConfig.name", {
sparse: true
});
exports.Mediator = connectionDefault.model('Mediator', MediatorSchema);
//# sourceMappingURL=mediators.js.map