()
| 401 | } |
| 402 | |
| 403 | func (ca *clusterAdmin) describeClusterUsingAPI() (brokers []*Broker, controllerID int32, err error) { |
| 404 | var response *DescribeClusterResponse |
| 405 | err = ca.retryOnError(isRetriableControllerError, func() error { |
| 406 | controller, err := ca.Controller() |
| 407 | if err != nil { |
| 408 | return err |
| 409 | } |
| 410 | |
| 411 | request := NewDescribeClusterRequest(ca.conf.Version) |
| 412 | response, err = controller.DescribeCluster(request) |
| 413 | if err != nil { |
| 414 | return err |
| 415 | } |
| 416 | if !errors.Is(response.Err, ErrNoError) { |
| 417 | if isRetriableControllerError(response.Err) { |
| 418 | _, _ = ca.refreshController() |
| 419 | } |
| 420 | if response.ErrorMessage != nil && *response.ErrorMessage != "" { |
| 421 | return fmt.Errorf("%w: %s", response.Err, *response.ErrorMessage) |
| 422 | } |
| 423 | return response.Err |
| 424 | } |
| 425 | return nil |
| 426 | }) |
| 427 | if err != nil { |
| 428 | return nil, 0, err |
| 429 | } |
| 430 | |
| 431 | brokers = convertDescribeClusterBrokers(response.Brokers) |
| 432 | return brokers, response.ControllerID, nil |
| 433 | } |
| 434 | |
| 435 | func (ca *clusterAdmin) describeClusterUsingMetadata() (brokers []*Broker, controllerID int32, err error) { |
| 436 | var response *MetadataResponse |
no test coverage detected