diff options
author | Arne Juul <arnej@yahooinc.com> | 2023-02-14 10:46:03 +0000 |
---|---|---|
committer | Arne Juul <arnej@yahooinc.com> | 2023-02-14 10:54:02 +0000 |
commit | 130c1d8c456cf5a4e1a801899171436540413b96 (patch) | |
tree | c812a8810b448d8371c3b223d9ae93a7b5b7a9f5 /config-model | |
parent | d72297682184050e8d93a6064f86ff6d1044d212 (diff) |
add helper Base class for the usual case
Diffstat (limited to 'config-model')
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/VespaDomBuilder.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/VespaDomBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/VespaDomBuilder.java index 27ebf3a9657..8398df6f5ac 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/VespaDomBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/VespaDomBuilder.java @@ -84,7 +84,8 @@ public class VespaDomBuilder extends VespaModelBuilder { * Base class for builders of producers using DOM. The purpose is to always * include hostalias, baseport and user config overrides generically. * - * @param <T> an {@link com.yahoo.config.model.producer.TreeConfigProducer} + * @param <T> the type of producer to build + * @param <P> the child type held by the parent of the new producer, usually AnyConfigProducer */ public static abstract class DomConfigProducerBuilder<T extends AnyConfigProducer, P extends AnyConfigProducer> { @@ -170,13 +171,18 @@ public class VespaDomBuilder extends VespaModelBuilder { } } + // helper in the usual case where P is AnyConfigProducer + public static abstract class DomConfigProducerBuilderBase<T extends AnyConfigProducer> + extends DomConfigProducerBuilder<T, AnyConfigProducer> + {} + /** * The SimpleConfigProducer is the producer for elements such as container. * Must support overrides for that too, hence this builder * * @author vegardh */ - static class DomSimpleConfigProducerBuilder extends DomConfigProducerBuilder<SimpleConfigProducer<AnyConfigProducer>, AnyConfigProducer> { + static class DomSimpleConfigProducerBuilder extends DomConfigProducerBuilderBase<SimpleConfigProducer<AnyConfigProducer>> { private final String configId; @@ -191,7 +197,7 @@ public class VespaDomBuilder extends VespaModelBuilder { } } - public static class DomRootBuilder extends VespaDomBuilder.DomConfigProducerBuilder<ApplicationConfigProducerRoot, AnyConfigProducer> { + public static class DomRootBuilder extends VespaDomBuilder.DomConfigProducerBuilderBase<ApplicationConfigProducerRoot> { private final String name; /** |