summaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/config
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2022-01-25 09:50:28 +0100
committerJon Bratseth <bratseth@gmail.com>2022-01-25 09:50:28 +0100
commitb7a8165a120311fdafe2f09a1cd39d8621c8891b (patch)
tree56b823acbea42edd5d2650b2aff4cbd04971040f /config-model/src/main/java/com/yahoo/config
parent46be850bd8ecd8b38b4d54fa5f4bbeeef0997a2a (diff)
Simplify
Diffstat (limited to 'config-model/src/main/java/com/yahoo/config')
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java13
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/test/MockApplicationPackage.java33
2 files changed, 21 insertions, 25 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java b/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java
index 26c658d9668..300a77d4a6b 100644
--- a/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java
+++ b/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java
@@ -440,7 +440,9 @@ public class DeployState implements ConfigDefinitionStore {
RankProfileRegistry rankProfileRegistry = new RankProfileRegistry();
QueryProfiles queryProfiles = new QueryProfilesBuilder().build(applicationPackage, logger);
SemanticRules semanticRules = new SemanticRuleBuilder().build(applicationPackage);
- Application application = createApplication(rankProfileRegistry, queryProfiles, validationParameters);
+ Application application = new ApplicationBuilder(applicationPackage, fileRegistry, logger, properties,
+ rankProfileRegistry, queryProfiles.getRegistry())
+ .build(! validationParameters.ignoreValidationErrors());
return new DeployState(application,
rankProfileRegistry,
fileRegistry,
@@ -465,15 +467,6 @@ public class DeployState implements ConfigDefinitionStore {
reindexing);
}
- private Application createApplication(RankProfileRegistry rankProfileRegistry,
- QueryProfiles queryProfiles,
- ValidationParameters validationParameters) {
- ApplicationBuilder builder = new ApplicationBuilder(applicationPackage, fileRegistry, logger, properties,
- rankProfileRegistry, queryProfiles.getRegistry());
- builder.importFromApplicationPackage();
- return builder.build(! validationParameters.ignoreValidationErrors());
- }
-
}
}
diff --git a/config-model/src/main/java/com/yahoo/config/model/test/MockApplicationPackage.java b/config-model/src/main/java/com/yahoo/config/model/test/MockApplicationPackage.java
index d35349afe4a..72a8f004b22 100644
--- a/config-model/src/main/java/com/yahoo/config/model/test/MockApplicationPackage.java
+++ b/config-model/src/main/java/com/yahoo/config/model/test/MockApplicationPackage.java
@@ -95,8 +95,8 @@ public class MockApplicationPackage implements ApplicationPackage {
/** Returns the root of this application package relative to the current dir */
protected File root() { return root; }
+ @SuppressWarnings("deprecation") // not redundant
@Override
- @SuppressWarnings("deprecation") // NOT redundant
public String getApplicationName() {
return "mock application";
}
@@ -118,23 +118,26 @@ public class MockApplicationPackage implements ApplicationPackage {
@Override
public List<NamedReader> getSchemas() {
ArrayList<NamedReader> readers = new ArrayList<>();
- ApplicationBuilder applicationBuilder = new ApplicationBuilder(this,
- new MockFileRegistry(),
- new BaseDeployLogger(),
- new TestProperties(),
- new RankProfileRegistry(),
- queryProfileRegistry);
- for (String sd : schemas) {
- try {
- String name = applicationBuilder.addSchema(sd).getName();
- readers.add(new NamedReader(name + ApplicationPackage.SD_NAME_SUFFIX, new StringReader(sd)));
- } catch (ParseException e) {
- throw new RuntimeException(e);
- }
- }
+ for (String sd : schemas)
+ readers.add(new NamedReader(extractSdName(sd) + ApplicationPackage.SD_NAME_SUFFIX, new StringReader(sd)));
return readers;
}
+ /** To avoid either double parsing or supplying a name explicitly */
+ private String extractSdName(String sd) {
+ String s = sd.split("\n")[0];
+ if (s.startsWith("schema"))
+ s = s.substring("schema".length()).trim();
+ else if (s.startsWith("search"))
+ s = s.substring("search".length()).trim();
+ else
+ throw new IllegalArgumentException("Expected the first line of a schema but got '" + sd + "'");
+ int end = s.indexOf(' ');
+ if (end < 0)
+ end = s.indexOf('}');
+ return s.substring(0, end).trim();
+ }
+
@Override
public Map<ConfigDefinitionKey, UnparsedConfigDefinition> getAllExistingConfigDefs() {
return Collections.emptyMap();