Files
kami-parse-server/src/ParseMessageQueue.js

23 lines
824 B
JavaScript
Raw Normal View History

import { loadAdapter } from './Adapters/AdapterLoader';
import { EventEmitterMQ } from './Adapters/MessageQueue/EventEmitterMQ';
const ParseMessageQueue = {};
ParseMessageQueue.createPublisher = function (config: any): any {
const adapter = loadAdapter(config.messageQueueAdapter, EventEmitterMQ, config);
if (typeof adapter.createPublisher !== 'function') {
throw 'pubSubAdapter should have createPublisher()';
}
return adapter.createPublisher(config);
};
ParseMessageQueue.createSubscriber = function (config: any): void {
const adapter = loadAdapter(config.messageQueueAdapter, EventEmitterMQ, config);
if (typeof adapter.createSubscriber !== 'function') {
throw 'messageQueueAdapter should have createSubscriber()';
}
return adapter.createSubscriber(config);
};
export { ParseMessageQueue };