package com.hubspot.singularity;
import java.util.Comparator;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.common.primitives.Doubles;
public class SingularityTaskRequestWithPriority {
private final SingularityTaskRequest taskRequest;
private final double weightedPriority;
@JsonCreator
public SingularityTaskRequestWithPriority(@JsonProperty("taskRequest") SingularityTaskRequest taskRequest, double weightedPriority) {
this.taskRequest = taskRequest;
this.weightedPriority = weightedPriority;
}
public static Comparator<SingularityTaskRequestWithPriority> weightedPriorityComparator() {
return new Comparator<SingularityTaskRequestWithPriority>() {
@Override public int compare(SingularityTaskRequestWithPriority o1, SingularityTaskRequestWithPriority o2) {
return Doubles.compare(o2.getWeightedPriority(), o1.getWeightedPriority());
}
};
}
public SingularityTaskRequest getTaskRequest() {
return taskRequest;
}
public double getWeightedPriority() {
return weightedPriority;
}
}