diff options
Diffstat (limited to 'config-model/src/main/java/com/yahoo')
18 files changed, 84 insertions, 95 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/ChainsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/ChainsBuilder.java index 5891347f6b4..c48968333ac 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/ChainsBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/ChainsBuilder.java @@ -24,8 +24,8 @@ public class ChainsBuilder<COMPONENT extends ChainedComponent<?>, CHAIN extends private final Map<String, Class<? extends DomChainBuilderBase<? extends COMPONENT, ? extends CHAIN>>> chainType2BuilderClass; // NOTE: The chain type string (key in chainType2BuilderClass) must match the xml tag name for the chain. - public ChainsBuilder(DeployState deployState, AbstractConfigProducer ancestor, List<Element> chainsElems, - Map<String, ComponentsBuilder.ComponentType> outerComponentTypeByComponentName, + public ChainsBuilder(DeployState deployState, AbstractConfigProducer<?> ancestor, List<Element> chainsElems, + Map<String, ComponentsBuilder.ComponentType<?>> outerComponentTypeByComponentName, Map<String, Class<? extends DomChainBuilderBase<? extends COMPONENT, ? extends CHAIN>>> chainType2BuilderClass) { this.chainType2BuilderClass = chainType2BuilderClass; @@ -36,8 +36,8 @@ public class ChainsBuilder<COMPONENT extends ChainedComponent<?>, CHAIN extends return Collections.unmodifiableCollection(chains); } - private void readChains(DeployState deployState, AbstractConfigProducer ancestor, List<Element> chainsElems, - Map<String, ComponentsBuilder.ComponentType> outerSearcherTypeByComponentName) { + private void readChains(DeployState deployState, AbstractConfigProducer<?> ancestor, List<Element> chainsElems, + Map<String, ComponentsBuilder.ComponentType<?>> outerSearcherTypeByComponentName) { for (Map.Entry<String, Class<? extends DomChainBuilderBase<? extends COMPONENT, ? extends CHAIN>>> chainType : chainType2BuilderClass.entrySet()) { @@ -49,9 +49,9 @@ public class ChainsBuilder<COMPONENT extends ChainedComponent<?>, CHAIN extends } } - private void readChain(DeployState deployState, AbstractConfigProducer ancestor, Element chainElem, + private void readChain(DeployState deployState, AbstractConfigProducer<?> ancestor, Element chainElem, Class<? extends DomChainBuilderBase<? extends COMPONENT, ? extends CHAIN>> builderClass, - Map<String, ComponentsBuilder.ComponentType> outerSearcherTypeByComponentName) { + Map<String, ComponentsBuilder.ComponentType<?>> outerSearcherTypeByComponentName) { DomChainBuilderBase<? extends COMPONENT, ? extends CHAIN> builder = DomBuilderCreator.create(builderClass, outerSearcherTypeByComponentName); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/ComponentsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/ComponentsBuilder.java index 0d54b7b49f3..931b6807586 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/ComponentsBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/ComponentsBuilder.java @@ -38,7 +38,7 @@ public class ComponentsBuilder<T extends ChainedComponent<?>> { // NOTE: the 'name' string must match the xml tag name for the component in services. public static class ComponentType<T extends ChainedComponent<?>> { - static List<ComponentType> values = new ArrayList<>(); + static List<ComponentType<?>> values = new ArrayList<>(); public static final ComponentType<DocumentProcessor> documentprocessor = new ComponentType<>("documentprocessor", DomDocumentProcessorBuilder.class); public static final ComponentType<Searcher<?>> searcher = new ComponentType<>("searcher", DomSearcherBuilder.class); public static final ComponentType<Processor> processor = new ComponentType<>("processor", DomProcessorBuilder.class); @@ -63,7 +63,7 @@ public class ComponentsBuilder<T extends ChainedComponent<?>> { private final Set<ComponentSpecification> outerComponentReferences = new LinkedHashSet<>(); private final List<T> componentDefinitions = new ArrayList<>(); - private final Map<String, ComponentType> componentTypesByComponentName = new LinkedHashMap<>(); + private final Map<String, ComponentType<?>> componentTypesByComponentName = new LinkedHashMap<>(); /** * @param ancestor The parent config producer @@ -73,18 +73,18 @@ public class ComponentsBuilder<T extends ChainedComponent<?>> { * every component is a definition, not a reference. */ ComponentsBuilder(DeployState deployState, - AbstractConfigProducer ancestor, + AbstractConfigProducer<?> ancestor, Collection<ComponentType<T>> componentTypes, List<Element> elementsContainingComponentElems, - Map<String, ComponentType> outerComponentTypeByComponentName) { + Map<String, ComponentType<?>> outerComponentTypeByComponentName) { readComponents(deployState, ancestor, componentTypes, elementsContainingComponentElems, unmodifiable(outerComponentTypeByComponentName)); } - private void readComponents(DeployState deployState, AbstractConfigProducer ancestor, + private void readComponents(DeployState deployState, AbstractConfigProducer<?> ancestor, Collection<ComponentType<T>> componentTypes, List<Element> elementsContainingComponentElems, - Map<String, ComponentType> outerComponentTypeByComponentName) { + Map<String, ComponentType<?>> outerComponentTypeByComponentName) { for (ComponentType<T> componentType : componentTypes) { for (Element elemContainingComponentElems : elementsContainingComponentElems) { @@ -95,10 +95,10 @@ public class ComponentsBuilder<T extends ChainedComponent<?>> { } } - private void readComponent(DeployState deployState, AbstractConfigProducer ancestor, + private void readComponent(DeployState deployState, AbstractConfigProducer<?> ancestor, Element componentElement, ComponentType<T> componentType, - Map<String, ComponentType> outerComponentTypeByComponentName) { + Map<String, ComponentType<?>> outerComponentTypeByComponentName) { ComponentSpecification componentSpecification = XmlHelper.getIdRef(componentElement); @@ -109,9 +109,9 @@ public class ComponentsBuilder<T extends ChainedComponent<?>> { } } - private void readComponentReference(Element componentElement, ComponentType componentType, + private void readComponentReference(Element componentElement, ComponentType<?> componentType, ComponentSpecification componentSpecification, - Map<String, ComponentType> outerComponentTypeByComponentName) { + Map<String, ComponentType<?>> outerComponentTypeByComponentName) { String componentName = componentSpecification.getName(); ensureTypesMatch(componentType, outerComponentTypeByComponentName.get(componentName), componentName); @@ -119,14 +119,14 @@ public class ComponentsBuilder<T extends ChainedComponent<?>> { outerComponentReferences.add(componentSpecification); } - private void readComponentDefinition(DeployState deployState, AbstractConfigProducer ancestor, Element componentElement, ComponentType<T> componentType) { + private void readComponentDefinition(DeployState deployState, AbstractConfigProducer<?> ancestor, Element componentElement, ComponentType<T> componentType) { T component = componentType.createBuilder().build(deployState, ancestor, componentElement); componentDefinitions.add(component); updateComponentTypes(component.getComponentId(), componentType); } - private void updateComponentTypes(ComponentId componentId, ComponentType componentType) { - ComponentType oldType = componentTypesByComponentName.put(componentId.getName(), componentType); + private void updateComponentTypes(ComponentId componentId, ComponentType<?> componentType) { + ComponentType<?> oldType = componentTypesByComponentName.put(componentId.getName(), componentType); if (oldType != null) { ensureTypesMatch(componentType, oldType, componentId.getName()); } @@ -139,14 +139,14 @@ public class ComponentsBuilder<T extends ChainedComponent<?>> { " so no additional attributes or nested elements are allowed"); } - private void ensureTypesMatch(ComponentType type1, ComponentType type2, String componentName) { + private void ensureTypesMatch(ComponentType<?> type1, ComponentType<?> type2, String componentName) { if (!type1.equals(type2)) { throw new IllegalArgumentException("Two different types declared for the component with name '" + componentName + "' (" + type1.name + " != " + type2.name + ")."); } } - private Map<String, ComponentType> unmodifiable(Map<String, ComponentType> outerComponentTypeByComponentName) { + private Map<String, ComponentType<?>> unmodifiable(Map<String, ComponentType<?>> outerComponentTypeByComponentName) { return (outerComponentTypeByComponentName != null)? Collections.unmodifiableMap(outerComponentTypeByComponentName): Collections.emptyMap(); @@ -156,7 +156,7 @@ public class ComponentsBuilder<T extends ChainedComponent<?>> { return Collections.unmodifiableCollection(componentDefinitions); } - public Map<String, ComponentType> getComponentTypeByComponentName() { + public Map<String, ComponentType<?>> getComponentTypeByComponentName() { return Collections.unmodifiableMap(componentTypesByComponentName); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/DomChainBuilderBase.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/DomChainBuilderBase.java index 349a89afa0c..a6c9cca29e7 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/DomChainBuilderBase.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/DomChainBuilderBase.java @@ -8,9 +8,8 @@ import com.yahoo.vespa.model.builder.xml.dom.VespaDomBuilder; import com.yahoo.vespa.model.container.component.chain.Chain; import com.yahoo.vespa.model.container.component.chain.ChainedComponent; import org.w3c.dom.Element; - -import java.util.Arrays; import java.util.Collection; +import java.util.List; import java.util.Map; /** @@ -20,18 +19,18 @@ import java.util.Map; public abstract class DomChainBuilderBase<COMPONENT extends ChainedComponent<?>, CHAIN extends Chain<COMPONENT>> extends VespaDomBuilder.DomConfigProducerBuilder<CHAIN> { - private Collection<ComponentsBuilder.ComponentType<COMPONENT>> allowedComponentTypes; - protected final Map<String, ComponentsBuilder.ComponentType> outerComponentTypeByComponentName; + private final Collection<ComponentsBuilder.ComponentType<COMPONENT>> allowedComponentTypes; + protected final Map<String, ComponentsBuilder.ComponentType<?>> outerComponentTypeByComponentName; public DomChainBuilderBase(Collection<ComponentsBuilder.ComponentType<COMPONENT>> allowedComponentTypes, - Map<String, ComponentsBuilder.ComponentType> outerComponentTypeByComponentName) { + Map<String, ComponentsBuilder.ComponentType<?>> outerComponentTypeByComponentName) { this.allowedComponentTypes = allowedComponentTypes; this.outerComponentTypeByComponentName = outerComponentTypeByComponentName; } - public final CHAIN doBuild(DeployState deployState, AbstractConfigProducer ancestor, Element producerSpec) { + public final CHAIN doBuild(DeployState deployState, AbstractConfigProducer<?> ancestor, Element producerSpec) { ComponentsBuilder<COMPONENT> componentsBuilder = - new ComponentsBuilder<>(deployState, ancestor, allowedComponentTypes, Arrays.asList(producerSpec), outerComponentTypeByComponentName); + new ComponentsBuilder<>(deployState, ancestor, allowedComponentTypes, List.of(producerSpec), outerComponentTypeByComponentName); ChainSpecification specWithoutInnerComponents = new ChainSpecificationBuilder(producerSpec).build(componentsBuilder.getOuterComponentReferences()); @@ -47,6 +46,6 @@ public abstract class DomChainBuilderBase<COMPONENT extends ChainedComponent<?>, } } - protected abstract CHAIN buildChain(DeployState deployState, AbstractConfigProducer ancestor, Element producerSpec, + protected abstract CHAIN buildChain(DeployState deployState, AbstractConfigProducer<?> ancestor, Element producerSpec, ChainSpecification specWithoutInnerComponents); } 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 a5e09d206bf..2bc7e8f2658 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 @@ -38,13 +38,13 @@ class DomChainsBuilder<COMPONENT extends ChainedComponent<?>, CHAIN extends Chai this.appPkgChainsDir = appPkgChainsDir; } - protected abstract CHAINS newChainsInstance(AbstractConfigProducer parent); + protected abstract CHAINS newChainsInstance(AbstractConfigProducer<?> parent); @Override - protected final CHAINS doBuild(DeployState deployState, AbstractConfigProducer parent, Element chainsElement) { + protected final CHAINS doBuild(DeployState deployState, AbstractConfigProducer<?> parent, Element chainsElement) { CHAINS chains = newChainsInstance(parent); - List<Element> allChainElements = allChainElements(deployState, parent, chainsElement); + List<Element> allChainElements = allChainElements(deployState, chainsElement); if (! allChainElements.isEmpty()) { ComponentsBuilder<COMPONENT> outerComponentsBuilder = readOuterComponents(deployState, chains, allChainElements); ChainsBuilder<COMPONENT, CHAIN> chainsBuilder = readChains(deployState, chains, allChainElements, @@ -56,7 +56,7 @@ class DomChainsBuilder<COMPONENT extends ChainedComponent<?>, CHAIN extends Chai return chains; } - private List<Element> allChainElements(DeployState deployState, AbstractConfigProducer ancestor, Element chainsElement) { + private List<Element> allChainElements(DeployState deployState, Element chainsElement) { List<Element> chainsElements = new ArrayList<>(); if (outerChainsElem != null) chainsElements.add(outerChainsElem); @@ -68,18 +68,18 @@ class DomChainsBuilder<COMPONENT extends ChainedComponent<?>, CHAIN extends Chai return chainsElements; } - private ComponentsBuilder<COMPONENT> readOuterComponents(DeployState deployState, AbstractConfigProducer ancestor, List<Element> chainsElems) { + private ComponentsBuilder<COMPONENT> readOuterComponents(DeployState deployState, AbstractConfigProducer<?> ancestor, List<Element> chainsElems) { return new ComponentsBuilder<>(deployState, ancestor, allowedComponentTypes, chainsElems, null); } protected abstract - ChainsBuilder<COMPONENT, CHAIN> readChains(DeployState deployState, AbstractConfigProducer ancestor, List<Element> allChainsElems, - Map<String, ComponentsBuilder.ComponentType> outerComponentTypeByComponentName); + ChainsBuilder<COMPONENT, CHAIN> readChains(DeployState deployState, AbstractConfigProducer<?> ancestor, List<Element> allChainsElems, + Map<String, ComponentsBuilder.ComponentType<?>> outerComponentTypeByComponentName); private void addOuterComponents(CHAINS chains, ComponentsBuilder<COMPONENT> outerComponentsBuilder) { assert (outerComponentsBuilder.getOuterComponentReferences().isEmpty()); - for (ChainedComponent outerComponent : outerComponentsBuilder.getComponentDefinitions()) { + for (ChainedComponent<?> outerComponent : outerComponentsBuilder.getComponentDefinitions()) { chains.add(outerComponent); } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DocprocChainsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DocprocChainsBuilder.java index 7d2a5a46bc4..17441b2d7cd 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DocprocChainsBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DocprocChainsBuilder.java @@ -24,13 +24,13 @@ public class DocprocChainsBuilder extends ChainsBuilder<DocumentProcessor, Docpr private static final Map<String, Class<? extends DomChainBuilderBase<? extends DocumentProcessor, ? extends DocprocChain>>> chainType2builderClass = Collections.unmodifiableMap( - new LinkedHashMap<String, Class<? extends DomChainBuilderBase<? extends DocumentProcessor, ? extends DocprocChain>>>() {{ + new LinkedHashMap<>() {{ put("docprocchain", DomDocprocChainBuilder.class); put("chain", DomDocprocChainBuilder.class); }}); - public DocprocChainsBuilder(DeployState deployState, AbstractConfigProducer ancestor, List<Element> docprocChainsElements, - Map<String, ComponentsBuilder.ComponentType> outerSearcherTypeByComponentName) { + public DocprocChainsBuilder(DeployState deployState, AbstractConfigProducer<?> ancestor, List<Element> docprocChainsElements, + Map<String, ComponentsBuilder.ComponentType<?>> outerSearcherTypeByComponentName) { super(deployState, ancestor, docprocChainsElements, outerSearcherTypeByComponentName, chainType2builderClass); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DomDocprocChainBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DomDocprocChainBuilder.java index 299d8172f6c..d4393b2cd9e 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DomDocprocChainBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/docproc/DomDocprocChainBuilder.java @@ -10,8 +10,7 @@ import com.yahoo.vespa.model.builder.xml.dom.chains.DomChainBuilderBase; import com.yahoo.vespa.model.container.docproc.DocprocChain; import com.yahoo.vespa.model.container.docproc.DocumentProcessor; import org.w3c.dom.Element; - -import java.util.Arrays; +import java.util.List; import java.util.Map; /** @@ -21,12 +20,12 @@ import java.util.Map; */ public class DomDocprocChainBuilder extends DomChainBuilderBase<DocumentProcessor, DocprocChain> { - public DomDocprocChainBuilder(Map<String, ComponentsBuilder.ComponentType> outerComponentTypeByComponentName) { - super(Arrays.asList(ComponentsBuilder.ComponentType.documentprocessor), outerComponentTypeByComponentName); + public DomDocprocChainBuilder(Map<String, ComponentsBuilder.ComponentType<?>> outerComponentTypeByComponentName) { + super(List.of(ComponentsBuilder.ComponentType.documentprocessor), outerComponentTypeByComponentName); } @Override - protected DocprocChain buildChain(DeployState deployState, AbstractConfigProducer ancestor, Element producerSpec, + protected DocprocChain buildChain(DeployState deployState, AbstractConfigProducer<?> ancestor, Element producerSpec, ChainSpecification specWithoutInnerComponents) { Map<Pair<String, String>, String> fieldNameSchemaMap = DocumentProcessorModelBuilder.parseFieldNameSchemaMap(producerSpec); return new DocprocChain(specWithoutInnerComponents, fieldNameSchemaMap); 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 dfb849b2e0f..ae22a6971bb 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,17 +1,15 @@ // 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.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.docproc.DocprocChains; import com.yahoo.vespa.model.container.docproc.DocprocChain; +import com.yahoo.vespa.model.container.docproc.DocprocChains; import com.yahoo.vespa.model.container.docproc.DocumentProcessor; import org.w3c.dom.Element; - -import java.util.Arrays; import java.util.List; import java.util.Map; @@ -22,18 +20,18 @@ import java.util.Map; */ public class DomDocprocChainsBuilder extends DomChainsBuilder<DocumentProcessor, DocprocChain, DocprocChains> { public DomDocprocChainsBuilder(Element outerChainsElem, boolean supportDocprocChainsDir) { - super(outerChainsElem, Arrays.asList(ComponentType.documentprocessor), - supportDocprocChainsDir ? ApplicationPackage.DOCPROCCHAINS_DIR: null); + super(outerChainsElem, List.of(ComponentType.documentprocessor), + supportDocprocChainsDir ? ApplicationPackage.DOCPROCCHAINS_DIR: null); } @Override - protected DocprocChains newChainsInstance(AbstractConfigProducer parent) { + protected DocprocChains newChainsInstance(AbstractConfigProducer<?> parent) { return new DocprocChains(parent, "docprocchains"); } @Override - protected DocprocChainsBuilder readChains(DeployState deployState, AbstractConfigProducer ancestor, List<Element> docprocChainsElements, - Map<String, ComponentType> outerComponentTypeByComponentName) { + protected DocprocChainsBuilder readChains(DeployState deployState, AbstractConfigProducer<?> ancestor, List<Element> docprocChainsElements, + Map<String, ComponentType<?>> outerComponentTypeByComponentName) { return new DocprocChainsBuilder(deployState, ancestor, docprocChainsElements, outerComponentTypeByComponentName); } } 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 059cd157322..d29643c78e2 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,17 +1,15 @@ // 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.config.application.api.ApplicationPackage; import com.yahoo.vespa.model.builder.xml.dom.chains.ComponentsBuilder; import com.yahoo.vespa.model.builder.xml.dom.chains.DomChainsBuilder; import com.yahoo.vespa.model.container.processing.ProcessingChain; import com.yahoo.vespa.model.container.processing.ProcessingChains; import com.yahoo.vespa.model.container.processing.Processor; import org.w3c.dom.Element; - -import java.util.Arrays; import java.util.List; import java.util.Map; @@ -19,22 +17,21 @@ import java.util.Map; * Root builder of the processing model * * @author bratseth - * @since 5.1.6 */ public class DomProcessingBuilder extends DomChainsBuilder<Processor, ProcessingChain, ProcessingChains> { public DomProcessingBuilder(Element outerChainsElem) { - super(outerChainsElem, Arrays.asList(ComponentsBuilder.ComponentType.processor), ApplicationPackage.PROCESSORCHAINS_DIR); + super(outerChainsElem, List.of(ComponentsBuilder.ComponentType.processor), ApplicationPackage.PROCESSORCHAINS_DIR); } @Override - protected ProcessingChains newChainsInstance(AbstractConfigProducer parent) { + protected ProcessingChains newChainsInstance(AbstractConfigProducer<?> parent) { return new ProcessingChains(parent, "processing"); } @Override - protected ProcessingChainsBuilder readChains(DeployState deployState, AbstractConfigProducer ancestor, List<Element> processingChainsElements, - Map<String, ComponentsBuilder.ComponentType> outerComponentTypeByComponentName) { + protected ProcessingChainsBuilder readChains(DeployState deployState, AbstractConfigProducer<?> ancestor, List<Element> processingChainsElements, + Map<String, ComponentsBuilder.ComponentType<?>> outerComponentTypeByComponentName) { return new ProcessingChainsBuilder(deployState, ancestor, processingChainsElements, outerComponentTypeByComponentName); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/DomProcessingChainBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/DomProcessingChainBuilder.java index 4f4845a06b1..fa6fff9dee3 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/DomProcessingChainBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/DomProcessingChainBuilder.java @@ -9,21 +9,19 @@ import com.yahoo.vespa.model.builder.xml.dom.chains.DomChainBuilderBase; import com.yahoo.vespa.model.container.processing.ProcessingChain; import com.yahoo.vespa.model.container.processing.Processor; import org.w3c.dom.Element; - -import java.util.Arrays; +import java.util.List; import java.util.Map; /** * @author bratseth - * @since 5.1.6 */ public class DomProcessingChainBuilder extends DomChainBuilderBase<Processor, ProcessingChain> { - public DomProcessingChainBuilder(Map<String, ComponentsBuilder.ComponentType> outerComponentTypeByComponentName) { - super(Arrays.asList(ComponentsBuilder.ComponentType.processor), outerComponentTypeByComponentName); + public DomProcessingChainBuilder(Map<String, ComponentsBuilder.ComponentType<?>> outerComponentTypeByComponentName) { + super(List.of(ComponentsBuilder.ComponentType.processor), outerComponentTypeByComponentName); } - protected ProcessingChain buildChain(DeployState deployState, AbstractConfigProducer ancestor, Element producerSpec, + protected ProcessingChain buildChain(DeployState deployState, AbstractConfigProducer<?> ancestor, Element producerSpec, ChainSpecification specWithoutInnerComponents) { return new ProcessingChain(specWithoutInnerComponents); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/ProcessingChainsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/ProcessingChainsBuilder.java index c33807b0741..f29b46cc327 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/ProcessingChainsBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/processing/ProcessingChainsBuilder.java @@ -20,7 +20,6 @@ import java.util.Map; * Creates all processing chains from xml. * * @author bratseth - * @since 5.1.6 */ public class ProcessingChainsBuilder extends ChainsBuilder<Processor, ProcessingChain> { @@ -30,8 +29,8 @@ public class ProcessingChainsBuilder extends ChainsBuilder<Processor, Processing put("chain", DomProcessingChainBuilder.class); }}); - public ProcessingChainsBuilder(DeployState deployState, AbstractConfigProducer ancestor, List<Element> processingChainsElements, - Map<String, ComponentsBuilder.ComponentType> outerSearcherTypeByComponentName) { + public ProcessingChainsBuilder(DeployState deployState, AbstractConfigProducer<?> ancestor, List<Element> processingChainsElements, + Map<String, ComponentsBuilder.ComponentType<?>> outerSearcherTypeByComponentName) { super(deployState, ancestor, processingChainsElements, outerSearcherTypeByComponentName, chainType2builderClass); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomGenericTargetBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomGenericTargetBuilder.java index a220d08cf15..fd0c14db3c5 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomGenericTargetBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomGenericTargetBuilder.java @@ -19,7 +19,7 @@ import java.util.Map; */ abstract public class DomGenericTargetBuilder<T extends GenericTarget> extends DomChainBuilderBase<Searcher<?>, T> { - DomGenericTargetBuilder(Map<String, ComponentsBuilder.ComponentType> outerSearcherTypeByComponentName) { + DomGenericTargetBuilder(Map<String, ComponentsBuilder.ComponentType<?>> outerSearcherTypeByComponentName) { super(Arrays.asList(ComponentsBuilder.ComponentType.searcher, ComponentsBuilder.ComponentType.federation), outerSearcherTypeByComponentName); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomProviderBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomProviderBuilder.java index 19c5c489f7e..b15c461f72f 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomProviderBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomProviderBuilder.java @@ -1,22 +1,19 @@ // 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.search; -import com.yahoo.binaryprefix.BinaryPrefix; import com.yahoo.component.ComponentId; import com.yahoo.component.chain.model.ChainSpecification; import com.yahoo.config.model.deploy.DeployState; +import com.yahoo.config.model.producer.AbstractConfigProducer; import com.yahoo.search.searchchain.model.federation.FederationOptions; import com.yahoo.search.searchchain.model.federation.LocalProviderSpec; import com.yahoo.text.XML; -import com.yahoo.config.model.producer.AbstractConfigProducer; -import com.yahoo.vespa.model.builder.xml.dom.BinaryScaledAmountParser; import com.yahoo.vespa.model.builder.xml.dom.chains.ComponentsBuilder; import com.yahoo.vespa.model.container.search.searchchain.GenericProvider; import com.yahoo.vespa.model.container.search.searchchain.LocalProvider; import com.yahoo.vespa.model.container.search.searchchain.Provider; import com.yahoo.vespa.model.container.search.searchchain.Source; import org.w3c.dom.Element; - import java.util.ArrayList; import java.util.Collection; import java.util.List; @@ -123,12 +120,12 @@ public class DomProviderBuilder extends DomGenericTargetBuilder<Provider> { } } - public DomProviderBuilder(Map<String, ComponentsBuilder.ComponentType> outerSearcherTypeByComponentName) { + public DomProviderBuilder(Map<String, ComponentsBuilder.ComponentType<?>> outerSearcherTypeByComponentName) { super(outerSearcherTypeByComponentName); } @Override - protected Provider buildChain(DeployState deployState, AbstractConfigProducer ancestor, Element providerElement, + protected Provider buildChain(DeployState deployState, AbstractConfigProducer<?> ancestor, Element providerElement, ChainSpecification specWithoutInnerComponents) { ProviderReader providerReader = new ProviderReader(providerElement); @@ -143,7 +140,7 @@ public class DomProviderBuilder extends DomGenericTargetBuilder<Provider> { } - private Collection<Source> buildSources(DeployState deployState, AbstractConfigProducer ancestor, Element providerElement) { + private Collection<Source> buildSources(DeployState deployState, AbstractConfigProducer<?> ancestor, Element providerElement) { List<Source> sources = new ArrayList<>(); for (Element sourceElement : XML.getChildren(providerElement, "source")) { sources.add(new DomSourceBuilder(outerComponentTypeByComponentName).build(deployState, ancestor, sourceElement)); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainBuilder.java index 387bd916579..d4b65f85f3d 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSearchChainBuilder.java @@ -19,13 +19,14 @@ import java.util.Map; */ public class DomSearchChainBuilder extends DomChainBuilderBase<Searcher<?>, SearchChain> { - public DomSearchChainBuilder(Map<String, ComponentsBuilder.ComponentType> outerSearcherTypeByComponentName) { + public DomSearchChainBuilder(Map<String, ComponentsBuilder.ComponentType<?>> outerSearcherTypeByComponentName) { super(Arrays.asList(ComponentsBuilder.ComponentType.searcher, ComponentsBuilder.ComponentType.federation), outerSearcherTypeByComponentName); } - protected SearchChain buildChain(DeployState deployState, AbstractConfigProducer ancestor, Element producerSpec, + protected SearchChain buildChain(DeployState deployState, AbstractConfigProducer<?> ancestor, Element producerSpec, ChainSpecification specWithoutInnerComponents) { return new SearchChain(specWithoutInnerComponents); } + } 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 b153ca68590..d4bd93f67c7 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 @@ -33,13 +33,13 @@ public class DomSearchChainsBuilder extends DomChainsBuilder<Searcher<?>, Search } @Override - protected SearchChains newChainsInstance(AbstractConfigProducer parent) { + protected SearchChains newChainsInstance(AbstractConfigProducer<?> parent) { return new SearchChains(parent, "searchchains"); } @Override - protected SearchChainsBuilder readChains(DeployState deployState, AbstractConfigProducer ancestor, List<Element> searchChainsElements, - Map<String, ComponentType> outerComponentTypeByComponentName) { + protected SearchChainsBuilder readChains(DeployState deployState, AbstractConfigProducer<?> ancestor, List<Element> searchChainsElements, + Map<String, ComponentType<?>> outerComponentTypeByComponentName) { return new SearchChainsBuilder(deployState, ancestor, searchChainsElements, outerComponentTypeByComponentName); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSourceBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSourceBuilder.java index 5d6bde5f0f8..a567e09fa7d 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSourceBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/chains/search/DomSourceBuilder.java @@ -16,11 +16,11 @@ import java.util.Map; * @author Tony Vaagenes */ public class DomSourceBuilder extends DomGenericTargetBuilder<Source> { - DomSourceBuilder(Map<String, ComponentsBuilder.ComponentType> outerSearcherTypeByComponentName) { + DomSourceBuilder(Map<String, ComponentsBuilder.ComponentType<?>> outerSearcherTypeByComponentName) { super(outerSearcherTypeByComponentName); } - protected Source buildChain(DeployState deployState, AbstractConfigProducer ancestor, Element producerSpec, ChainSpecification specWithoutInnerComponents) { + protected Source buildChain(DeployState deployState, AbstractConfigProducer<?> ancestor, Element producerSpec, ChainSpecification specWithoutInnerComponents) { Source.GroupOption groupOption = XmlHelper.isReference(producerSpec) ? Source.GroupOption.participant : @@ -28,4 +28,5 @@ public class DomSourceBuilder extends DomGenericTargetBuilder<Source> { return new Source(specWithoutInnerComponents, readFederationOptions(producerSpec), groupOption); } + } 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 298420e3a68..e13e741dd5d 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 @@ -31,8 +31,8 @@ public class SearchChainsBuilder extends ChainsBuilder<Searcher<?>, SearchChain> put("provider", DomProviderBuilder.class); }}); - public SearchChainsBuilder(DeployState deployState, AbstractConfigProducer ancestor, List<Element> searchChainsElements, - Map<String, ComponentsBuilder.ComponentType> outerSearcherTypeByComponentName) { + public SearchChainsBuilder(DeployState deployState, AbstractConfigProducer<?> ancestor, List<Element> searchChainsElements, + Map<String, ComponentsBuilder.ComponentType<?>> outerSearcherTypeByComponentName) { super(deployState, ancestor, searchChainsElements, outerSearcherTypeByComponentName, chainType2builderClass); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/FilterChainBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/FilterChainBuilder.java index 334b41d5e8e..293480e6c7f 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/FilterChainBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/FilterChainBuilder.java @@ -19,15 +19,15 @@ import static com.yahoo.vespa.model.builder.xml.dom.chains.ComponentsBuilder.Com * @author Tony Vaagenes */ public class FilterChainBuilder extends DomChainBuilderBase<Filter, Chain<Filter>> { - private static Collection<ComponentType<Filter>> allowedComponentTypes = Collections.singleton(ComponentType.filter); + private static final Collection<ComponentType<Filter>> allowedComponentTypes = Collections.singleton(ComponentType.filter); - public FilterChainBuilder(Map<String, ComponentType> outerFilterTypeByComponentName) { + public FilterChainBuilder(Map<String, ComponentType<?>> outerFilterTypeByComponentName) { super(allowedComponentTypes, outerFilterTypeByComponentName); } @Override - protected Chain<Filter> buildChain(DeployState deployState, AbstractConfigProducer ancestor, Element producerSpec, ChainSpecification specWithoutInnerComponents) { + protected Chain<Filter> buildChain(DeployState deployState, AbstractConfigProducer<?> ancestor, Element producerSpec, ChainSpecification specWithoutInnerComponents) { return new Chain<>(specWithoutInnerComponents); } } 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 e85e853f989..c75d8225843 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 @@ -35,15 +35,15 @@ public class FilterChainsBuilder extends DomChainsBuilder<Filter, Chain<Filter>, } @Override - protected FilterChains newChainsInstance(AbstractConfigProducer parent) { + protected FilterChains newChainsInstance(AbstractConfigProducer<?> parent) { return new FilterChains(parent); } @Override protected ChainsBuilder<Filter, Chain<Filter>> readChains( DeployState deployState, - AbstractConfigProducer ancestor, - List<Element> allChainsElems, Map<String, ComponentsBuilder.ComponentType> outerComponentTypeByComponentName) { + AbstractConfigProducer<?> ancestor, + List<Element> allChainsElems, Map<String, ComponentsBuilder.ComponentType<?>> outerComponentTypeByComponentName) { return new ChainsBuilder<>(deployState, ancestor, allChainsElems, outerComponentTypeByComponentName, chainType2BuilderClass); } |