private void yamlOverridePropertyConsumer(final PropertyPath fullPath,
                                              final Prop yamlProp) {
        // We have already walked a vanilla AppConfig object tree so all compile time
        // props should be in here with a default value (and a value that matches it)
        final ConfigProperty configProperty = globalPropertiesMap.get(fullPath);

        Preconditions.checkNotNull(
                configProperty,
                "Property %s with path %s exists in the " +
                "YAML but not in the object model, this should not happen",
                yamlProp,
                fullPath);

        final Object newValue = yamlProp.getValueFromConfigObject();
        final Object defaultValue = defaultPropertiesMap.get(fullPath).getValueFromConfigObject();

        // Update yaml override in global property.
        if (Objects.equals(defaultValue, newValue)) {
            configProperty.setYamlOverrideValue(OverrideValue.unSet(String.class));
        } else {
            final String yamlValueAsStr = getStringValue(yamlProp);
            configProperty.setYamlOverrideValue(yamlValueAsStr);
        }
    }
@param dbConfigProperty The config property object obtained from the database
@return The updated typed value from the object model
stroom-config/stroom-config-global-impl/src/main/java/stroom/config/global/impl/ConfigMapper.java