summaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo
diff options
context:
space:
mode:
authorgjoranv <gv@verizonmedia.com>2022-06-09 10:52:10 +0200
committerGitHub <noreply@github.com>2022-06-09 10:52:10 +0200
commit46ef33bd14f2c12ccdeac9b7c588f12b7cfa9c8c (patch)
tree74db2af88bc971044ed8ad550cb516f1caee87fa /config-model/src/main/java/com/yahoo
parent7eb6bd3486b8e64861edc4915b929695c45c7cec (diff)
parent33d629ae957d828fd9c14a7ea8ee633c38b10573 (diff)
Merge pull request #23002 from vespa-engine/cleanup-ancient-xml-syntax
Clean up 'searchchain' and 'searchchains' syntax in services.xml
Diffstat (limited to 'config-model/src/main/java/com/yahoo')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/DomChainsBuilder.java14
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/InheritanceBuilder.java22
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DomDocprocChainsBuilder.java5
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/DomProcessingBuilder.java3
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainsBuilder.java9
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/SearchChainsBuilder.java3
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/FilterChainsBuilder.java2
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java2
8 files changed, 11 insertions, 49 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/DomChainsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/DomChainsBuilder.java
index 2bc7e8f2658..b40ee7f3136 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/DomChainsBuilder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/DomChainsBuilder.java
@@ -1,7 +1,6 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.model.builder.xml.dom.chains;
-import com.yahoo.config.application.Xml;
import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.config.model.producer.AbstractConfigProducer;
import com.yahoo.vespa.model.builder.xml.dom.VespaDomBuilder;
@@ -26,16 +25,10 @@ class DomChainsBuilder<COMPONENT extends ChainedComponent<?>, CHAIN extends Chai
extends VespaDomBuilder.DomConfigProducerBuilder<CHAINS> {
private final Collection<ComponentType<COMPONENT>> allowedComponentTypes;
- private final String appPkgChainsDir;
- private final Element outerChainsElem;
- protected DomChainsBuilder(Element outerChainsElem,
- Collection<ComponentType<COMPONENT>> allowedComponentTypes,
- String appPkgChainsDir) {
+ protected DomChainsBuilder(Collection<ComponentType<COMPONENT>> allowedComponentTypes) {
- this.outerChainsElem = outerChainsElem;
this.allowedComponentTypes = new ArrayList<>(allowedComponentTypes);
- this.appPkgChainsDir = appPkgChainsDir;
}
protected abstract CHAINS newChainsInstance(AbstractConfigProducer<?> parent);
@@ -58,13 +51,8 @@ class DomChainsBuilder<COMPONENT extends ChainedComponent<?>, CHAIN extends Chai
private List<Element> allChainElements(DeployState deployState, Element chainsElement) {
List<Element> chainsElements = new ArrayList<>();
- if (outerChainsElem != null)
- chainsElements.add(outerChainsElem);
chainsElements.add(chainsElement);
- if (appPkgChainsDir != null)
- chainsElements.addAll(Xml.allElemsFromPath(deployState.getApplicationPackage(), appPkgChainsDir));
-
return chainsElements;
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/InheritanceBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/InheritanceBuilder.java
index 1d32c644f97..fb11ba32a1e 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/InheritanceBuilder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/InheritanceBuilder.java
@@ -18,38 +18,22 @@ public class InheritanceBuilder {
public InheritanceBuilder(Element spec) {
inheritance = new ChainSpecification.Inheritance(
- // XXX: for this to work, the tagname in the spec must match the tagname inside the 'inherits' elem, e.g. 'searchchain->inherits->searchchain'
- read(spec, "inherits", spec.getTagName()),
- read(spec, "excludes", "exclude"));
+ read(spec, "inherits"),
+ read(spec, "excludes"));
}
public ChainSpecification.Inheritance build() {
return inheritance;
}
- private Set<ComponentSpecification> read(Element spec, String attributeName, String elementName) {
+ private Set<ComponentSpecification> read(Element spec, String attributeName) {
Set<ComponentSpecification> componentSpecifications = new LinkedHashSet<>();
componentSpecifications.addAll(spaceSeparatedComponentSpecificationsFromAttribute(spec, attributeName));
- // TODO: the 'inherits' element is undocumented, and can be removed in an upcoming version of Vespa
- componentSpecifications.addAll(idRefFromElements(XML.getChild(spec, "inherits"), elementName));
-
-
return componentSpecifications;
}
- private Collection<ComponentSpecification> idRefFromElements(Element spec, String elementName) {
- Collection<ComponentSpecification> result = new ArrayList<>();
- if (spec == null)
- return result;
-
- for (Element element : XML.getChildren(spec, elementName)) {
- result.add(XmlHelper.getIdRef(element));
- }
- return result;
- }
-
private Collection<ComponentSpecification> spaceSeparatedComponentSpecificationsFromAttribute(Element spec, String attributeName) {
return toComponentSpecifications(XmlHelper.spaceSeparatedSymbolsFromAttribute(spec, attributeName));
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DomDocprocChainsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DomDocprocChainsBuilder.java
index ae22a6971bb..85f9d305afc 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DomDocprocChainsBuilder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DomDocprocChainsBuilder.java
@@ -1,7 +1,6 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.model.builder.xml.dom.chains.docproc;
-import com.yahoo.config.application.api.ApplicationPackage;
import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.config.model.producer.AbstractConfigProducer;
import com.yahoo.vespa.model.builder.xml.dom.chains.ComponentsBuilder.ComponentType;
@@ -20,8 +19,8 @@ import java.util.Map;
*/
public class DomDocprocChainsBuilder extends DomChainsBuilder<DocumentProcessor, DocprocChain, DocprocChains> {
public DomDocprocChainsBuilder(Element outerChainsElem, boolean supportDocprocChainsDir) {
- super(outerChainsElem, List.of(ComponentType.documentprocessor),
- supportDocprocChainsDir ? ApplicationPackage.DOCPROCCHAINS_DIR: null);
+ super(List.of(ComponentType.documentprocessor)
+ );
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/DomProcessingBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/DomProcessingBuilder.java
index d29643c78e2..bd7b6dd4716 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/DomProcessingBuilder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/DomProcessingBuilder.java
@@ -1,7 +1,6 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.model.builder.xml.dom.chains.processing;
-import com.yahoo.config.application.api.ApplicationPackage;
import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.config.model.producer.AbstractConfigProducer;
import com.yahoo.vespa.model.builder.xml.dom.chains.ComponentsBuilder;
@@ -21,7 +20,7 @@ import java.util.Map;
public class DomProcessingBuilder extends DomChainsBuilder<Processor, ProcessingChain, ProcessingChains> {
public DomProcessingBuilder(Element outerChainsElem) {
- super(outerChainsElem, List.of(ComponentsBuilder.ComponentType.processor), ApplicationPackage.PROCESSORCHAINS_DIR);
+ super(List.of(ComponentsBuilder.ComponentType.processor));
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainsBuilder.java
index d4bd93f67c7..798986273d0 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainsBuilder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainsBuilder.java
@@ -3,7 +3,6 @@ package com.yahoo.vespa.model.builder.xml.dom.chains.search;
import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.config.model.producer.AbstractConfigProducer;
-import com.yahoo.config.application.api.ApplicationPackage;
import com.yahoo.vespa.model.builder.xml.dom.chains.ComponentsBuilder.ComponentType;
import com.yahoo.vespa.model.builder.xml.dom.chains.DomChainsBuilder;
import com.yahoo.vespa.model.container.search.searchchain.SearchChain;
@@ -22,14 +21,8 @@ import java.util.Map;
*/
public class DomSearchChainsBuilder extends DomChainsBuilder<Searcher<?>, SearchChain, SearchChains> {
- public DomSearchChainsBuilder(Element outerChainsElem, boolean supportSearchChainsDir) {
- super(outerChainsElem, Arrays.asList(ComponentType.searcher, ComponentType.federation),
- supportSearchChainsDir ? ApplicationPackage.SEARCHCHAINS_DIR: null);
- }
-
- // For unit testing without outer chains
public DomSearchChainsBuilder() {
- this(null, false);
+ super(Arrays.asList(ComponentType.searcher, ComponentType.federation));
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/SearchChainsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/SearchChainsBuilder.java
index e13e741dd5d..65fc585c7af 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/SearchChainsBuilder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/SearchChainsBuilder.java
@@ -25,9 +25,8 @@ public class SearchChainsBuilder extends ChainsBuilder<Searcher<?>, SearchChain>
private static final Map<String, Class<? extends DomChainBuilderBase<? extends Searcher<?>, ? extends SearchChain>>>
chainType2builderClass = Collections.unmodifiableMap(
- new LinkedHashMap<String, Class<? extends DomChainBuilderBase<? extends Searcher<?>, ? extends SearchChain>>>() {{
+ new LinkedHashMap<>() {{
put("chain", DomSearchChainBuilder.class);
- put("searchchain", DomSearchChainBuilder.class);
put("provider", DomProviderBuilder.class);
}});
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/FilterChainsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/FilterChainsBuilder.java
index c75d8225843..35a91fc95ab 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/FilterChainsBuilder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/FilterChainsBuilder.java
@@ -31,7 +31,7 @@ public class FilterChainsBuilder extends DomChainsBuilder<Filter, Chain<Filter>,
HttpBuilder.RESPONSE_CHAIN_TAG_NAME, FilterChainBuilder.class);
public FilterChainsBuilder() {
- super(null, allowedComponentTypes, null);
+ super(allowedComponentTypes);
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java
index fb62ffb6ad1..f971aa97e6a 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java
@@ -602,7 +602,7 @@ public class ContainerModelBuilder extends ConfigModelBuilder<ContainerModel> {
}
private ContainerSearch buildSearch(DeployState deployState, ApplicationContainerCluster containerCluster, Element producerSpec) {
- SearchChains searchChains = new DomSearchChainsBuilder(null, false)
+ SearchChains searchChains = new DomSearchChainsBuilder()
.build(deployState, containerCluster, producerSpec);
ContainerSearch containerSearch = new ContainerSearch(containerCluster, searchChains, new ContainerSearch.Options());