From 4606700e042ee95afb042baeb494f5e4acaab04b Mon Sep 17 00:00:00 2001 From: mohitdeuex <105265192+mohitdeuex@users.noreply.github.com> Date: Thu, 30 Jun 2022 18:59:05 +0530 Subject: [PATCH] [Backend][Java SDK] Fix Json Patch issue with HttpURLConnection #5791 (#5795) --- .../openmetadata-java-client/pom.xml | 5 +++++ .../openmetadata/client/gateway/OpenMetadata.java | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/openmetadata-clients/openmetadata-java-client/pom.xml b/openmetadata-clients/openmetadata-java-client/pom.xml index 194ddd6673b..a959b9c1a4c 100644 --- a/openmetadata-clients/openmetadata-java-client/pom.xml +++ b/openmetadata-clients/openmetadata-java-client/pom.xml @@ -69,6 +69,11 @@ msal4j 1.12.0 + + io.github.openfeign + feign-okhttp + 9.7.0 + junit diff --git a/openmetadata-clients/openmetadata-java-client/src/main/java/org/openmetadata/client/gateway/OpenMetadata.java b/openmetadata-clients/openmetadata-java-client/src/main/java/org/openmetadata/client/gateway/OpenMetadata.java index e87f5681d4d..1d56531012e 100644 --- a/openmetadata-clients/openmetadata-java-client/src/main/java/org/openmetadata/client/gateway/OpenMetadata.java +++ b/openmetadata-clients/openmetadata-java-client/src/main/java/org/openmetadata/client/gateway/OpenMetadata.java @@ -14,7 +14,13 @@ package org.openmetadata.client.gateway; import com.fasterxml.jackson.annotation.JsonInclude; +import feign.Feign; import feign.RequestInterceptor; +import feign.form.FormEncoder; +import feign.jackson.JacksonDecoder; +import feign.jackson.JacksonEncoder; +import feign.okhttp.OkHttpClient; +import feign.slf4j.Slf4jLogger; import io.swagger.client.ApiClient; import io.swagger.client.api.CatalogApi; import org.openmetadata.catalog.api.CatalogVersion; @@ -41,6 +47,12 @@ public class OpenMetadata { public OpenMetadata(OpenMetadataServerConnection config) { serverConfig = config; apiClient = new ApiClient(); + Feign.Builder builder = Feign.builder() + .encoder(new FormEncoder(new JacksonEncoder(apiClient.getObjectMapper()))) + .decoder(new JacksonDecoder(apiClient.getObjectMapper())) + .logger(new Slf4jLogger()) + .client(new OkHttpClient()); + apiClient.setFeignBuilder(builder); AuthenticationProviderFactory factory = new AuthenticationProviderFactory(); apiClient.addAuthorization("oauth", factory.getAuthProvider(config)); basePath = config.getHostPort() + "/";