srkukarni commented on a change in pull request #2266: Integrate functions and
io with schema registry
URL: https://github.com/apache/incubator-pulsar/pull/2266#discussion_r209768156
##########
File path:
pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/PulsarSink.java
##########
@@ -30,59 +30,60 @@
import org.apache.commons.lang3.StringUtils;
import org.apache.pulsar.client.api.Consumer;
import org.apache.pulsar.client.api.ConsumerEventListener;
-import org.apache.pulsar.client.api.Message;
-import org.apache.pulsar.client.api.MessageBuilder;
import org.apache.pulsar.client.api.Producer;
import org.apache.pulsar.client.api.PulsarClient;
import org.apache.pulsar.client.api.PulsarClientException;
+import org.apache.pulsar.client.api.Schema;
+import org.apache.pulsar.client.api.TypedMessageBuilder;
import org.apache.pulsar.functions.api.Record;
-import org.apache.pulsar.functions.api.SerDe;
-import org.apache.pulsar.functions.api.utils.DefaultSerDe;
-import org.apache.pulsar.functions.instance.InstanceUtils;
import org.apache.pulsar.functions.instance.SinkRecord;
import
org.apache.pulsar.functions.instance.producers.AbstractOneOuputTopicProducers;
import
org.apache.pulsar.functions.instance.producers.MultiConsumersOneOuputTopicProducers;
import org.apache.pulsar.functions.instance.producers.Producers;
import org.apache.pulsar.functions.source.PulsarRecord;
+import org.apache.pulsar.functions.source.TopicSchema;
import org.apache.pulsar.functions.utils.FunctionConfig;
import org.apache.pulsar.functions.utils.Reflections;
import org.apache.pulsar.io.core.Sink;
import org.apache.pulsar.io.core.SinkContext;
-import net.jodah.typetools.TypeResolver;
-
@Slf4j
public class PulsarSink<T> implements Sink<T> {
- private PulsarClient client;
- private PulsarSinkConfig pulsarSinkConfig;
- private SerDe<T> outputSerDe;
+ private final PulsarClient client;
+ private final PulsarSinkConfig pulsarSinkConfig;
+
+ private PulsarSinkProcessor<T> pulsarSinkProcessor;
- private PulsarSinkProcessor pulsarSinkProcessor;
+ private final TopicSchema topicSchema;
private interface PulsarSinkProcessor<T> {
- void initializeOutputProducer(String outputTopic) throws Exception;
+ void initializeOutputProducer(String outputTopic, Schema<T> schema)
throws Exception;
Review comment:
Some comments around these?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services