Skip to content

Commit e0b3b6b

Browse files
Apply review suggestion - 1
1 parent 28cd1bc commit e0b3b6b

File tree

3 files changed

+26
-19
lines changed

3 files changed

+26
-19
lines changed

compat/maven-settings-builder/src/main/java/org/apache/maven/settings/building/DefaultSettingsBuilder.java

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,11 @@
2626
import java.io.IOException;
2727
import java.io.StringReader;
2828
import java.io.StringWriter;
29-
import java.util.ArrayList;
3029
import java.util.Collections;
3130
import java.util.List;
3231
import java.util.Map;
32+
import java.util.stream.Collectors;
33+
import java.util.stream.Stream;
3334

3435
import org.apache.maven.building.FileSource;
3536
import org.apache.maven.building.Source;
@@ -261,11 +262,16 @@ private List<Server> serversByIds(List<Server> servers) {
261262
return servers;
262263
}
263264

264-
ArrayList<Server> result = new ArrayList<>(servers);
265-
266-
servers.stream().filter(server -> !server.getIds().isEmpty()).forEach(server -> server.getIds()
267-
.forEach(id -> result.add(newServer(server, id))));
268-
return result;
265+
return servers.stream()
266+
.flatMap(server -> {
267+
List<String> ids = server.getIds();
268+
if (ids.isEmpty()) {
269+
return Stream.of(server);
270+
} else {
271+
return Stream.concat(Stream.of(server), ids.stream().map(id -> newServer(server, id)));
272+
}
273+
})
274+
.collect(Collectors.toList());
269275
}
270276

271277
private Server newServer(Server server, String id) {

compat/maven-settings-builder/src/test/java/org/apache/maven/settings/building/DefaultSettingsBuilderFactoryTest.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,6 @@ private File getSettings(String name) {
3737
return new File("src/test/resources/settings/factory/" + name + ".xml").getAbsoluteFile();
3838
}
3939

40-
private org.apache.maven.settings.Server asServer(Server delegate) {
41-
return new org.apache.maven.settings.Server(delegate);
42-
}
43-
4440
SettingsBuildingResult execute(String settingsName) throws Exception {
4541
Properties properties = new Properties();
4642
properties.setProperty("user.home", "/home/user");

impl/maven-impl/src/main/java/org/apache/maven/impl/DefaultSettingsBuilder.java

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,14 @@
2626
import java.io.InputStream;
2727
import java.nio.file.Path;
2828
import java.nio.file.Paths;
29-
import java.util.ArrayList;
3029
import java.util.Collections;
3130
import java.util.List;
3231
import java.util.Map;
3332
import java.util.concurrent.atomic.AtomicInteger;
3433
import java.util.function.Supplier;
3534
import java.util.function.UnaryOperator;
35+
import java.util.stream.Collectors;
36+
import java.util.stream.Stream;
3637

3738
import org.apache.maven.api.Constants;
3839
import org.apache.maven.api.ProtoSession;
@@ -241,14 +242,18 @@ private List<Server> serversByIds(List<Server> servers) {
241242
return servers;
242243
}
243244

244-
ArrayList<Server> result = new ArrayList<>(servers);
245-
246-
servers.stream().filter(server -> !server.getIds().isEmpty()).forEach(server -> server.getIds()
247-
.forEach(id -> result.add(Server.newBuilder(server)
248-
.id(id)
249-
.ids(Collections.emptyList())
250-
.build())));
251-
return result;
245+
return servers.stream()
246+
.flatMap(server -> {
247+
List<String> ids = server.getIds();
248+
if (ids.isEmpty()) {
249+
return Stream.of(server);
250+
}
251+
return Stream.concat(Stream.of(server), ids.stream().map(id -> Server.newBuilder(server, true)
252+
.id(id)
253+
.ids(Collections.emptyList())
254+
.build()));
255+
})
256+
.collect(Collectors.toList());
252257
}
253258

254259
private Settings interpolate(

0 commit comments

Comments
 (0)