@biorate/rdkafka
Version:
Rdkafka connector
33 lines • 1.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.RDKafkaConsumerConnection = void 0;
const node_rdkafka_1 = require("node-rdkafka");
class RDKafkaConsumerConnection extends node_rdkafka_1.KafkaConsumer {
consumePromise(number) {
return new Promise((resolve, reject) => super.consume(number, (e, messages) => (e ? reject(e) : resolve(messages))));
}
connectPromise(metadataOptions) {
return new Promise((resolve, reject) => super.connect(metadataOptions, (e) => e ? reject(e) : resolve(this)));
}
committedPromise(timeout, toppars) {
return new Promise((resolve, reject) => {
const callback = (e) => (e ? reject(e) : resolve(this));
toppars
? super.committed(toppars, timeout, callback)
: super.committed(timeout, callback);
});
}
seekPromise(toppar, timeout) {
return new Promise((resolve, reject) => super.seek(toppar, timeout, (e) => e ? reject(e) : resolve(this)));
}
offsetsForTimesPromise(topicPartitions, timeout) {
return new Promise((resolve, reject) => {
const callback = (e) => (e ? reject(e) : resolve());
timeout
? super.offsetsForTimes(topicPartitions, timeout, callback)
: super.offsetsForTimes(topicPartitions, callback);
});
}
}
exports.RDKafkaConsumerConnection = RDKafkaConsumerConnection;
//# sourceMappingURL=consumer.js.map