public final T build(DeployState deployState, TreeConfigProducer<P> ancestor, Element producerSpec) {
            T t = doBuild(deployState, ancestor, producerSpec);

            if (t instanceof AbstractService) {
                initializeService((AbstractService)t, deployState, ancestor.hostSystem(), producerSpec);
            } else {
                initializeProducer(t, deployState, producerSpec);
            }

            return t;
        }
Base class for builders of producers using DOM. The purpose is to always
include hostalias, baseport and user config overrides generically.

@param <T> the type of producer to build
@param <P> the child type held by the parent of the new producer, usually AnyConfigProducer
config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/VespaDomBuilder.java