![JAR search and dependency download from the Maven repository](/logo.png)
io.wizzie.normalizer.funcs.FlatMapperFunction Maven / Gradle / Ivy
package io.wizzie.normalizer.funcs;
import io.wizzie.metrics.MetricsManager;
import org.apache.kafka.streams.KeyValue;
import org.apache.kafka.streams.kstream.KeyValueMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.Map;
/**
* This class is used to implement flat-mapper process where you can generate zero or more messages from one message
*/
public abstract class FlatMapperFunction implements Function>>>,
KeyValueMapper, Iterable>>> {
private final Logger log = LoggerFactory.getLogger(getClass());
/**
* Initialize flat mapper function
* @param properties Properties for flat mapper function
* @param metricsManager MetricsManager object for flat mapper function
*/
@Override
public void init(Map properties, MetricsManager metricsManager) {
prepare(properties, metricsManager);
log.info(" with {}", toString());
}
/**
* Apply a flat mapper function to Key-Value Kafka message
* @param key The key of Kafka message
* @param value The value of Kafka message
* @return A Iterable object with Kafka messages after apply flat mapper
*/
@Override
public Iterable>> apply(String key, Map value) {
return process(key, value);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy