/** * */ package com.vip.saturn.job.console.service.helper; import java.util.Collections; import java.util.Comparator; import java.util.List; import com.vip.saturn.job.console.domain.AbnormalJob; import com.vip.saturn.job.console.domain.DomainStatistics; import com.vip.saturn.job.console.domain.ExecutorStatistics; import com.vip.saturn.job.console.domain.JobStatistics; /** * @author chembo.huang * */ public class DashboardServiceHelper { public static List<DomainStatistics> sortDomainByAllTimeFailureRate(List<DomainStatistics> domainList) { Collections.sort(domainList, new Comparator<DomainStatistics>() { @Override public int compare(DomainStatistics o1, DomainStatistics o2) { return Float.compare(o2.getFailureRateOfAllTime(), o1.getFailureRateOfAllTime()); } }); return domainList; } public static List<DomainStatistics> sortDomainByShardingCount(List<DomainStatistics> domainList) { Collections.sort(domainList, new Comparator<DomainStatistics>() { @Override public int compare(DomainStatistics o1, DomainStatistics o2) { return o1.getShardingCount() < o2.getShardingCount() ? 1:(o1.getShardingCount() == o2.getShardingCount()?0:-1); } }); return domainList; } public static List<JobStatistics> sortJobByAllTimeFailureRate(List<JobStatistics> jobList) { Collections.sort(jobList, new Comparator<JobStatistics>() { @Override public int compare(JobStatistics o1, JobStatistics o2) { return Float.compare(o2.getFailureRateOfAllTime(), o1.getFailureRateOfAllTime()); } }); return jobList; } public static List<JobStatistics> sortJobByLoadLevel(List<JobStatistics> jobList) { Collections.sort(jobList, new Comparator<JobStatistics>() { @Override public int compare(JobStatistics o1, JobStatistics o2) { return o1.getTotalLoadLevel() < o2.getTotalLoadLevel() ? 1:(o1.getTotalLoadLevel() == o2.getTotalLoadLevel()?0:-1); } }); return jobList; } public static List<JobStatistics> sortJobByDayProcessCount(List<JobStatistics> jobList) { Collections.sort(jobList, new Comparator<JobStatistics>() { @Override public int compare(JobStatistics o1, JobStatistics o2) { return o1.getProcessCountOfTheDay() < o2.getProcessCountOfTheDay() ? 1:(o1.getProcessCountOfTheDay() == o2.getProcessCountOfTheDay()?0:-1); } }); return jobList; } public static List<ExecutorStatistics> sortExecutorByLoadLevel(List<ExecutorStatistics> executorList) { Collections.sort(executorList, new Comparator<ExecutorStatistics>() { @Override public int compare(ExecutorStatistics o1, ExecutorStatistics o2) { return o1.getLoadLevel() < o2.getLoadLevel() ? 1:(o1.getLoadLevel() == o2.getLoadLevel()?0:-1); } }); return executorList; } public static List<AbnormalJob> sortUnnormaoJobByTimeDesc(List<AbnormalJob> unnormalJobList) { Collections.sort(unnormalJobList, new Comparator<AbnormalJob>() { @Override public int compare(AbnormalJob o1, AbnormalJob o2) { return o1.getNextFireTime() < o2.getNextFireTime() ? 1:(o1.getNextFireTime() == o2.getNextFireTime()?0:-1); } }); return unnormalJobList; } public static List<ExecutorStatistics> sortExecutorByFailureRate(List<ExecutorStatistics> executorList) { Collections.sort(executorList, new Comparator<ExecutorStatistics>() { @Override public int compare(ExecutorStatistics o1, ExecutorStatistics o2) { return Float.compare(o2.getFailureRateOfTheDay(), o1.getFailureRateOfTheDay()); } }); return executorList; } }