func New(config *azclients.ClientConfig) *Client {
	baseURI := config.ResourceManagerEndpoint
	authorizer := config.Authorizer
	armClient := armclient.New(authorizer, baseURI, config.UserAgent, APIVersion, config.Location, config.Backoff)
	rateLimiterReader, rateLimiterWriter := azclients.NewRateLimiter(config.RateLimitConfig)

	klog.V(2).Infof("Azure VirtualMachine client (read ops) using rate limit config: QPS=%g, bucket=%d",
		config.RateLimitConfig.CloudProviderRateLimitQPS,
		config.RateLimitConfig.CloudProviderRateLimitBucket)
	klog.V(2).Infof("Azure VirtualMachine client (write ops) using rate limit config: QPS=%g, bucket=%d",
		config.RateLimitConfig.CloudProviderRateLimitQPSWrite,
		config.RateLimitConfig.CloudProviderRateLimitBucketWrite)

	client := &Client{
		armClient:         armClient,
		rateLimiterReader: rateLimiterReader,
		rateLimiterWriter: rateLimiterWriter,
		subscriptionID:    config.SubscriptionID,
	}

	return client
}
// New creates a new VirtualMachine client with ratelimiting.
New creates a new VirtualMachine client with ratelimiting.
// New creates a new VirtualMachine client with ratelimiting .
func New(config *azclients.ClientConfig) *Client {
	baseURI := config.ResourceManagerEndpoint
	authorizer := config.Authorizer
	armClient := armclient.New(authorizer, baseURI, config.UserAgent, APIVersion, config.Location, config.Backoff)
	rateLimiterReader, rateLimiterWriter := azclients.NewRateLimiter(config.RateLimitConfig)
	klog.V(2).Infof("Azure VirtualMachine client (read ops) using rate limit config: QPS=%g, bucket=%d",
		config.RateLimitConfig.CloudProviderRateLimitQPS,
		config.RateLimitConfig.CloudProviderRateLimitBucket)
	klog.V(2).Infof("Azure VirtualMachine client (write ops) using rate limit config: QPS=%g, bucket=%d",
		config.RateLimitConfig.CloudProviderRateLimitQPSWrite,
		config.RateLimitConfig.CloudProviderRateLimitBucketWrite)
	client := &Client{
		armClient:         armClient,
		rateLimiterReader: rateLimiterReader,
		rateLimiterWriter: rateLimiterWriter,
		subscriptionID:    config.SubscriptionID,
	}
	return client
}
func New ( config * azclients . ClientConfig ) * Client { baseURI := config . ResourceManagerEndpoint authorizer := config . Authorizer armClient := armclient . New ( authorizer , baseURI , config . UserAgent , APIVersion , config . Location , config . Backoff ) rateLimiterReader , rateLimiterWriter := azclients . NewRateLimiter ( config . RateLimitConfig ) klog . V ( 2 ) . Infof ( " " , config . RateLimitConfig . CloudProviderRateLimitQPS , config . RateLimitConfig . CloudProviderRateLimitBucket ) klog . V ( 2 ) . Infof ( " " , config . RateLimitConfig . CloudProviderRateLimitQPSWrite , config . RateLimitConfig . CloudProviderRateLimitBucketWrite ) client := & Client { armClient : armClient , rateLimiterReader : rateLimiterReader , rateLimiterWriter : rateLimiterWriter , subscriptionID : config . SubscriptionID , } return client }
New creates a new VirtualMachine client with ratelimiting.
New creates a new VirtualMachine client with ratelimiting .