strapi/packages/core/database.old/lib/require-connector.js

35 lines
813 B
JavaScript
Raw Normal View History

2019-09-20 12:44:24 +02:00
'use strict';
const VError = require('verror');
/**
* Requires a database connector
* @param {string} connector connector name
* @param {DatabaseManager} databaseManager reference to the database manager
*/
module.exports = function requireConnector(connector) {
if (!connector) {
2021-04-29 11:11:46 +02:00
throw new VError({ name: 'ConnectorError' }, 'initialize connector without name');
2019-09-20 12:44:24 +02:00
}
try {
2021-04-29 13:51:12 +02:00
require.resolve(`@strapi/connector-${connector}`);
2019-09-20 12:44:24 +02:00
} catch (error) {
throw new VError(
{ name: 'ConnectorError', cause: error },
'connector "%s" not found',
connector
);
}
try {
2021-04-29 13:51:12 +02:00
return require(`@strapi/connector-${connector}`);
2019-09-20 12:44:24 +02:00
} catch (error) {
throw new VError(
{ name: 'ConnectorError', cause: error },
'initialize connector "%s"',
connector
);
}
};