public class OfferEvaluator
extends java.lang.Object
Protos.Offer
s and produces OfferRecommendation
s.
The determination of what OfferRecommendation
s, if any should be made are made
in reference to PodInstanceRequirement
s.Constructor and Description |
---|
OfferEvaluator(StateStore stateStore,
OfferOutcomeTracker offerOutcomeTracker,
java.lang.String serviceName,
java.util.UUID targetConfigId,
SchedulerConfig schedulerConfig,
boolean useDefaultExecutor) |
Modifier and Type | Method and Description |
---|---|
java.util.List<OfferRecommendation> |
evaluate(PodInstanceRequirement podInstanceRequirement,
java.util.List<Protos.Offer> offers) |
java.util.List<OfferEvaluationStage> |
getEvaluationPipeline(PodInstanceRequirement podInstanceRequirement,
java.util.Collection<Protos.TaskInfo> allTasks,
java.util.Map<java.lang.String,Protos.TaskInfo> thisPodTasks) |
(package private) java.util.UUID |
getTargetConfig(PodInstanceRequirement podInstanceRequirement,
java.util.Collection<Protos.TaskInfo> taskInfos) |
(package private) static void |
logOutcome(java.lang.StringBuilder stringBuilder,
EvaluationOutcome outcome,
java.lang.String indent) |
public OfferEvaluator(StateStore stateStore, OfferOutcomeTracker offerOutcomeTracker, java.lang.String serviceName, java.util.UUID targetConfigId, SchedulerConfig schedulerConfig, boolean useDefaultExecutor)
public java.util.List<OfferRecommendation> evaluate(PodInstanceRequirement podInstanceRequirement, java.util.List<Protos.Offer> offers) throws InvalidRequirementException, java.io.IOException
InvalidRequirementException
java.io.IOException
public java.util.List<OfferEvaluationStage> getEvaluationPipeline(PodInstanceRequirement podInstanceRequirement, java.util.Collection<Protos.TaskInfo> allTasks, java.util.Map<java.lang.String,Protos.TaskInfo> thisPodTasks) throws java.io.IOException
java.io.IOException
static void logOutcome(java.lang.StringBuilder stringBuilder, EvaluationOutcome outcome, java.lang.String indent)
java.util.UUID getTargetConfig(PodInstanceRequirement podInstanceRequirement, java.util.Collection<Protos.TaskInfo> taskInfos)