Skip to content

Commit 20667c5

Browse files
committed
Add method U.replaceSelfClosingWithNull(map).
1 parent 1230054 commit 20667c5

File tree

2 files changed

+9
-13
lines changed

2 files changed

+9
-13
lines changed

src/main/java/com/github/underscore/lodash/U.java

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2055,7 +2055,7 @@ public static String xmlToJson(String xml, Json.JsonStringBuilder.Step identStep
20552055
Object result = Xml.fromXml(xml);
20562056
if (result instanceof Map) {
20572057
return Json.toJson(mode == Mode.REPLACE_SELF_CLOSING_WITH_NULL ?
2058-
replaceSelfCloseWithNull((Map) result) : (Map) result, identStep);
2058+
replaceSelfClosingWithNull((Map) result) : (Map) result, identStep);
20592059
}
20602060
return Json.toJson((List) result, identStep);
20612061
}
@@ -2084,12 +2084,8 @@ public static String formatXml(String xml) {
20842084
return Xml.formatXml(xml);
20852085
}
20862086

2087-
public static Map<String, Object> removeMinusesAndConvertNumbers(Map<String, Object> inMap) {
2088-
return replaceKeys(inMap);
2089-
}
2090-
20912087
@SuppressWarnings("unchecked")
2092-
private static Map<String, Object> replaceKeys(Map<String, Object> map) {
2088+
public static Map<String, Object> removeMinusesAndConvertNumbers(Map<String, Object> map) {
20932089
Map<String, Object> outMap = newLinkedHashMap();
20942090
for (String key : map.keySet()) {
20952091
final String newKey;
@@ -2111,11 +2107,11 @@ private static Object makeObject(Object value) {
21112107
if (value instanceof List) {
21122108
List<Object> values = newArrayList();
21132109
for (Object item : (List) value) {
2114-
values.add(item instanceof Map ? replaceKeys((Map<String, Object>) item) : item);
2110+
values.add(item instanceof Map ? removeMinusesAndConvertNumbers((Map<String, Object>) item) : item);
21152111
}
21162112
result = values;
21172113
} else if (value instanceof Map) {
2118-
result = replaceKeys((Map<String, Object>) value);
2114+
result = removeMinusesAndConvertNumbers((Map<String, Object>) value);
21192115
} else {
21202116
String stringValue = String.valueOf(value);
21212117
result = stringValue.matches("^-?\\d*([.eE])?\\d+$") ? Xml.stringToNumber(stringValue) : value;
@@ -2124,7 +2120,7 @@ private static Object makeObject(Object value) {
21242120
}
21252121

21262122
@SuppressWarnings("unchecked")
2127-
static Map<String, Object> replaceSelfCloseWithNull(Map map) {
2123+
public static Map<String, Object> replaceSelfClosingWithNull(Map map) {
21282124
Map<String, Object> outMap = newLinkedHashMap();
21292125
for (Iterator it = map.entrySet().iterator(); it.hasNext(); ) {
21302126
Map.Entry entry = (Map.Entry) it.next();
@@ -2146,11 +2142,11 @@ private static Object makeObjectSelfClose(Object value) {
21462142
if (value instanceof List) {
21472143
List<Object> values = newArrayList();
21482144
for (Object item : (List) value) {
2149-
values.add(item instanceof Map ? replaceSelfCloseWithNull((Map) item) : item);
2145+
values.add(item instanceof Map ? replaceSelfClosingWithNull((Map) item) : item);
21502146
}
21512147
result = values;
21522148
} else if (value instanceof Map) {
2153-
result = replaceSelfCloseWithNull((Map) value);
2149+
result = replaceSelfClosingWithNull((Map) value);
21542150
} else {
21552151
result = value;
21562152
}

src/test/java/com/github/underscore/lodash/LodashTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -642,12 +642,12 @@ public void xmlToJson() {
642642
U.xmlToJson("<a><b/><b/></a>", U.Mode.REPLACE_SELF_CLOSING_WITH_NULL));
643643
Map<String, Object> map = U.newLinkedHashMap();
644644
map.put("-self-closing", "false");
645-
U.replaceSelfCloseWithNull(map);
645+
U.replaceSelfClosingWithNull(map);
646646
Map<String, Object> map2 = U.newLinkedHashMap();
647647
List<Object> list = U.newArrayList();
648648
list.add(U.newArrayList());
649649
map2.put("list", list);
650-
U.replaceSelfCloseWithNull(map2);
650+
U.replaceSelfClosingWithNull(map2);
651651
}
652652

653653
@Test

0 commit comments

Comments
 (0)