Skip to content

Commit e25fa2b

Browse files
committed
More explicit class test, add tests
1 parent fd5ecaf commit e25fa2b

File tree

2 files changed

+13
-3
lines changed

2 files changed

+13
-3
lines changed

java-client/src/main/java/co/elastic/clients/json/JsonpUtils.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,11 +70,11 @@ public static void setProvider(JsonProvider provider) {
7070
static JsonProvider findProvider() {
7171
try {
7272
// Default to Jackson
73+
Class.forName("com.fasterxml.jackson.databind.ObjectMapper");
7374
return new JacksonJsonProvider();
74-
} catch (NoClassDefFoundError e) {
75-
// Ignore
75+
} catch (ClassNotFoundException e) {
76+
return findSystemProvider();
7677
}
77-
return findSystemProvider();
7878
}
7979

8080
/**

java-client/src/test/java/co/elastic/clients/json/JsonpUtilsTest.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
package co.elastic.clients.json;
2121

2222
import co.elastic.clients.elasticsearch.core.search.Hit;
23+
import co.elastic.clients.json.jackson.JacksonJsonProvider;
2324
import co.elastic.clients.testkit.ModelTestCase;
2425
import co.elastic.clients.elasticsearch.security.IndexPrivilege;
2526
import co.elastic.clients.elasticsearch.security.IndicesPrivileges;
@@ -84,6 +85,15 @@ public void testObjectToString() {
8485
assertEquals("Hit: {\"_index\":\"idx\",\"_id\":\"id1\",\"_source\":\"Some user data\"}", hit.toString());
8586
}
8687

88+
@Test
89+
public void testDefaultProvider() {
90+
// Provider defaults to Jackson
91+
assertTrue(JsonpUtils.provider() instanceof JacksonJsonProvider);
92+
93+
// System provider uses service lookup
94+
assertFalse(JsonpUtils.systemProvider() instanceof JacksonJsonProvider);
95+
}
96+
8797
private static class SomeUserData {
8898
@Override
8999
public String toString() {

0 commit comments

Comments
 (0)