@axway/api-builder-runtime
Version:
API Builder Runtime
22 lines (19 loc) • 753 B
JavaScript
var formats = [],
formatters = {},
extensions = {};
// these need to be in order of preference if a client doesn't have an accept header
[ 'json', 'xml', 'csv', 'yaml', 'text', 'javascript' ].forEach(function (type) {
var formatterModule = require('./' + type);
formats.push(type);
formatters[type] = formatterModule.format;
if (formatterModule.extensions && Array.isArray(formatterModule.extensions)) {
formatterModule.extensions.forEach(function (extension) {
extensions[extension] = formatterModule.defaultMimeType;
});
} else {
extensions[formatterModule.extensions || type] = formatterModule.defaultMimeType;
}
});
module.exports.formats = formats;
module.exports.formatters = formatters;
module.exports.extensions = extensions;