From 5141973a055324c411aa8f745fe5b9300d02956b Mon Sep 17 00:00:00 2001 From: Arne Juul Date: Fri, 10 Feb 2023 21:22:58 +0000 Subject: handle that the component graph contains multiple ModelsEvaluator instances (take 2) --- .../ai/vespa/models/handler/ModelsEvaluationHandler.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'model-evaluation') diff --git a/model-evaluation/src/main/java/ai/vespa/models/handler/ModelsEvaluationHandler.java b/model-evaluation/src/main/java/ai/vespa/models/handler/ModelsEvaluationHandler.java index 1bcd6363d2d..07388460422 100644 --- a/model-evaluation/src/main/java/ai/vespa/models/handler/ModelsEvaluationHandler.java +++ b/model-evaluation/src/main/java/ai/vespa/models/handler/ModelsEvaluationHandler.java @@ -4,6 +4,8 @@ package ai.vespa.models.handler; import ai.vespa.models.evaluation.FunctionEvaluator; import ai.vespa.models.evaluation.Model; import ai.vespa.models.evaluation.ModelsEvaluator; +import com.yahoo.component.annotation.Inject; +import com.yahoo.component.provider.ComponentRegistry; import com.yahoo.container.jdisc.HttpRequest; import com.yahoo.container.jdisc.HttpResponse; import com.yahoo.container.jdisc.ThreadedHttpRequestHandler; @@ -39,9 +41,19 @@ public class ModelsEvaluationHandler extends ThreadedHttpRequestHandler { private final ModelsEvaluator modelsEvaluator; + @Inject + public ModelsEvaluationHandler(ComponentRegistry registry, + Executor executor) + { + this(registry.getComponent(ModelsEvaluator.class.getName()), executor); + } + public ModelsEvaluationHandler(ModelsEvaluator modelsEvaluator, Executor executor) { super(executor); this.modelsEvaluator = modelsEvaluator; + if (modelsEvaluator == null) { + throw new IllegalArgumentException("missing ModelsEvaluator"); + } } @Override -- cgit v1.2.3