public async Task <IActionResult> SourceControlManager() { IMergeRequestService fetchingService = null; string configJson = await IOHelper.ReadFile(this.configFilePath); List <WidgetConfiguration> widgetConfiguration = JsonConvert.DeserializeObject <List <WidgetConfiguration> >(configJson); if (widgetConfiguration != null && widgetConfiguration.Count > 0) { foreach (WidgetConfiguration item in widgetConfiguration) { if (item.WidgetType == "scm") { object[] args = new object[] { item.RestApiUrls, item.RestApiHeader, }; fetchingService = (IMergeRequestService)Activator.CreateInstance(Type.GetType(item.ServiceName), args); } } } List <MergeRequest> result = new List <MergeRequest>(); if (fetchingService != null) { result = fetchingService.GetMergeRequests(); } return(this.Ok(result)); }
public MergeRequestController(IMergeRequestService mergeRequestService, IWebHostEnvironment hostingEnvironment) { _mergeRequestService = mergeRequestService; _hostingEnvironment = hostingEnvironment; }