private ParameterMeta translate(final ParameterMeta config, final int replacedPrefixLen, final String newPrefix) {
return new ParameterMeta(config.getSource(), config.getJavaType(), config.getType(),
newPrefix + config.getPath().substring(replacedPrefixLen),
config.getPath().length() == replacedPrefixLen ? newPrefix : config.getName(), config.getI18nPackages(),
config
.getNestedParameters()
.stream()
.map(it -> translate(it, replacedPrefixLen, newPrefix))
.collect(toList()),
config.getProposals(), config.getMetadata(), config.isLogMissingResourceBundle());
}
}