redis-smq
Version:
A high-performance, reliable, and scalable message queue for Node.js.
41 lines • 1.3 kB
JavaScript
import { key } from '../builder.js';
const exchangePath = (ns, exchange) => [
'ns',
ns,
'exs',
exchange,
];
export const exchange = {
getExchangeKeys(ns, exchangeName) {
return {
keyExchange: key(...exchangePath(ns, exchangeName)),
keyExchangeProperties: key(...exchangePath(ns, exchangeName), 'prop'),
};
},
getExchangeDirectKeys(ns, exchangeName) {
return {
keyExchangeRoutingKeys: key(...exchangePath(ns, exchangeName), 'rk'),
};
},
getExchangeDirectRoutingKeyKeys(ns, exchangeName, routingKey) {
return {
keyRoutingKeyQueues: key(...exchangePath(ns, exchangeName), 'rk', routingKey, 'q'),
};
},
getExchangeTopicKeys(ns, exchangeName) {
return {
keyExchangeBindingPatterns: key(...exchangePath(ns, exchangeName), 'pat'),
};
},
getExchangeTopicBindingPatternKeys(ns, exchangeName, pattern) {
return {
keyBindingPatternQueues: key(...exchangePath(ns, exchangeName), 'pat', pattern, 'q'),
};
},
getExchangeFanoutKeys(ns, exchangeName) {
return {
keyFanoutQueues: key(...exchangePath(ns, exchangeName), 'q'),
};
},
};
//# sourceMappingURL=exchange.js.map