public async Task <ChannelList> ListAsync( [GlobalParameter("subscriptionId")] string subscriptionId, [GlobalParameter("resourceGroupName")] string resourceGroupName, [GlobalParameter("accountName")] string accountName, [GlobalParameter("api-version"), FromQuery("api-version")] string apiVersion) { ApiVersionStore.ValidateApiVersion(apiVersion); Validator.ArgumentValidGuid(subscriptionId, nameof(subscriptionId)); Validator.ArgumentNotNullOrrWhiteSpace(resourceGroupName, nameof(resourceGroupName)); Validator.ArgumentNotNullOrrWhiteSpace(accountName, nameof(accountName)); this.LogActionBegin(); var result = new ChannelList { Channels = await this.accountManager.ListChannelsByAccountAsync( this.Request.GetRequestId(), subscriptionId, resourceGroupName, accountName) }; this.LogActionEnd($"Total {result.Channels.Count()} channels returned"); return(result); }
public async Task <Channel> CreateOrUpdateAsync( [GlobalParameter("subscriptionId")] string subscriptionId, [GlobalParameter("resourceGroupName")] string resourceGroupName, [GlobalParameter("accountName")] string accountName, [GlobalParameter("channelName")] string channelName, [FromBody] Channel channel, [GlobalParameter("api-version"), FromQuery("api-version")] string apiVersion) { ApiVersionStore.ValidateApiVersion(apiVersion); Validator.ArgumentValidGuid(subscriptionId, nameof(subscriptionId)); Validator.ArgumentNotNullOrrWhiteSpace(resourceGroupName, nameof(resourceGroupName)); Validator.ArgumentNotNullOrrWhiteSpace(accountName, nameof(accountName)); Validator.ArgumentNotNullOrrWhiteSpace(channelName, nameof(channelName)); Validator.ArgumentNotNullOrrWhiteSpace(channel.Properties.ChannelType, nameof(channel.Properties.ChannelType)); this.LogActionBegin($"Credential keys = {string.Join(",", channel.Properties.Credentials.Keys)}"); var result = await this.accountManager.CreateOrUpdateChannelAsync( this.Request.GetRequestId(), subscriptionId, resourceGroupName, accountName, channelName, channel); this.LogActionEnd($"Credential keys = {string.Join(",", result.Properties.Credentials.Keys)}"); return(result); }
public async Task <Account> CreateOrUpdateAsync( [GlobalParameter("subscriptionId")] string subscriptionId, [GlobalParameter("resourceGroupName")] string resourceGroupName, [GlobalParameter("accountName")] string accountName, [FromBody] Account account, [GlobalParameter("api-version"), FromQuery("api-version")] string apiVersion) { ApiVersionStore.ValidateApiVersion(apiVersion); Validator.ArgumentValidGuid(subscriptionId, nameof(subscriptionId)); Validator.ArgumentNotNullOrrWhiteSpace(resourceGroupName, nameof(resourceGroupName)); Validator.ArgumentNotNullOrrWhiteSpace(accountName, nameof(accountName)); Validator.ArgumentNotNullOrrWhiteSpace(account.SKU.Name, account.SKU.Name); Validator.ArgumentNotNullOrrWhiteSpace(account.Location, nameof(account.Location)); this.LogActionBegin( $"Location = {account.Location}\n" + $"SKU = {account.SKU?.Name}\n" + $"Tags = {this.SerializeTags(account.Tags)}"); var result = await this.accountManager.CreateOrUpdateAccountAsync( this.Request.GetRequestId(), subscriptionId, resourceGroupName, accountName, account); this.LogActionEnd( $"Resource ID = {result.Id}\n" + $"Location = {result.Location}\n" + $"SKU = {result.SKU?.Name}\n" + $"Tags = {this.SerializeTags(result.Tags)}"); return(result); }
public async Task <OperationList> ListAsync( [GlobalParameter("api-version"), FromQuery("api-version")] string apiVersion) { ApiVersionStore.ValidateApiVersion(apiVersion); return(await Task.FromResult(new OperationList { Operations = OperationStore.Operations })); }
public async Task <AccountList> ListAsync( [GlobalParameter("subscriptionId")] string subscriptionId, [GlobalParameter("api-version"), FromQuery("api-version")] string apiVersion) { ApiVersionStore.ValidateApiVersion(apiVersion); Validator.ArgumentValidGuid(subscriptionId, nameof(subscriptionId)); this.LogActionBegin(); var result = new AccountList { Accounts = await this.accountManager.ListAccountsAsync( this.Request.GetRequestId(), subscriptionId) }; this.LogActionEnd($"Total {result.Accounts.Count()} accounts returned"); return(result); }
public async Task <ChannelTypeDescriptionList> ListChannelTypesAsync( [GlobalParameter("subscriptionId")] string subscriptionId, [GlobalParameter("resourceGroupName")] string resourceGroupName, [GlobalParameter("accountName")] string accountName, [GlobalParameter("api-version"), FromQuery("api-version")] string apiVersion) { ApiVersionStore.ValidateApiVersion(apiVersion); Validator.ArgumentValidGuid(subscriptionId, nameof(subscriptionId)); Validator.ArgumentNotNullOrrWhiteSpace(resourceGroupName, nameof(resourceGroupName)); Validator.ArgumentNotNullOrrWhiteSpace(accountName, nameof(accountName)); this.LogActionBegin(); var result = await Task.FromResult(new ChannelTypeDescriptionList { Descriptions = ChannelTypeStore.Descriptions }); this.LogActionEnd($"Total {result.Descriptions.Count()} channel types returned"); return(result); }
public async Task <KeyDescription> RegenerateKeyAsync( [GlobalParameter("subscriptionId")] string subscriptionId, [GlobalParameter("resourceGroupName")] string resourceGroupName, [GlobalParameter("accountName")] string accountName, [FromBody] RegenerateKeyParameter parameter, [GlobalParameter("api-version"), FromQuery("api-version")] string apiVersion) { if (!this.ModelState.IsValid) { var error = this.ModelState.Values .SelectMany(s => s.Errors) .FirstOrDefault(); throw new InvalidArgumentException(error?.Exception?.Message ?? "Invalid model"); } ApiVersionStore.ValidateApiVersion(apiVersion); Validator.ArgumentValidGuid(subscriptionId, nameof(subscriptionId)); Validator.ArgumentNotNullOrrWhiteSpace(resourceGroupName, nameof(resourceGroupName)); Validator.ArgumentNotNullOrrWhiteSpace(accountName, nameof(accountName)); Validator.ArgumentNotNullOrrWhiteSpace(parameter.Name, nameof(parameter.Name)); this.LogActionBegin( $"Key name = {parameter.Name}\n" + $"Key rank = {parameter.Rank}"); var result = await this.accountManager.RegenerateKeyAsync( this.Request.GetRequestId(), subscriptionId, resourceGroupName, accountName, parameter); this.LogActionEnd(); return(result); }