package org.ovirt.engine.core.bll.scheduling.utils; import java.util.Comparator; import org.ovirt.engine.core.common.businessentities.VM; /** * Comparator that compares the CPU usage of two VMs, with regard to the number of CPUs each VM has. */ public enum VmCpuUsageComparator implements Comparator<VM> { INSTANCE; @Override public int compare(VM vm1, VM vm2) { return Integer.compare(calculateCpuUsage(vm1), calculateCpuUsage(vm2)); } private static int calculateCpuUsage(VM o1) { return o1.getUsageCpuPercent() * o1.getNumOfCpus(); } }