()
| 176 | } |
| 177 | |
| 178 | func (m *Manager) shutdown() error { |
| 179 | ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second) |
| 180 | defer cancel() |
| 181 | |
| 182 | m.tenantToQueueListMu.Lock() |
| 183 | defer m.tenantToQueueListMu.Unlock() |
| 184 | |
| 185 | var errs []error |
| 186 | for tenantID, ql := range m.tenantToQueueList { |
| 187 | if err := ql.shutdown(ctx); err != nil { |
| 188 | errs = append(errs, fmt.Errorf("failed to shutdown queuelist for tenantID=%s: %w", tenantID, err)) |
| 189 | } |
| 190 | } |
| 191 | |
| 192 | m.tenantToQueueList = make(map[string]*queueList) |
| 193 | |
| 194 | for forwarderName, forwarder := range m.forwarderNameToForwarder { |
| 195 | if err := forwarder.Shutdown(ctx); err != nil { |
| 196 | errs = append(errs, fmt.Errorf("failed to shutdown forwarder with name=%s: %w", forwarderName, err)) |
| 197 | } |
| 198 | } |
| 199 | |
| 200 | m.forwarderNameToForwarder = make(map[string]Forwarder) |
| 201 | |
| 202 | return multierr.Combine(errs...) |
| 203 | } |
| 204 | |
| 205 | func (m *Manager) shutdownQueueList(tenantID string, ql *queueList) { |
| 206 | if err := ql.shutdown(context.Background()); err != nil { |
no test coverage detected