Skip to content

Commit 679ba10

Browse files
Live Preview
1 parent a5eb034 commit 679ba10

File tree

6 files changed

+36
-24
lines changed

6 files changed

+36
-24
lines changed

pom.xml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
2+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
34

45
<modelVersion>4.0.0</modelVersion>
56
<groupId>com.contentstack.sdk</groupId>
@@ -26,9 +27,9 @@
2627
<loggin.version>4.10.0</loggin.version>
2728
<jococo-plugin.version>0.8.5</jococo-plugin.version>
2829
<lombok-source.version>1.18.24</lombok-source.version>
29-
<junit-jupiter.version>5.9.0</junit-jupiter.version>
30+
<junit-jupiter.version>5.9.1</junit-jupiter.version>
3031
<junit-jupiter-engine.version>5.8.0-M1</junit-jupiter-engine.version>
31-
<junit-vintage-engine.version>5.9.0</junit-vintage-engine.version>
32+
<junit-vintage-engine.version>5.9.1</junit-vintage-engine.version>
3233
<gson.version>2.8.8</gson.version>
3334
<json-simple-version>1.1.1</json-simple-version>
3435
<maven-site-plugin.version>3.3</maven-site-plugin.version>

src/main/java/com/contentstack/sdk/CSHttpConnection.java

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -218,17 +218,29 @@ void handleJSONObject(JSONArray arrayEntry, JSONObject jsonObj, int idx) {
218218
if (!jsonObj.isEmpty()) {
219219
if (jsonObj.has("uid") && jsonObj.opt("uid").equals(this.config.livePreviewEntry.opt("uid"))) {
220220
arrayEntry.put(idx, this.config.livePreviewEntry);
221-
} else {
222-
Iterator<String> unmachedKeys = jsonObj.keys();
223-
unmachedKeys.forEachRemaining(key -> {
224-
JSONObject jsonBYKey = (JSONObject) jsonObj.opt(key);
225-
handleJSONObject(arrayEntry, jsonBYKey, idx);
226-
});
227221
}
228222
}
229223
responseJSON = new JSONObject().put("entries", arrayEntry);
230224
}
231225

226+
private void deepMergeElse(JSONArray arrayEntry, JSONObject jsonObj, int idx) {
227+
228+
do {
229+
String k = jsonObj.keySet().iterator().next();
230+
if (jsonObj.opt(k) instanceof JSONArray) {
231+
JSONArray subArray = (JSONArray) jsonObj.opt(k);
232+
IntStream.range(0, subArray.length()).forEach(pos -> {
233+
JSONObject objJSON = (JSONObject) subArray.get(pos);
234+
handleJSONObject(subArray, objJSON, pos);
235+
});
236+
}
237+
if (jsonObj.opt(k) instanceof JSONObject) {
238+
handleJSONObject(arrayEntry, ((JSONObject) jsonObj.opt(k)), idx);
239+
}
240+
} while (jsonObj.keySet().iterator().hasNext());
241+
}
242+
243+
232244
void setError(String errResp) {
233245
logger.info(errResp);
234246
responseJSON = new JSONObject(errResp); // Parse error string to JSONObject

src/test/java/com/contentstack/sdk/TestConfig.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@ void testsSetProxy() {
4343
void testsConnectionPool() {
4444
ConnectionPool pool = config.connectionPool;
4545
pool.connectionCount();
46-
pool.idleConnectionCount();;
46+
pool.idleConnectionCount();
47+
;
4748
Assertions.assertNotNull(pool);
4849
}
4950

src/test/java/com/contentstack/sdk/TestContentType.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
import org.json.JSONObject;
66
import org.junit.jupiter.api.*;
77

8-
import java.util.HashMap;
9-
import java.util.Map;
108
import java.util.logging.Logger;
119

1210
@TestInstance(TestInstance.Lifecycle.PER_CLASS)

src/test/java/com/contentstack/sdk/TestEntry.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -393,7 +393,7 @@ void entryGetAsset() {
393393
@Test
394394
@Order(42)
395395
void entryExcept() {
396-
String[] arrField = { "fieldOne", "fieldTwo", "fieldThree" };
396+
String[] arrField = {"fieldOne", "fieldTwo", "fieldThree"};
397397
Entry initEntry = stack.contentType("product").entry(entryUid);
398398
initEntry.except(arrField);
399399
Assertions.assertEquals(3, initEntry.exceptFieldArray.length());
@@ -413,7 +413,7 @@ void entryIncludeReference() {
413413
@Test
414414
@Order(44)
415415
void entryIncludeReferenceList() {
416-
String[] arrField = { "fieldOne", "fieldTwo", "fieldThree" };
416+
String[] arrField = {"fieldOne", "fieldTwo", "fieldThree"};
417417
Entry initEntry = stack.contentType("product").entry(entryUid);
418418
initEntry.includeReference(arrField);
419419
Assertions.assertEquals(3, initEntry.referenceArray.length());
@@ -424,7 +424,7 @@ void entryIncludeReferenceList() {
424424
@Test
425425
@Order(45)
426426
void entryOnlyList() {
427-
String[] arrField = { "fieldOne", "fieldTwo", "fieldThree" };
427+
String[] arrField = {"fieldOne", "fieldTwo", "fieldThree"};
428428
Entry initEntry = stack.contentType("product").entry(entryUid);
429429
initEntry.only(arrField);
430430
Assertions.assertEquals(3, initEntry.objectUidForOnly.length());

src/test/java/com/contentstack/sdk/TestQueryCase.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ public void onCompletion(ResponseType responseType, QueryResult queryresult, Err
133133
@Test
134134
@Order(5)
135135
void testNotContainedInField() {
136-
String[] containArray = new String[] { "Roti Maker", "kids dress" };
136+
String[] containArray = new String[]{"Roti Maker", "kids dress"};
137137
query.notContainedIn("title", containArray);
138138
query.find(new QueryResultsCallBack() {
139139
@Override
@@ -151,7 +151,7 @@ public void onCompletion(ResponseType responseType, QueryResult queryresult, Err
151151
@Test
152152
@Order(6)
153153
void testContainedInField() {
154-
String[] containArray = new String[] { "Roti Maker", "kids dress" };
154+
String[] containArray = new String[]{"Roti Maker", "kids dress"};
155155
query.containedIn("title", containArray);
156156
query.find(new QueryResultsCallBack() {
157157
@Override
@@ -262,7 +262,7 @@ void testEntriesWithOr() {
262262
query.lessThan("price", 90);
263263

264264
Query subQuery = ct.query();
265-
subQuery.containedIn("discount", new Integer[] { 20, 45 });
265+
subQuery.containedIn("discount", new Integer[]{20, 45});
266266

267267
ArrayList<Query> array = new ArrayList<>();
268268
array.add(query);
@@ -294,7 +294,7 @@ void testEntriesWithAnd() {
294294
query.lessThan("price", 90);
295295

296296
Query subQuery = ct.query();
297-
subQuery.containedIn("discount", new Integer[] { 20, 45 });
297+
subQuery.containedIn("discount", new Integer[]{20, 45});
298298

299299
ArrayList<Query> array = new ArrayList<>();
300300
array.add(query);
@@ -404,7 +404,7 @@ public void onCompletion(ResponseType responseType, QueryResult queryresult, Err
404404
String previous = entries.get(i).getTitle(); // get first string
405405
String next = entries.get(i + 1).getTitle(); // get second string
406406
if (previous.compareTo(next) < 0) { // compare both if less than Zero then Ascending else
407-
// descending
407+
// descending
408408
Assertions.assertTrue(true);
409409
} else {
410410
Assertions.fail("expected descending, found ascending");
@@ -430,7 +430,7 @@ public void onCompletion(ResponseType responseType, QueryResult queryresult, Err
430430
String previous = entries.get(i).getTitle(); // get first string
431431
String next = entries.get(i + 1).getTitle(); // get second string
432432
if (previous.compareTo(next) < 0) { // compare both if less than Zero then Ascending else
433-
// descending
433+
// descending
434434
Assertions.fail("expected descending, found ascending");
435435
} else {
436436
Assertions.assertTrue(true);
@@ -480,7 +480,7 @@ public void onCompletion(ResponseType responseType, QueryResult queryresult, Err
480480
@Test
481481
@Order(22)
482482
void testOnly() {
483-
query.only(new String[] { "price" });
483+
query.only(new String[]{"price"});
484484
query.find(new QueryResultsCallBack() {
485485
@Override
486486
public void onCompletion(ResponseType responseType, QueryResult queryresult, Error error) {
@@ -497,7 +497,7 @@ public void onCompletion(ResponseType responseType, QueryResult queryresult, Err
497497
@Test
498498
@Order(23)
499499
void testExcept() {
500-
query.except(new String[] { "price" });
500+
query.except(new String[]{"price"});
501501
query.find(new QueryResultsCallBack() {
502502
@Override
503503
public void onCompletion(ResponseType responseType, QueryResult queryresult, Error error) {
@@ -612,7 +612,7 @@ public void onCompletion(ResponseType responseType, QueryResult queryresult, Err
612612
@Test
613613
@Order(28)
614614
void testTags() {
615-
query.tags(new String[] { "pink" });
615+
query.tags(new String[]{"pink"});
616616
query.find(new QueryResultsCallBack() {
617617
@Override
618618
public void onCompletion(ResponseType responseType, QueryResult queryresult, Error error) {

0 commit comments

Comments
 (0)