Skip to content

Commit 1ed2433

Browse files
committed
[feat] Use append method from JsonKeyValuePair
1 parent 050e98a commit 1ed2433

File tree

2 files changed

+11
-22
lines changed

2 files changed

+11
-22
lines changed

src/main/java/net/sf/jsqlparser/expression/JsonFunction.java

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -184,20 +184,7 @@ public StringBuilder appendObject(StringBuilder builder) {
184184
if (i > 0) {
185185
builder.append(", ");
186186
}
187-
if (keyValuePair.isUsingKeyKeyword()
188-
&& keyValuePair.getSeparator() == JsonKeyValuePairSeparator.VALUE) {
189-
builder.append("KEY ");
190-
}
191-
builder.append(keyValuePair.getKey());
192-
193-
if (keyValuePair.getValue() != null) {
194-
builder.append(keyValuePair.getSeparator().getSeparatorString());
195-
builder.append(keyValuePair.getValue());
196-
}
197-
198-
if (keyValuePair.isUsingFormatJson()) {
199-
builder.append(" FORMAT JSON");
200-
}
187+
keyValuePair.append(builder);
201188
i++;
202189
}
203190

src/main/java/net/sf/jsqlparser/expression/JsonKeyValuePair.java

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@ public JsonKeyValuePair(Object key, Object value, boolean usingKeyKeyword,
3939
this.key = Objects.requireNonNull(key, "The KEY of the Pair must not be null");
4040
this.value = value;
4141
this.usingKeyKeyword = usingKeyKeyword;
42-
this.separator = separator;
42+
this.separator =
43+
Objects.requireNonNull(separator, "The KeyValuePairSeparator must not be NULL");
4344
}
4445

4546
public boolean isUsingKeyKeyword() {
@@ -138,13 +139,14 @@ public Object getValue() {
138139
}
139140

140141
public StringBuilder append(StringBuilder builder) {
141-
if (isUsingValueKeyword()) {
142-
if (isUsingKeyKeyword()) {
143-
builder.append("KEY ");
144-
}
145-
builder.append(getKey()).append(" VALUE ").append(getValue());
146-
} else {
147-
builder.append(getKey()).append(":").append(getValue());
142+
if (isUsingKeyKeyword() && getSeparator() == JsonKeyValuePairSeparator.VALUE) {
143+
builder.append("KEY ");
144+
}
145+
builder.append(getKey());
146+
147+
if (getValue() != null) {
148+
builder.append(getSeparator().getSeparatorString());
149+
builder.append(getValue());
148150
}
149151

150152
if (isUsingFormatJson()) {

0 commit comments

Comments
 (0)