private MarketplaceMeteringClientOptions GetMarketplaceMeteringClientOptions() { var options = new MarketplaceMeteringClientOptions() { Diagnostics = { IsLoggingEnabled = true }, Retry = { Mode = RetryMode.Exponential, MaxRetries = 10, Delay = TimeSpan.FromSeconds(this.Mode == RecordedTestMode.Playback ? 0.01 : 1), MaxDelay = TimeSpan.FromSeconds(this.Mode == RecordedTestMode.Playback ? 0.1 : 60), NetworkTimeout = TimeSpan.FromSeconds(this.Mode == RecordedTestMode.Playback ? 100 : 400), }, Transport = new HttpClientTransport( new HttpClient() { Timeout = TimeSpan.FromSeconds(1000), }), }; if (this.Mode != RecordedTestMode.Live) { options.AddPolicy(new RecordedClientRequestIdPolicy(this.Recording, false), HttpPipelinePosition.PerCall); } return(this.InstrumentClientOptions(options)); }
public MarketplaceMeteringClient(Uri endpoint, TokenCredential tokenCredential, MarketplaceMeteringClientOptions options = null) { endpoint ??= new Uri("https://marketplaceapi.microsoft.com/api"); options ??= new MarketplaceMeteringClientOptions(); this.clientDiagnostics = new Azure.Core.Pipeline.ClientDiagnostics(options); this.pipeline = HttpPipelineBuilder.Build(options, new BearerTokenAuthenticationPolicy(tokenCredential, $"20e940b3-4c77-4b0b-9a53-9e16a1b010a7/.default")); this.endpoint = endpoint; }
public MarketplaceMeteringClient(TokenCredential tokenCredential, MarketplaceMeteringClientOptions options = null) : this(null, tokenCredential, options) { }