@@ -21,10 +21,27 @@ public String serialize(Object obj) {
21
21
return JacksonHelper .serialize (obj );
22
22
}
23
23
24
+ /**
25
+ * De-serialize / parse a json string to a POJO using the internal ObjectMapper.
26
+ *
27
+ * @param str object to serialize
28
+ * @param type class of type to deserialize to
29
+ * @param <T> type parameter
30
+ * @return de-serialized object
31
+ */
24
32
public <T > T deserialize (String str , Class <T > type ) {
25
33
return JacksonHelper .deserialize (str , type );
26
34
}
27
35
36
+ /**
37
+ * Transform an object from one type to another using the internal ObjectMapper. This uses json as the intermediate
38
+ * transformation language / specification.
39
+ *
40
+ * @param obj object to convert
41
+ * @param type class of type to convert to
42
+ * @param <T> type parameter
43
+ * @return converted object
44
+ */
28
45
public <T > T convert (Object obj , Class <T > type ) {
29
46
return JacksonHelper .convert (obj , type );
30
47
}
@@ -40,17 +57,17 @@ public String visualize(TreeNode root) {
40
57
return visualizeTree (root , new StringBuilder (), true , new StringBuilder ()).toString ();
41
58
}
42
59
43
- private StringBuilder visualizeTree (TreeNode node , StringBuilder prefix , boolean isTail , StringBuilder sb ) {
60
+ private StringBuilder visualizeTree (TreeNode node , StringBuilder prefix , boolean isLeft , StringBuilder sb ) {
44
61
if (node == null ) {
45
62
return null ;
46
63
}
47
64
// Recurse right
48
- visualizeTree (node .right , prefix .append (isTail ? "│ " : " " ), false , sb );
65
+ visualizeTree (node .right , prefix .append (isLeft ? "│ " : " " ), false , sb );
49
66
prefix .setLength (prefix .length () - 4 ); // backtrack prefix
50
67
// Print node
51
- sb .append (prefix ).append (isTail ? "└── " : "┌── " ).append (node .val ).append ('\n' );
68
+ sb .append (prefix ).append (isLeft ? "└── " : "┌── " ).append (node .val ).append ('\n' );
52
69
// Recurse left
53
- visualizeTree (node .left , prefix .append (isTail ? " " : "│ " ), true , sb );
70
+ visualizeTree (node .left , prefix .append (isLeft ? " " : "│ " ), true , sb );
54
71
prefix .setLength (prefix .length () - 4 ); // backtrack prefix
55
72
return sb ;
56
73
}
0 commit comments