diff options
Diffstat (limited to 'configserver/src/main/java')
19 files changed, 67 insertions, 57 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/RequestHandler.java b/configserver/src/main/java/com/yahoo/vespa/config/server/RequestHandler.java index f23c96db6f2..185958510b6 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/RequestHandler.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/RequestHandler.java @@ -4,7 +4,7 @@ package com.yahoo.vespa.config.server; import java.util.Optional; import java.util.Set; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.vespa.config.ConfigKey; import com.yahoo.vespa.config.GetConfigRequest; import com.yahoo.config.provision.ApplicationId; diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/SuperModelRequestHandler.java b/configserver/src/main/java/com/yahoo/vespa/config/server/SuperModelRequestHandler.java index 8458f9f0ddd..d77ca396974 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/SuperModelRequestHandler.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/SuperModelRequestHandler.java @@ -5,7 +5,7 @@ import com.google.inject.Inject; import com.yahoo.cloud.config.ConfigserverConfig; import com.yahoo.config.ConfigInstance; import com.yahoo.config.model.api.ConfigDefinitionRepo; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.log.LogLevel; import com.yahoo.vespa.config.ConfigKey; import com.yahoo.vespa.config.GetConfigRequest; diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/application/Application.java b/configserver/src/main/java/com/yahoo/vespa/config/server/application/Application.java index 64123420622..0d787895087 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/application/Application.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/application/Application.java @@ -5,7 +5,7 @@ import com.yahoo.config.ConfigurationRuntimeException; import com.yahoo.config.model.api.ApplicationInfo; import com.yahoo.config.model.api.Model; import com.yahoo.config.provision.ApplicationId; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.log.LogLevel; import com.yahoo.vespa.config.ConfigCacheKey; import com.yahoo.vespa.config.ConfigDefinitionKey; diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationMapper.java b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationMapper.java index 0d055d3bfc9..4fe2a018766 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationMapper.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationMapper.java @@ -2,7 +2,7 @@ package com.yahoo.vespa.config.server.application; import com.yahoo.config.provision.ApplicationId; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import java.time.Instant; import java.util.Collections; diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationSet.java b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationSet.java index b4346498f0c..3444ffc2865 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationSet.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationSet.java @@ -1,9 +1,9 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.config.server.application; + import com.yahoo.config.model.api.HostInfo; -import com.yahoo.config.model.api.Model; import com.yahoo.config.provision.ApplicationId; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import java.time.Instant; import java.util.*; @@ -91,4 +91,5 @@ public final class ApplicationSet { public long getApplicationGeneration() { return generation; } + } diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ZooKeeperClient.java b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ZooKeeperClient.java index f9f84de1cfb..e5552de41f5 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ZooKeeperClient.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ZooKeeperClient.java @@ -9,7 +9,7 @@ import com.yahoo.config.application.api.FileRegistry; import com.yahoo.config.application.api.UnparsedConfigDefinition; import com.yahoo.config.model.application.provider.PreGeneratedFileRegistry; import com.yahoo.config.provision.AllocatedHosts; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.io.reader.NamedReader; import com.yahoo.log.LogLevel; import com.yahoo.path.Path; @@ -310,7 +310,7 @@ public class ZooKeeperClient { String exportedRegistry = PreGeneratedFileRegistry.exportRegistry(fileRegistry); configCurator.putData(getZooKeeperAppPath(null).append(ZKApplicationPackage.fileRegistryNode).getAbsolute(), - vespaVersion.toSerializedForm(), + vespaVersion.toFullString(), exportedRegistry); } diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ZooKeeperDeployer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ZooKeeperDeployer.java index 68c129d1e42..e24d24f0c3f 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ZooKeeperDeployer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ZooKeeperDeployer.java @@ -4,7 +4,7 @@ package com.yahoo.vespa.config.server.deploy; import com.yahoo.config.application.api.ApplicationPackage; import com.yahoo.config.application.api.FileRegistry; import com.yahoo.config.provision.AllocatedHosts; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import java.io.IOException; import java.util.Map; @@ -26,7 +26,7 @@ public class ZooKeeperDeployer { /** * Deploys an application package to zookeeper. initialize() must be called before calling this method. * - * @param applicationPackage The application package to persist. + * @param applicationPackage the application package to persist. * @param fileRegistryMap the file registries to persist. * @param allocatedHosts the provisioning info to persist. * @throws IOException if deploying fails @@ -42,4 +42,5 @@ public class ZooKeeperDeployer { public void cleanup() { zooKeeperClient.cleanupZooKeeper(); } + } diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/http/status/StatusHandler.java b/configserver/src/main/java/com/yahoo/vespa/config/server/http/status/StatusHandler.java index 5c0439c0af3..bb752f9b804 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/http/status/StatusHandler.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/http/status/StatusHandler.java @@ -3,7 +3,7 @@ package com.yahoo.vespa.config.server.http.status; import com.google.inject.Inject; import com.yahoo.config.model.api.ModelFactory; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.container.jdisc.HttpRequest; import com.yahoo.container.jdisc.HttpResponse; import com.yahoo.slime.Cursor; @@ -46,8 +46,8 @@ public class StatusHandler extends HttpHandler { Cursor modelVersionsCursor = object.setArray("modelVersions"); componentRegistry.getModelFactoryRegistry().getFactories().stream() - .map(ModelFactory::getVersion) - .map(Version::toString) + .map(ModelFactory::version) + .map(Version::toFullString) .forEach(modelVersionsCursor::addString); } diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ActivatedModelsBuilder.java b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ActivatedModelsBuilder.java index b6346677d6b..9871ce2e26b 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ActivatedModelsBuilder.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ActivatedModelsBuilder.java @@ -11,7 +11,7 @@ import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.AllocatedHosts; import com.yahoo.config.provision.HostName; import com.yahoo.config.provision.TenantName; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.log.LogLevel; import com.yahoo.vespa.config.server.ConfigServerSpec; import com.yahoo.vespa.config.server.GlobalComponentRegistry; @@ -51,7 +51,10 @@ public class ActivatedModelsBuilder extends ModelsBuilder<Application> { private final Curator curator; private final DeployLogger logger; - public ActivatedModelsBuilder(TenantName tenant, long appGeneration, SessionZooKeeperClient zkClient, GlobalComponentRegistry globalComponentRegistry) { + public ActivatedModelsBuilder(TenantName tenant, + long appGeneration, + SessionZooKeeperClient zkClient, + GlobalComponentRegistry globalComponentRegistry) { super(globalComponentRegistry.getModelFactoryRegistry(), globalComponentRegistry.getConfigserverConfig(), globalComponentRegistry.getZone(), @@ -70,11 +73,11 @@ public class ActivatedModelsBuilder extends ModelsBuilder<Application> { protected Application buildModelVersion(ModelFactory modelFactory, ApplicationPackage applicationPackage, ApplicationId applicationId, - com.yahoo.component.Version wantedNodeVespaVersion, + Version wantedNodeVespaVersion, Optional<AllocatedHosts> ignored, // Ignored since we have this in the app package for activated models Instant now) { log.log(LogLevel.DEBUG, String.format("Loading model version %s for session %s application %s", - modelFactory.getVersion(), appGeneration, applicationId)); + modelFactory.version(), appGeneration, applicationId)); ModelContext.Properties modelContextProperties = createModelContextProperties(applicationId); ModelContext modelContext = new ModelContextImpl( applicationPackage, @@ -82,16 +85,18 @@ public class ActivatedModelsBuilder extends ModelsBuilder<Application> { permanentApplicationPackage.applicationPackage(), logger, configDefinitionRepo, - getForVersionOrLatest(applicationPackage.getFileRegistryMap(), modelFactory.getVersion()).orElse(new MockFileRegistry()), + getForVersionOrLatest(applicationPackage.getFileRegistries(), modelFactory.version()).orElse(new MockFileRegistry()), createStaticProvisioner(applicationPackage.getAllocatedHosts(), modelContextProperties), modelContextProperties, Optional.empty(), - new com.yahoo.component.Version(modelFactory.getVersion().toString()), + modelFactory.version(), wantedNodeVespaVersion); MetricUpdater applicationMetricUpdater = metrics.getOrCreateMetricUpdater(Metrics.createDimensions(applicationId)); - return new Application(modelFactory.createModel(modelContext), zkClient.loadServerCache(), appGeneration, + return new Application(modelFactory.createModel(modelContext), + zkClient.loadServerCache(), + appGeneration, applicationPackage.getMetaData().isInternalRedeploy(), - modelFactory.getVersion(), + modelFactory.version(), applicationMetricUpdater, applicationId); } diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelFactoryRegistry.java b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelFactoryRegistry.java index 1c2c9c731d1..b2b5a06b6ea 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelFactoryRegistry.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelFactoryRegistry.java @@ -4,14 +4,14 @@ package com.yahoo.vespa.config.server.modelfactory; import com.google.inject.Inject; import com.yahoo.component.provider.ComponentRegistry; import com.yahoo.config.model.api.ModelFactory; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.vespa.config.server.http.UnknownVespaVersionException; import java.util.*; /** * A registry of model factories. Allows querying for a specific version of a {@link ModelFactory} or - * simply returning all of them. Keeps track of the latest {@link com.yahoo.config.provision.Version} supported. + * simply returning all of them. Keeps track of the latest {@link Version} supported. * * @author Ulf Lilleengen */ @@ -29,7 +29,7 @@ public class ModelFactoryRegistry { throw new IllegalArgumentException("No ModelFactory instances registered, cannot build config models"); } for (ModelFactory factory : modelFactories) { - factories.put(factory.getVersion(), factory); + factories.put(factory.version(), factory); } } diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelsBuilder.java b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelsBuilder.java index 92d4471c41c..19a568d9e01 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelsBuilder.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelsBuilder.java @@ -11,7 +11,7 @@ import com.yahoo.config.provision.AllocatedHosts; import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.ApplicationLockException; import com.yahoo.config.provision.OutOfCapacityException; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.config.provision.Zone; import com.yahoo.lang.SettableOptional; import com.yahoo.log.LogLevel; @@ -173,14 +173,14 @@ public abstract class ModelsBuilder<MODELRESULT extends ModelResult> { return allApplicationVersions; } - private Set<Version> versionsToBuild(Set<Version> versions, com.yahoo.component.Version wantedVersion, int majorVersion, AllocatedHosts allocatedHosts) { + private Set<Version> versionsToBuild(Set<Version> versions, Version wantedVersion, int majorVersion, AllocatedHosts allocatedHosts) { if (configserverConfig.buildMinimalSetOfConfigModels()) versions = keepThoseUsedOn(allocatedHosts, versions); // Make sure we build wanted version if we are building models for this major version and we are on hosted vespa // If not on hosted vespa, we do not want to try to build this version, since we have only one version (the latest) if (hosted && wantedVersion.getMajor() == majorVersion) - versions.add(Version.fromIntValues(wantedVersion.getMajor(), wantedVersion.getMinor(), wantedVersion.getMicro())); + versions.add(wantedVersion); return versions; } @@ -205,14 +205,13 @@ public abstract class ModelsBuilder<MODELRESULT extends ModelResult> { } private boolean isUsedOn(AllocatedHosts hosts, Version version) { - com.yahoo.component.Version v = new com.yahoo.component.Version(version.toString()); return hosts.getHosts().stream() - .anyMatch(host -> host.version().isPresent() && host.version().get().equals(v)); + .anyMatch(host -> host.version().isPresent() && host.version().get().equals(version)); } protected abstract MODELRESULT buildModelVersion(ModelFactory modelFactory, ApplicationPackage applicationPackage, ApplicationId applicationId, - com.yahoo.component.Version wantedNodeVespaVersion, + Version wantedNodeVespaVersion, Optional<AllocatedHosts> allocatedHosts, Instant now); diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/PreparedModelsBuilder.java b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/PreparedModelsBuilder.java index 4c43abf5faa..9cacb78e53c 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/PreparedModelsBuilder.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/PreparedModelsBuilder.java @@ -16,7 +16,7 @@ import com.yahoo.config.model.api.ValidationParameters.IgnoreValidationErrors; import com.yahoo.config.model.application.provider.FilesApplicationPackage; import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.AllocatedHosts; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.log.LogLevel; import com.yahoo.vespa.config.server.application.Application; import com.yahoo.vespa.config.server.application.ApplicationSet; @@ -86,7 +86,7 @@ public class PreparedModelsBuilder extends ModelsBuilder<PreparedModelsBuilder.P com.yahoo.component.Version wantedNodeVespaVersion, Optional<AllocatedHosts> allocatedHosts, Instant now) { - Version modelVersion = modelFactory.getVersion(); + Version modelVersion = modelFactory.version(); log.log(LogLevel.DEBUG, "Building model " + modelVersion + " for " + applicationId); FileDistributionProvider fileDistributionProvider = fileDistributionFactory.createProvider(context.getServerDBSessionDir()); @@ -101,7 +101,7 @@ public class PreparedModelsBuilder extends ModelsBuilder<PreparedModelsBuilder.P createHostProvisioner(allocatedHosts), properties, getAppDir(applicationPackage), - new com.yahoo.component.Version(modelVersion.toString()), + modelVersion, wantedNodeVespaVersion); log.log(LogLevel.DEBUG, "Create and validate model " + modelVersion + " for " + applicationId); diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/GetConfigProcessor.java b/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/GetConfigProcessor.java index 55d5321c93f..b291a828bc0 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/GetConfigProcessor.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/GetConfigProcessor.java @@ -3,7 +3,7 @@ package com.yahoo.vespa.config.server.rpc; import com.yahoo.cloud.config.SentinelConfig; import com.yahoo.config.provision.TenantName; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.jrt.Request; import com.yahoo.log.LogLevel; import com.yahoo.net.HostName; @@ -140,7 +140,7 @@ class GetConfigProcessor implements Runnable { } private static String getPrintableVespaVersion(Optional<Version> vespaVersion) { - return (vespaVersion.isPresent() ? vespaVersion.get().toString() : "LATEST"); + return (vespaVersion.isPresent() ? vespaVersion.get().toFullString() : "LATEST"); } private void returnEmpty(JRTServerConfigRequest request) { diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java index 048000f31c4..1cae6ac2244 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java @@ -8,7 +8,7 @@ import com.yahoo.config.FileReference; import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.HostLivenessTracker; import com.yahoo.config.provision.TenantName; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.jrt.Acceptor; import com.yahoo.jrt.DataValue; import com.yahoo.jrt.Int32Value; diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/session/PrepareParams.java b/configserver/src/main/java/com/yahoo/vespa/config/server/session/PrepareParams.java index b44896ecb89..a5e74d3b85f 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/session/PrepareParams.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/session/PrepareParams.java @@ -103,8 +103,8 @@ public final class PrepareParams { return this; } - public Builder vespaVersion(com.yahoo.config.provision.Version vespaVersion) { - this.vespaVersion = Optional.ofNullable(Version.fromString(vespaVersion.toSerializedForm())); + public Builder vespaVersion(Version vespaVersion) { + this.vespaVersion = Optional.ofNullable(vespaVersion); return this; } diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java index 9fdd94c2fb4..fd4628baa85 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java @@ -15,7 +15,7 @@ import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.HostName; import com.yahoo.config.provision.OutOfCapacityException; import com.yahoo.config.provision.Rotation; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.config.provision.Zone; import com.yahoo.lang.SettableOptional; import com.yahoo.log.LogLevel; diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRequestHandler.java b/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRequestHandler.java index f30a58cffea..a341061bd9a 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRequestHandler.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRequestHandler.java @@ -2,11 +2,16 @@ package com.yahoo.vespa.config.server.tenant; import java.time.Clock; -import java.util.*; +import java.util.Collection; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Optional; +import java.util.Set; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.log.LogLevel; -import com.yahoo.vespa.config.*; +import com.yahoo.vespa.config.ConfigKey; +import com.yahoo.vespa.config.GetConfigRequest; import com.yahoo.vespa.config.protocol.ConfigResponse; import com.yahoo.vespa.config.server.NotFoundException; import com.yahoo.vespa.config.server.application.ApplicationMapper; diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/version/VersionState.java b/configserver/src/main/java/com/yahoo/vespa/config/server/version/VersionState.java index 31abe81a313..641aa31a6b7 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/version/VersionState.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/version/VersionState.java @@ -3,7 +3,7 @@ package com.yahoo.vespa.config.server.version; import com.google.inject.Inject; import com.yahoo.cloud.config.ConfigserverConfig; -import com.yahoo.config.provision.Version; +import com.yahoo.component.Version; import com.yahoo.io.IOUtils; import com.yahoo.vespa.defaults.Defaults; @@ -36,7 +36,7 @@ public class VersionState { public void saveNewVersion() { try (FileWriter writer = new FileWriter(versionFile)) { - writer.write(currentVersion().toSerializedForm()); + writer.write(currentVersion().toFullString()); } catch (IOException e) { throw new RuntimeException(e); } @@ -46,12 +46,12 @@ public class VersionState { try (FileReader reader = new FileReader(versionFile)) { return Version.fromString(IOUtils.readAll(reader)); } catch (Exception e) { - return Version.fromIntValues(0, 0, 0); // Use an old value to signal we don't know + return new Version(0, 0, 0); // Use an old value to signal we don't know } } public Version currentVersion() { - return Version.fromIntValues(VespaVersion.major, VespaVersion.minor, VespaVersion.micro); + return new Version(VespaVersion.major, VespaVersion.minor, VespaVersion.micro); } @Override diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackage.java b/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackage.java index e9b4d6ac1aa..5c40f592a77 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackage.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackage.java @@ -2,6 +2,7 @@ package com.yahoo.vespa.config.server.zookeeper; import com.google.common.base.Joiner; +import com.yahoo.component.Version; import com.yahoo.config.application.api.ApplicationMetaData; import com.yahoo.config.application.api.ComponentInfo; import com.yahoo.config.application.api.FileRegistry; @@ -9,7 +10,7 @@ import com.yahoo.config.application.api.UnparsedConfigDefinition; import com.yahoo.config.codegen.DefParser; import com.yahoo.config.application.api.ApplicationFile; import com.yahoo.config.application.api.ApplicationPackage; -import com.yahoo.config.model.application.provider.*; +import com.yahoo.config.model.application.provider.PreGeneratedFileRegistry; import com.yahoo.config.provision.NodeFlavors; import com.yahoo.config.provision.AllocatedHosts; import com.yahoo.io.IOUtils; @@ -24,14 +25,12 @@ import java.io.File; import java.io.Reader; import java.io.StringReader; import java.util.ArrayList; -import java.util.Arrays; import java.util.Collections; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Optional; -import java.util.stream.Collectors; /** * Represents an application residing in zookeeper. @@ -42,9 +41,9 @@ public class ZKApplicationPackage implements ApplicationPackage { private ZKLiveApp liveApp; - private final Map<com.yahoo.config.provision.Version, PreGeneratedFileRegistry> fileRegistryMap = new HashMap<>(); + private final Map<Version, PreGeneratedFileRegistry> fileRegistryMap = new HashMap<>(); private final Optional<AllocatedHosts> allocatedHosts; - private static final com.yahoo.config.provision.Version legacyVersion = com.yahoo.config.provision.Version.fromIntValues(0, 0, 0); + private static final Version legacyVersion = new Version(0, 0, 0); public static final String fileRegistryNode = "fileregistry"; public static final String allocatedHostsNode = "allocatedHosts"; @@ -82,7 +81,7 @@ public class ZKApplicationPackage implements ApplicationPackage { fileRegistryMap.put(legacyVersion, importFileRegistry(fileRegistryNode)); } else { fileRegistryNodes.forEach(version -> - fileRegistryMap.put(com.yahoo.config.provision.Version.fromString(version), + fileRegistryMap.put(Version.fromString(version), importFileRegistry(Joiner.on("/").join(fileRegistryNode, version)))); } } @@ -148,11 +147,11 @@ public class ZKApplicationPackage implements ApplicationPackage { } @Override - public Map<com.yahoo.config.provision.Version, FileRegistry> getFileRegistryMap() { + public Map<Version, FileRegistry> getFileRegistries() { return Collections.unmodifiableMap(fileRegistryMap); } - private Optional<PreGeneratedFileRegistry> getPreGeneratedFileRegistry(com.yahoo.config.provision.Version vespaVersion) { + private Optional<PreGeneratedFileRegistry> getPreGeneratedFileRegistry(Version vespaVersion) { // Assumes at least one file registry, which we always have. Optional<PreGeneratedFileRegistry> fileRegistry = Optional.ofNullable(fileRegistryMap.get(vespaVersion)); if ( ! fileRegistry.isPresent()) { @@ -180,8 +179,8 @@ public class ZKApplicationPackage implements ApplicationPackage { List<String> allDefs = liveApp.getChildren(ConfigCurator.DEFCONFIGS_ZK_SUBPATH); - for (final String nodeName : allDefs) { - final ConfigDefinitionKey key = ConfigUtils.createConfigDefinitionKeyFromZKString(nodeName); + for (String nodeName : allDefs) { + ConfigDefinitionKey key = ConfigUtils.createConfigDefinitionKeyFromZKString(nodeName); ret.put(key, new UnparsedConfigDefinition() { @Override public ConfigDefinition parse() { @@ -240,7 +239,7 @@ public class ZKApplicationPackage implements ApplicationPackage { } @Override - public List<ComponentInfo> getComponentsInfo(com.yahoo.config.provision.Version vespaVersion) { + public List<ComponentInfo> getComponentsInfo(Version vespaVersion) { List<ComponentInfo> components = new ArrayList<>(); PreGeneratedFileRegistry fileRegistry = getPreGeneratedFileRegistry(vespaVersion).get(); for (String path : fileRegistry.getPaths()) { |