示例#1
0
        /// <summary>
        /// Get Job IDs (Cluster Jobs)
        /// </summary>
        /// <param name="responseMessage">Scheduler response message</param>
        /// <returns></returns>
        public override IEnumerable <string> GetJobIds(string responseMessage)
        {
            List <string>  jobIds      = new();
            LinuxLocalInfo jobsAdapter = JsonSerializer.Deserialize <LinuxLocalInfo>(responseMessage.ToString());

            jobsAdapter.Jobs.ForEach(job => jobIds.Add(job.SchedulerJobId));
            return(jobIds);
        }
示例#2
0
        /// <summary>
        /// Read Parameters From Response
        /// </summary>
        /// <param name="cluster">Cluster</param>
        /// <param name="response">Scheduler response message</param>
        /// <returns></returns>
        public override IEnumerable <SubmittedTaskInfo> ReadParametersFromResponse(Cluster cluster, object response)
        {
            List <SubmittedTaskInfo> taskInfos   = new();
            LinuxLocalInfo           jobsAdapter = JsonSerializer.Deserialize <LinuxLocalInfo>(response.ToString());
            var allTasks = jobsAdapter.Jobs;

            taskInfos.AddRange(ConvertTasksToTaskInfoCollection(jobsAdapter, allTasks));

            return(taskInfos);
        }
示例#3
0
        /// <summary>
        /// Convert Tasks To TaskInfoCollection
        /// </summary>
        /// <param name="jobInfo">Job Clutser DTO</param>
        /// <param name="allTasks">Task mapped to LinuxLocalJobDTO Collection</param>
        /// <returns></returns>
        private List <SubmittedTaskInfo> ConvertTasksToTaskInfoCollection(LinuxLocalInfo jobInfo, List <LinuxLocalJobDTO> allTasks)
        {
            List <SubmittedTaskInfo> taskCollection = new();

            foreach (var taskAdapter in allTasks)
            {
                taskAdapter.CreationTime = jobInfo.CreateTime;
                taskAdapter.SubmitTime   = jobInfo.SubmitTime ?? default;
                taskCollection.Add(ConvertTaskToTaskInfo(taskAdapter));
            }
            return(taskCollection);
        }