Exemple #1
0
        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;
 }