public class OfferEvaluator
extends java.lang.Object
Protos.Offers and produces OfferRecommendations.
The determination of what OfferRecommendations, if any should be made are made
in reference to PodInstanceRequirements.| 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
InvalidRequirementExceptionjava.io.IOExceptionpublic 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.IOExceptionstatic void logOutcome(java.lang.StringBuilder stringBuilder,
EvaluationOutcome outcome,
java.lang.String indent)
java.util.UUID getTargetConfig(PodInstanceRequirement podInstanceRequirement, java.util.Collection<Protos.TaskInfo> taskInfos)