|
20 | 20 | import java.util.HashMap; |
21 | 21 | import java.util.List; |
22 | 22 | import java.util.Map; |
| 23 | +import java.util.StringJoiner; |
23 | 24 | import java.util.stream.Collectors; |
24 | 25 | import java.util.stream.Stream; |
25 | 26 | import software.amazon.awssdk.annotations.SdkInternalApi; |
@@ -114,24 +115,24 @@ public static List<String> findAttributeNames(UpdateExpression updateExpression) |
114 | 115 | private static List<String> groupExpressions(UpdateExpression expression) { |
115 | 116 | List<String> groupExpressions = new ArrayList<>(); |
116 | 117 | if (!expression.setActions().isEmpty()) { |
117 | | - groupExpressions.add(SET + expression.setActions().stream() |
118 | | - .map(a -> a.path() + " = " + a.value()) |
119 | | - .collect(Collectors.joining(ACTION_SEPARATOR))); |
| 118 | + StringJoiner joiner = new StringJoiner(ACTION_SEPARATOR, SET, ""); |
| 119 | + expression.setActions().forEach(a -> joiner.add(a.path() + " = " + a.value())); |
| 120 | + groupExpressions.add(joiner.toString()); |
120 | 121 | } |
121 | 122 | if (!expression.removeActions().isEmpty()) { |
122 | | - groupExpressions.add(REMOVE + expression.removeActions().stream() |
123 | | - .map(RemoveAction::path) |
124 | | - .collect(Collectors.joining(ACTION_SEPARATOR))); |
| 123 | + StringJoiner joiner = new StringJoiner(ACTION_SEPARATOR, REMOVE, ""); |
| 124 | + expression.removeActions().forEach(a -> joiner.add(a.path())); |
| 125 | + groupExpressions.add(joiner.toString()); |
125 | 126 | } |
126 | 127 | if (!expression.deleteActions().isEmpty()) { |
127 | | - groupExpressions.add(DELETE + expression.deleteActions().stream() |
128 | | - .map(a -> a.path() + " " + a.value()) |
129 | | - .collect(Collectors.joining(ACTION_SEPARATOR))); |
| 128 | + StringJoiner joiner = new StringJoiner(ACTION_SEPARATOR, DELETE, ""); |
| 129 | + expression.deleteActions().forEach(a -> joiner.add(a.path() + " " + a.value())); |
| 130 | + groupExpressions.add(joiner.toString()); |
130 | 131 | } |
131 | 132 | if (!expression.addActions().isEmpty()) { |
132 | | - groupExpressions.add(ADD + expression.addActions().stream() |
133 | | - .map(a -> a.path() + " " + a.value()) |
134 | | - .collect(Collectors.joining(ACTION_SEPARATOR))); |
| 133 | + StringJoiner joiner = new StringJoiner(ACTION_SEPARATOR, ADD, ""); |
| 134 | + expression.addActions().forEach(a -> joiner.add(a.path() + " " + a.value())); |
| 135 | + groupExpressions.add(joiner.toString()); |
135 | 136 | } |
136 | 137 | return groupExpressions; |
137 | 138 | } |
|
0 commit comments