.
This commit is contained in:
parent
f848c57e39
commit
8d22d5e830
@ -9,6 +9,9 @@ public class EventType<T> {
|
|||||||
public final TypeToken<T> typeToken;
|
public final TypeToken<T> typeToken;
|
||||||
private final Consumer<T> consumer;
|
private final Consumer<T> consumer;
|
||||||
|
|
||||||
|
private final static TypeToken<String> stringToken = new TypeToken<>() {
|
||||||
|
};
|
||||||
|
|
||||||
private EventType(String topic, TypeToken<T> typeToken, Consumer<T> consumer) {
|
private EventType(String topic, TypeToken<T> typeToken, Consumer<T> consumer) {
|
||||||
this.topic = topic;
|
this.topic = topic;
|
||||||
this.typeToken = typeToken;
|
this.typeToken = typeToken;
|
||||||
@ -19,6 +22,10 @@ public class EventType<T> {
|
|||||||
return new EventType<>(topic, typeToken, consumer);
|
return new EventType<>(topic, typeToken, consumer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static EventType of(String topic, Consumer<String> consumer) {
|
||||||
|
return new EventType(topic, stringToken, consumer);
|
||||||
|
}
|
||||||
|
|
||||||
public void accept(T t) {
|
public void accept(T t) {
|
||||||
consumer.accept(t);
|
consumer.accept(t);
|
||||||
}
|
}
|
||||||
|
@ -15,7 +15,11 @@ public class MyConsumer extends KafakConsumer {
|
|||||||
addEventType(
|
addEventType(
|
||||||
EventType.of("a1", new TypeToken<Float>() {
|
EventType.of("a1", new TypeToken<Float>() {
|
||||||
}, r -> {
|
}, r -> {
|
||||||
System.out.println("我收到了消息 主题A 事件:" + JsonConvert.root().convertTo(r));
|
System.out.println("我收到了消息 主题a1 事件:" + JsonConvert.root().convertTo(r));
|
||||||
|
}),
|
||||||
|
|
||||||
|
EventType.of("bx", str -> {
|
||||||
|
System.out.println("我收到了消息 主题bx 事件:" + str);
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user