this.properties = properties;
}
public void modify(ManifestContents manifest) {
PlaceholderValueTransformer transformer = new VersionExpansionTransformer(manifest);
PropertyPlaceholderResolver placeholderResolver = new PropertyPlaceholderResolver();
for (Entry<String, String> entry : manifest.getMainAttributes().entrySet()) {
String key = entry.getKey();
String value = entry.getValue();
manifest.getMainAttributes().put(key, placeholderResolver.resolve(value, this.properties, transformer));
}
for(String name : manifest.getSectionNames()) {
for(Entry<String, String> entry : manifest.getAttributesForSection(name).entrySet()) {
String key = entry.getKey();
String value = entry.getValue();
manifest.getAttributesForSection(name).put(key, placeholderResolver.resolve(value, this.properties, transformer));
}
}
}