summaryrefslogtreecommitdiffstats
path: root/application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java
diff options
context:
space:
mode:
Diffstat (limited to 'application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java')
-rw-r--r--application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java
index 560c3d169d3..72a278b248a 100644
--- a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java
+++ b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java
@@ -5,6 +5,7 @@ import com.yahoo.config.provision.ApplicationId;
import com.yahoo.config.provision.NodeType;
import java.util.List;
+import java.util.Optional;
import java.util.stream.Stream;
/**
@@ -37,6 +38,16 @@ public enum InfrastructureApplication {
.orElseThrow(() -> new IllegalArgumentException("No application associated with " + nodeType));
}
+ public static Optional<InfrastructureApplication> ofOptional(ApplicationId applicationId) {
+ for (var application : values()) {
+ if (application.id.equals(applicationId)) {
+ return Optional.of(application);
+ }
+ }
+
+ return Optional.empty();
+ }
+
InfrastructureApplication(String name, NodeType nodeType) {
this.id = ApplicationId.from(TenantId.HOSTED_VESPA.value(), name, "default");
this.nodeType = nodeType;