/// <summary> /// Initializes a new instance of the <see cref="SubscriptionsController"/> class. /// </summary> /// <param name="marketplaceClient">Marketplace API client.</param> /// <param name="meteringClient">Metering API client.</param> /// <param name="operationsStore">Operations store.</param> /// <param name="dimensionUsageStore">DimensionUsage store.</param> /// <param name="options">Solution options.</param> public SubscriptionsController( IMarketplaceSaaSClient marketplaceClient, IMarketplaceMeteringClient meteringClient, IOperationsStore operationsStore, IDimensionUsageStore dimensionUsageStore, IOptionsMonitor <CommandCenterOptions> options) { if (options == null) { throw new ArgumentNullException(nameof(options)); } this.marketplaceClient = marketplaceClient; this.meteringClient = meteringClient; this.operationsStore = operationsStore; this.dimensionUsageStore = dimensionUsageStore; this.options = options.CurrentValue; }
/// <summary> /// Initializes a new instance of the <see cref="MeteredBillingApiClient"/> class. /// </summary> /// <param name="sdkSettings">The SDK settings.</param> /// <param name="logger">The logger.</param> public MeteredBillingApiService(IMarketplaceMeteringClient meteringClient, SaaSApiClientConfiguration sdkSettings, ILogger logger) : base(logger) { this.meteringClient = meteringClient; this.ClientConfiguration = sdkSettings; this.Logger = logger; }