Skip to content

Commit d0b9722

Browse files
committed
refactor: Consolidate trimming methods into trimEdges
1 parent 4591df1 commit d0b9722

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

spring-boot-project/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ public List<Object> parseList(String json) {
5252

5353
private List<Object> parseListInternal(int nesting, String json) {
5454
List<Object> list = new ArrayList<>();
55-
json = trimLeadingCharacter(trimTrailingCharacter(json, ']'), '[').trim();
55+
json = trimEdges(json, '[', ']').trim();
5656
for (String value : tokenize(json)) {
5757
list.add(parseInternal(nesting + 1, value));
5858
}
@@ -70,7 +70,7 @@ private Object parseInternal(int nesting, String json) {
7070
return parseMapInternal(nesting + 1, json);
7171
}
7272
if (json.startsWith("\"")) {
73-
return trimTrailingCharacter(trimLeadingCharacter(json, '"'), '"');
73+
return trimEdges(json, '"', '"');
7474
}
7575
try {
7676
return Long.valueOf(json);
@@ -89,12 +89,12 @@ private Object parseInternal(int nesting, String json) {
8989

9090
private Map<String, Object> parseMapInternal(int nesting, String json) {
9191
Map<String, Object> map = new LinkedHashMap<>();
92-
json = trimLeadingCharacter(trimTrailingCharacter(json, '}'), '{').trim();
92+
json = trimEdges(json, '{', '}').trim();
9393
for (String pair : tokenize(json)) {
9494
String[] values = StringUtils.trimArrayElements(StringUtils.split(pair, ":"));
9595
Assert.state(values[0].startsWith("\"") && values[0].endsWith("\""),
9696
"Expecting double-quotes around field names");
97-
String key = trimLeadingCharacter(trimTrailingCharacter(values[0], '"'), '"');
97+
String key = trimEdges(values[0], '"', '"');
9898
Object value = parseInternal(nesting, values[1]);
9999
map.put(key, value);
100100
}
@@ -115,6 +115,10 @@ private static String trimLeadingCharacter(String string, char c) {
115115
return string;
116116
}
117117

118+
private static String trimEdges(String string, char leadingChar, char trailingChar) {
119+
return trimTrailingCharacter(trimLeadingCharacter(string, leadingChar), trailingChar);
120+
}
121+
118122
private List<String> tokenize(String json) {
119123
List<String> list = new ArrayList<>();
120124
int index = 0;

0 commit comments

Comments
 (0)