public IPage list()

in hugegraph-hubble/hubble-be/src/main/java/org/apache/hugegraph/service/load/JobManagerService.java [71:109]


    public IPage<JobManager> list(int connId, int pageNo, int pageSize, String content) {
        QueryWrapper<JobManager> query = Wrappers.query();
        query.eq("conn_id", connId);
        if (!content.isEmpty()) {
            query.like("job_name", content);
        }
        query.orderByDesc("create_time");
        Page<JobManager> page = new Page<>(pageNo, pageSize);
        IPage<JobManager> list = this.mapper.selectPage(page, query);
        list.getRecords().forEach(task -> {
            if (task.getJobStatus() == JobStatus.LOADING) {
                List<LoadTask> tasks = this.taskService.taskListByJob(task.getId());
                JobStatus status = JobStatus.SUCCESS;
                for (LoadTask loadTask : tasks) {
                    if (loadTask.getStatus().inRunning() ||
                        loadTask.getStatus() == LoadStatus.PAUSED ||
                        loadTask.getStatus() == LoadStatus.STOPPED) {
                        status = JobStatus.LOADING;
                        break;
                    }
                    if (loadTask.getStatus() == LoadStatus.FAILED) {
                        status = JobStatus.FAILED;
                        break;
                    }
                }

                if (status == JobStatus.SUCCESS ||
                    status == JobStatus.FAILED) {
                    task.setJobStatus(status);
                    this.update(task);
                }
            }
            Date endDate = task.getJobStatus() == JobStatus.FAILED ||
                           task.getJobStatus() == JobStatus.SUCCESS ?
                           task.getUpdateTime() : HubbleUtil.nowDate();
            task.setJobDuration(endDate.getTime() - task.getCreateTime().getTime());
        });
        return list;
    }