Skip to content

Commit 345d6af

Browse files
Fix Sonar
1 parent 18e6ab3 commit 345d6af

File tree

4 files changed

+28
-29
lines changed

4 files changed

+28
-29
lines changed

src/example/java/io/github/computerdaddyguy/jfiletreeprettyprinter/example/Emojis.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ public class Emojis {
66

77
public static void main(String[] args) {
88
var prettyPrinter = FileTreePrettyPrinter.builder()
9-
.customizeOptions(options -> options.withDefaultEmojis())
9+
.customizeOptions(options -> options.withDefaultEmojis()) // or withEmojis(EmojiMapping) for custom mapping
1010
.build();
1111
var tree = prettyPrinter.prettyPrint("src/example/resources/emojis");
1212
System.out.println(tree);
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package io.github.computerdaddyguy.jfiletreeprettyprinter.renderer.emoji;
2+
3+
import java.util.Map;
4+
import java.util.Map.Entry;
5+
import java.util.Objects;
6+
import java.util.stream.Collectors;
7+
8+
final class MappingUtils {
9+
10+
private MappingUtils() {
11+
// Helper class
12+
}
13+
14+
public static Map<String, String> toLowerCaseKeys(Map<String, String> mapping) {
15+
Objects.requireNonNull(mapping, "mapping is null");
16+
return mapping.entrySet().stream()
17+
.collect(
18+
Collectors.toMap(
19+
entry -> entry.getKey().toLowerCase(),
20+
Entry::getValue
21+
)
22+
);
23+
}
24+
25+
}

src/main/java/io/github/computerdaddyguy/jfiletreeprettyprinter/renderer/emoji/PathExtensionEmojiFunction.java

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,7 @@
44
import java.util.ArrayList;
55
import java.util.List;
66
import java.util.Map;
7-
import java.util.Objects;
87
import java.util.function.Function;
9-
import java.util.stream.Collectors;
108
import org.jspecify.annotations.NullMarked;
119
import org.jspecify.annotations.Nullable;
1210

@@ -16,7 +14,7 @@ class PathExtensionEmojiFunction implements Function<Path, String> {
1614
private final Map<String, String> mapping;
1715

1816
public PathExtensionEmojiFunction(Map<String, String> mapping) {
19-
this.mapping = toLowerCaseKeys(mapping);
17+
this.mapping = MappingUtils.toLowerCaseKeys(mapping);
2018
}
2119

2220
@Override
@@ -36,17 +34,6 @@ public String apply(Path path) {
3634
return null;
3735
}
3836

39-
private static Map<String, String> toLowerCaseKeys(Map<String, String> mapping) {
40-
Objects.requireNonNull(mapping, "mapping is null");
41-
return mapping.entrySet().stream()
42-
.collect(
43-
Collectors.toMap(
44-
entry -> entry.getKey().toLowerCase(),
45-
entry -> entry.getValue()
46-
)
47-
);
48-
}
49-
5037
/**
5138
* Build the list of all extensions of given path, from most specific to less specific.
5239
* For "myFile.txt", return list ["txt"]

src/main/java/io/github/computerdaddyguy/jfiletreeprettyprinter/renderer/emoji/PathNameEmojiFunction.java

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@
22

33
import java.nio.file.Path;
44
import java.util.Map;
5-
import java.util.Objects;
65
import java.util.function.Function;
7-
import java.util.stream.Collectors;
86
import org.jspecify.annotations.NullMarked;
97
import org.jspecify.annotations.Nullable;
108

@@ -14,18 +12,7 @@ class PathNameEmojiFunction implements Function<Path, String> {
1412
private final Map<String, String> mapping;
1513

1614
public PathNameEmojiFunction(Map<String, String> mapping) {
17-
this.mapping = toLowerCaseKeys(mapping);
18-
}
19-
20-
private static Map<String, String> toLowerCaseKeys(Map<String, String> mapping) {
21-
Objects.requireNonNull(mapping, "mapping is null");
22-
return mapping.entrySet().stream()
23-
.collect(
24-
Collectors.toMap(
25-
entry -> entry.getKey().toLowerCase(),
26-
entry -> entry.getValue()
27-
)
28-
);
15+
this.mapping = MappingUtils.toLowerCaseKeys(mapping);
2916
}
3017

3118
@Override

0 commit comments

Comments
 (0)