16 package org.openkilda.floodlight.kafka;
18 import static com.google.common.base.Preconditions.checkArgument;
19 import static java.util.Objects.requireNonNull;
23 import java.util.Timer;
24 import java.util.TimerTask;
28 private final long interval;
29 private final String topoDiscoTopic;
31 private final Timer timer;
32 private TimerTask task;
35 this.producer = producer;
37 checkArgument(interval > 0,
"interval must be positive");
38 this.interval = interval;
40 this.topoDiscoTopic = requireNonNull(topoDiscoTopic,
"topoDiscoTopic cannot be null");
43 timer =
new Timer(
"kafka.HeartBeat",
true);
44 timer.scheduleAtFixedRate(task, interval, interval);
52 timer.scheduleAtFixedRate(replace, interval, interval);
HeartBeat(Producer producer, long interval, String topoDiscoTopic)