summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/identifiers/DeploymentId.java48
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java8
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ZoneRegistryMock.java8
3 files changed, 31 insertions, 33 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/identifiers/DeploymentId.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/identifiers/DeploymentId.java
index c0bebf54803..1cdae46fec1 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/identifiers/DeploymentId.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/identifiers/DeploymentId.java
@@ -3,55 +3,52 @@ package com.yahoo.vespa.hosted.controller.api.identifiers;
import com.yahoo.config.provision.ZoneId;
+import java.util.Objects;
+
/**
- * Application + zone.
+ * ApplicationId x ZoneId.
*
* @author smorgrav
* @author bratseth
*/
public class DeploymentId {
- private final com.yahoo.config.provision.ApplicationId application;
- private final ZoneId zone;
+ private final com.yahoo.config.provision.ApplicationId applicationId;
+ private final ZoneId zoneId;
- public DeploymentId(com.yahoo.config.provision.ApplicationId application, ZoneId zone) {
- this.application = application;
- this.zone = zone;
+ public DeploymentId(com.yahoo.config.provision.ApplicationId applicationId, ZoneId zoneId) {
+ this.applicationId = applicationId;
+ this.zoneId = zoneId;
}
public com.yahoo.config.provision.ApplicationId applicationId() {
- return application;
+ return applicationId;
}
- public ZoneId zone() { return zone; }
+ public ZoneId zoneId() {
+ return zoneId;
+ }
public String dottedString() {
return unCapitalize(applicationId().tenant().value()) + "."
- + unCapitalize(applicationId().application().value()) + "."
- + unCapitalize(zone.environment().value()) + "."
- + unCapitalize(zone.region().value()) + "."
- + unCapitalize(application.instance().value());
+ + unCapitalize(applicationId().application().value()) + "."
+ + unCapitalize(zoneId.environment().value()) + "."
+ + unCapitalize(zoneId.region().value()) + "."
+ + unCapitalize(applicationId.instance().value());
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
- if (o == null || getClass() != o.getClass()) return false;
-
- DeploymentId other = (DeploymentId) o;
- if ( ! this.application.equals(other.application)) return false;
- // TODO: Simplify when Zone implements equals
- if ( ! this.zone.environment().equals(other.zone.environment())) return false;
- if ( ! this.zone.region().equals(other.zone.region())) return false;
- return true;
+ if ( ! (o instanceof DeploymentId)) return false;
+ DeploymentId id = (DeploymentId) o;
+ return Objects.equals(applicationId, id.applicationId) &&
+ Objects.equals(zoneId, id.zoneId);
}
@Override
public int hashCode() {
- // TODO: Simplify when Zone implements hashCode
- return application.hashCode() +
- 7 * zone.environment().hashCode() +
- 31 * zone.region().hashCode();
+ return Objects.hash(applicationId, zoneId);
}
@Override
@@ -60,10 +57,11 @@ public class DeploymentId {
}
public String toUserFriendlyString() {
- return application + " in " + zone;
+ return applicationId + " in " + zoneId;
}
private static String unCapitalize(String str) {
return str.toLowerCase().substring(0,1) + str.substring(1);
}
+
}
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java
index 6ae11246fd6..5974833aaf0 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java
@@ -425,9 +425,9 @@ public class ApplicationApiHandler extends LoggingRequestHandler {
DeploymentId deploymentId = new DeploymentId(application.id(),
ZoneId.from(environment, region));
- Deployment deployment = application.deployments().get(deploymentId.zone());
+ Deployment deployment = application.deployments().get(deploymentId.zoneId());
if (deployment == null)
- throw new NotExistsException(application + " is not deployed in " + deploymentId.zone());
+ throw new NotExistsException(application + " is not deployed in " + deploymentId.zoneId());
Slime slime = new Slime();
toSlime(slime.setObject(), deploymentId, deployment, request);
@@ -443,7 +443,7 @@ public class ApplicationApiHandler extends LoggingRequestHandler {
serviceUrlArray.addString(uri.toString());
}
- response.setString("nodes", withPath("/zone/v2/" + deploymentId.zone().environment() + "/" + deploymentId.zone().region() + "/nodes/v2/node/?&recursive=true&application=" + deploymentId.applicationId().tenant() + "." + deploymentId.applicationId().application() + "." + deploymentId.applicationId().instance(), request.getUri()).toString());
+ response.setString("nodes", withPath("/zone/v2/" + deploymentId.zoneId().environment() + "/" + deploymentId.zoneId().region() + "/nodes/v2/node/?&recursive=true&application=" + deploymentId.applicationId().tenant() + "." + deploymentId.applicationId().application() + "." + deploymentId.applicationId().instance(), request.getUri()).toString());
controller.getLogServerUrl(deploymentId)
.ifPresent(elkUrl -> response.setString("elkUrl", elkUrl.toString()));
@@ -452,7 +452,7 @@ public class ApplicationApiHandler extends LoggingRequestHandler {
response.setString("version", deployment.version().toFullString());
response.setString("revision", deployment.revision().id());
response.setLong("deployTimeEpochMs", deployment.at().toEpochMilli());
- Duration deploymentTimeToLive = controller.zoneRegistry().getDeploymentTimeToLive(deploymentId.zone());
+ Duration deploymentTimeToLive = controller.zoneRegistry().getDeploymentTimeToLive(deploymentId.zoneId());
response.setLong("expiryTimeEpochMs", deployment.at().plus(deploymentTimeToLive).toEpochMilli());
controller.applications().get(deploymentId.applicationId()).flatMap(application -> application.deploymentJobs().projectId())
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ZoneRegistryMock.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ZoneRegistryMock.java
index 206ced18bac..3383654a884 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ZoneRegistryMock.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ZoneRegistryMock.java
@@ -81,8 +81,8 @@ public class ZoneRegistryMock extends AbstractComponent implements ZoneRegistry
@Override
public Optional<URI> getLogServerUri(DeploymentId deploymentId) {
- return Optional.of(deploymentId.zone())
- .map(z -> URI.create(String.format("http://log.%s.test", deploymentId.zone().value())));
+ return Optional.of(deploymentId.zoneId())
+ .map(z -> URI.create(String.format("http://log.%s.test", deploymentId.zoneId().value())));
}
@Override
@@ -97,8 +97,8 @@ public class ZoneRegistryMock extends AbstractComponent implements ZoneRegistry
@Override
public URI getMonitoringSystemUri(DeploymentId deploymentId) {
- return URI.create("http://monitoring-system.test/?environment=" + deploymentId.zone().environment().value() + "&region="
- + deploymentId.zone().region().value() + "&application=" + deploymentId.applicationId().toShortString());
+ return URI.create("http://monitoring-system.test/?environment=" + deploymentId.zoneId().environment().value() + "&region="
+ + deploymentId.zoneId().region().value() + "&application=" + deploymentId.applicationId().toShortString());
}
@Override