in pulsar/consumer_regex.go [322:342]
func (c *regexConsumer) monitor() {
for {
select {
case <-c.closeCh:
return
case <-c.ticker.C:
c.log.Debug("Auto discovering topics")
if !c.closed() {
c.discover()
}
case topics := <-c.subscribeCh:
if len(topics) > 0 && !c.closed() {
c.subscribe(topics, c.dlq, c.rlq)
}
case topics := <-c.unsubscribeCh:
if len(topics) > 0 && !c.closed() {
c.unsubscribe(topics)
}
}
}
}