UNPKG

heroku-kafka

Version:
25 lines (24 loc) 874 B
// Wrapper around @heroku/no-kafka to make it easier to mock in tests import kafka from '@heroku/no-kafka'; export class KafkaClient { async createProducer(options) { return new kafka.Producer(options); } async createSimpleConsumer(options) { return new kafka.SimpleConsumer(options); } } // Export a singleton instance export const kafkaClient = new KafkaClient(); // Export convenience functions that use the singleton export async function createProducer(options) { return kafkaClient.createProducer(options); } export async function createSimpleConsumer(options) { return kafkaClient.createSimpleConsumer(options); } export const { COMPRESSION_GZIP } = kafka; export const { COMPRESSION_NONE } = kafka; export const { COMPRESSION_SNAPPY } = kafka; export const { EARLIEST_OFFSET } = kafka; export const { LATEST_OFFSET } = kafka;