Skip to content

Commit fd51806

Browse files
committed
Polish
1 parent f0e7774 commit fd51806

File tree

1 file changed

+31
-27
lines changed

1 file changed

+31
-27
lines changed

buildSrc/src/main/java/org/springframework/boot/build/RepositoryTransformersExtension.java

Lines changed: 31 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@
1616

1717
package org.springframework.boot.build;
1818

19+
import java.net.URI;
20+
import java.util.function.BiFunction;
21+
1922
import javax.inject.Inject;
2023

2124
import org.gradle.api.Project;
@@ -29,9 +32,9 @@
2932
*/
3033
public class RepositoryTransformersExtension {
3134

32-
private static final String MARKER = "{spring.mavenRepositories}";
35+
private static final String REPOSITORIES_MARKER = "{spring.mavenRepositories}";
3336

34-
private static final String MARKER_PLUGIN = "{spring.mavenPluginRepositories}";
37+
private static final String PLUGIN_REPOSITORIES_MARKER = "{spring.mavenPluginRepositories}";
3538

3639
private final Project project;
3740

@@ -45,18 +48,12 @@ public Transformer<String, String> ant() {
4548
}
4649

4750
private String transformAnt(String line) {
48-
if (line.contains(MARKER)) {
49-
StringBuilder result = new StringBuilder();
50-
String indent = getIndent(line);
51-
this.project.getRepositories().withType(MavenArtifactRepository.class, (repository) -> {
51+
if (line.contains(REPOSITORIES_MARKER)) {
52+
return transform(line, (repository, indent) -> {
5253
String name = repository.getName();
53-
if (name.startsWith("spring-")) {
54-
result.append(!result.isEmpty() ? "\n" : "");
55-
result.append("%s<ibiblio name=\"%s\" m2compatible=\"true\" root=\"%s\" />".formatted(indent, name,
56-
repository.getUrl()));
57-
}
54+
URI url = repository.getUrl();
55+
return "%s<ibiblio name=\"%s\" m2compatible=\"true\" root=\"%s\" />".formatted(indent, name, url);
5856
});
59-
return result.toString();
6057
}
6158
return line;
6259
}
@@ -66,26 +63,17 @@ public Transformer<String, String> mavenSettings() {
6663
}
6764

6865
private String transformMavenSettings(String line) {
69-
if (line.contains(MARKER)) {
70-
return transformMarker(line, false);
66+
if (line.contains(REPOSITORIES_MARKER)) {
67+
return transformMavenRepositories(line, false);
7168
}
72-
if (line.contains(MARKER_PLUGIN)) {
73-
return transformMarker(line, true);
69+
if (line.contains(PLUGIN_REPOSITORIES_MARKER)) {
70+
return transformMavenRepositories(line, true);
7471
}
7572
return line;
7673
}
7774

78-
private String transformMarker(String line, boolean pluginRepository) {
79-
StringBuilder result = new StringBuilder();
80-
String indent = getIndent(line);
81-
this.project.getRepositories().withType(MavenArtifactRepository.class, (repository) -> {
82-
String name = repository.getName();
83-
if (name.startsWith("spring-")) {
84-
result.append(!result.isEmpty() ? "\n" : "");
85-
result.append(mavenRepositoryXml(indent, repository, pluginRepository));
86-
}
87-
});
88-
return result.toString();
75+
private String transformMavenRepositories(String line, boolean pluginRepository) {
76+
return transform(line, (repository, indent) -> mavenRepositoryXml(indent, repository, pluginRepository));
8977
}
9078

9179
private String mavenRepositoryXml(String indent, MavenArtifactRepository repository, boolean pluginRepository) {
@@ -105,6 +93,22 @@ private String mavenRepositoryXml(String indent, MavenArtifactRepository reposit
10593
return xml.toString();
10694
}
10795

96+
private String transform(String line, BiFunction<MavenArtifactRepository, String, String> generator) {
97+
StringBuilder result = new StringBuilder();
98+
String indent = getIndent(line);
99+
this.project.getRepositories().withType(MavenArtifactRepository.class, (repository) -> {
100+
String name = repository.getName();
101+
if (name.startsWith("spring-")) {
102+
String fragment = generator.apply(repository, indent);
103+
if (fragment != null) {
104+
result.append(!result.isEmpty() ? "\n" : "");
105+
result.append(fragment);
106+
}
107+
}
108+
});
109+
return result.toString();
110+
}
111+
108112
private String getIndent(String line) {
109113
return line.substring(0, line.length() - line.stripLeading().length());
110114
}

0 commit comments

Comments
 (0)