public static UserConfigRepo build(Element producerSpec, ConfigDefinitionStore configDefinitionStore, DeployLogger deployLogger) {
        Map<ConfigDefinitionKey, ConfigPayloadBuilder> builderMap = new LinkedHashMap<>();
        log.log(Level.FINE, () -> "getUserConfigs for " + producerSpec);
        for (Element configE : XML.getChildren(producerSpec, "config")) {
            buildElement(configE, builderMap, configDefinitionStore, deployLogger);
        }
        return new UserConfigRepo(builderMap);
    }
@Test
    void require_that_simple_config_is_resolved() {
        Element configRoot = getDocument("<config name=\"test.simpletypes\">" +
                "    <intval>13</intval>" +
                "</config>" +
                "<config name=\"test.simpletypes\" version=\"1\">" +
                "    <stringval>foolio</stringval>" +
                "</config>");
        UserConfigRepo map = UserConfigBuilder.build(configRoot, configDefinitionStore, new BaseDeployLogger());
        assertFalse(map.isEmpty());
        ConfigDefinitionKey key = new ConfigDefinitionKey("simpletypes", "test");
        assertNotNull(map.get(key));
        SimpletypesConfig config = createConfig(SimpletypesConfig.class, map.get(key));
        assertEquals(13, config.intval());
        assertEquals("foolio", config.stringval());
    }