public ApiResponse AddUpdateConnection([FromRoute] string endpoint, [FromQuery] string projectName, [FromQuery] string dbSourceName, [FromBody] Newtonsoft.Json.Linq.JObject json ) { try { bool isMetadata = (bool)json["isMetadata"].ToObject(typeof(bool)); string dataSource = json["dataSource"].ToString(); string catalog = json["catalog"].ToString(); string username = json["username"].ToString(); string password = json["password"].ToString(); int? port = json["port"].ToObject(typeof(int?)) as int?; bool integratedSecurity = json["authType"].ToString() == "100"; if (integratedSecurity) { username = password = null; } if (!port.HasValue) { port = 1433; } if (!ControllerHelper.GetProjectAndApp(projectName, dbSourceName, out var proj, out var dbSource, out var resp)) { return(resp); } if (!dbSource.GetEndpoint(endpoint, out var ep, out var resp2)) { return(ApiResponse.ExclamationModal(resp2.userErrorVal)); } CommonReturnValueWithApplication ret = null; if (isMetadata) { ret = ep.UpdateMetadataConnection(dataSource, catalog, username, password, port.Value); } else { ret = ep.UpdateExecConnection(dataSource, catalog, username, password, port.Value); } if (!ret.IsSuccess) { return(ApiResponse.ExclamationModal(ret.userErrorVal)); } WorkSpawner.RestartWorker(ep); SettingsInstance.SaveSettingsToFile(); return(ApiResponse.Success()); } catch (Exception ex) { return(ApiResponse.Exception(ex)); } }
public ApiResponse StartWorker([FromRoute] string id) { try { var worker = WorkSpawner.GetWorkerById(id); if (worker != null) { if (!WorkSpawner.RestartWorker(worker)) { return(ApiResponse.ExclamationModal("Timeout reached while waiting for running worker to restart.")); } return(ApiResponse.Success()); } else { return(ApiResponse.ExclamationModal($"Failed to find specified worker: {id}")); } } catch (Exception e) { return(ApiResponse.Exception(e)); } }
public void ShareMetadaFrom(Endpoint srcEndpoint) { if (srcEndpoint == null) { this.PullMetadataFromEndpointId = null; this.CachedRoutineList = new List <CachedRoutine>(); WorkSpawner.RestartWorker(this); } else { PullMetadataFromEndpointId = srcEndpoint.Id; this.CachedRoutineList = srcEndpoint.CachedRoutineList; } }