public async Task <IHttpActionResult> GetDataSources(CancellationToken cancellationToken) { try { var owinContext = Request.GetOwinContext(); var dataCoreConnectionSettings = owinContext.GetDataCoreConnectionSettings(); var dataCoreClient = new DataCore.Client.DataCoreHttpClient(dataCoreConnectionSettings, new LogManager()); var dataSources = await dataCoreClient.GetDataSourcesAsync(cancellationToken).ConfigureAwait(false); if (cancellationToken.IsCancellationRequested) { return(StatusCode(System.Net.HttpStatusCode.NoContent)); // 204 } var result = new SomeApp.Models.DataSourcesViewModel() { DataSources = dataSources.OrderBy(x => x.Name.DisplayName).ToArray() }; return(Ok(result)); // 200 } catch (Exception e) { Log.Error($"An error occurred in {nameof(DataApiController)}.{nameof(GetDataSources)}.", e); throw; // 500 } }
public async Task <IHttpActionResult> GetDataSources(CancellationToken cancellationToken) { var owinContext = Request.GetOwinContext(); var dataCoreConnectionSettings = owinContext.GetDataCoreConnectionSettings(); var dataCoreClient = new DataCore.Client.DataCoreHttpClient(dataCoreConnectionSettings); var dataSources = await dataCoreClient.GetDataSourcesAsync(cancellationToken).ConfigureAwait(false); if (cancellationToken.IsCancellationRequested) { return(StatusCode(System.Net.HttpStatusCode.NoContent)); // 204 } var result = new GetDataSourcesResponse() { AuthenticationType = owinContext.Authentication.User.Identity.AuthenticationType, UserName = owinContext.Authentication.User.Identity.GetUserName(), DataCoreUrl = dataCoreConnectionSettings.Address.ToString(), DataSources = dataSources.OrderBy(x => x.Name.DisplayName).Select(x => x.Name).ToArray() }; return(Ok(result)); // 200 }