Hi, all:
Recently I have read kafka streams join
document(https://docs.confluent.io/current/streams/developer-guide.html#kafka-streams-dsl
<https://docs.confluent.io/current/streams/developer-guide.html#kafka-streams-dsl>).
The sample code is pasted below:
import java.util.concurrent.TimeUnit;
KStream<String, Long> left = ...;
KStream<String, Double> right = ...;
// Java 7 example
KStream<String, String> joined = left.join(right,
new ValueJoiner<Long, Double, String>() {
@Override
public String apply(Long leftValue, Double rightValue) {
return "left=" + leftValue + ", right=" + rightValue;
}
},
JoinWindows.of(TimeUnit.MINUTES.toMillis(5)),
Serdes.String(), /* key */
Serdes.Long(), /* left value */
Serdes.Double() /* right value */
);
so the question is :
1) which parameter is used for setting result value(returned by ValueJoiner)
Serdes class ?
the sample code only set key , left value and right value Serdes class.
2) if ValueJoiner return customer value type, how to set the result value
Serdes class ?