in app/eventgen/generator/publishers/publishers.go [55:79]
func (pbrs *Publishers) Add(ctx context.Context, number int) {
pbrs.Lock()
defer pbrs.Unlock()
if number < 0 {
// Remove publishers
newLen := len(pbrs.publishers) + number
if newLen < 0 {
newLen = 0
}
stopPubs := pbrs.publishers[newLen:]
log.Printf("stopping %v publishers", len(stopPubs))
for _, p := range stopPubs {
p.Stop()
}
pbrs.publishers = pbrs.publishers[:newLen]
} else {
// Add publishers
log.Printf("starting %v publishers", number)
for i := 0; i < number; i++ {
name := pbrs.Topic.GetID() + "-publisher-" + strconv.Itoa(len(pbrs.publishers))
pbrs.addOne(ctx, name)
}
}
}