public async Task <AddClusterResponse> AddClusterAsync(AddClusterRequest req) { if (!Enum.TryParse <JobType>(req.ClusterCriteria.JobType, out JobType jobType)) { throw new SjaasServiceValidationException("invalid job type specified: " + req.ClusterCriteria.JobType); } if (!Enum.TryParse <ClusterStatus>(req.ClusterStatus, out ClusterStatus clusterStatus)) { throw new SjaasServiceValidationException("invalid cluster status specified: " + req.ClusterStatus); } var cluster = new DataModel.Cluster() { RefId = Guid.NewGuid().ToString(), SparkClusterId = req.SparkClusterId, JobPriority = req.ClusterCriteria.JobPriority, JobType = jobType, TenantId = req.ClusterCriteria.TenantId, ClusterStatus = clusterStatus }; await datastore.AddClusterAsync(cluster); return(new AddClusterResponse() { RefId = cluster.RefId }); }
private static bool IsAddClusterRequestValid(AddClusterRequest req) { if (string.IsNullOrEmpty(req.SparkClusterId) || string.IsNullOrEmpty(req.ClusterStatus)) { return(false); } var clusterCriteria = req.ClusterCriteria; if (string.IsNullOrEmpty(clusterCriteria.JobPriority) || string.IsNullOrEmpty(clusterCriteria.JobType)) { return(false); } return(true); }