pkg/util/azureclient/mgmt/features/providers_addons.go (22 lines of code) (raw):
package features
// Copyright (c) Microsoft Corporation.
// Licensed under the Apache License 2.0.
import (
"context"
mgmtfeatures "github.com/Azure/azure-sdk-for-go/services/resources/mgmt/2019-07-01/features"
)
// ProvidersClientAddons is a minimal interface for azure ProvidersClient
type ProvidersClientAddons interface {
List(ctx context.Context, top *int32, expand string) (providers []mgmtfeatures.Provider, err error)
}
func (c *providersClient) List(ctx context.Context, top *int32, expand string) (providers []mgmtfeatures.Provider, err error) {
page, err := c.ProvidersClient.List(ctx, top, expand)
if err != nil {
return nil, err
}
for page.NotDone() {
providers = append(providers, page.Values()...)
err = page.Next()
if err != nil {
return nil, err
}
}
return providers, nil
}