This is an automated email from the ASF dual-hosted git repository.

vorburger pushed a commit to branch vorburger-FINERACT-1220_rm-getApiClient
in repository https://gitbox.apache.org/repos/asf/fineract.git

commit b06d765e7e908fc7794003951684f5c69d8e1bd9
Author: Michael Vorburger <[email protected]>
AuthorDate: Tue Oct 20 21:50:02 2020 +0200

    Do not expose getApiClient() in FineractClient (FINERACT-1220)
    
    Because FineractClient is about to not use Swagger's ApiClient anymore.
---
 .../apache/fineract/client/util/FineractClient.java  | 20 +++++++++++++++-----
 .../fineract/client/test/FineractClientTest.java     | 10 +++++++++-
 2 files changed, 24 insertions(+), 6 deletions(-)

diff --git 
a/fineract-client/src/main/java/org/apache/fineract/client/util/FineractClient.java
 
b/fineract-client/src/main/java/org/apache/fineract/client/util/FineractClient.java
index 9f8ef5b..2ff5ded 100644
--- 
a/fineract-client/src/main/java/org/apache/fineract/client/util/FineractClient.java
+++ 
b/fineract-client/src/main/java/org/apache/fineract/client/util/FineractClient.java
@@ -138,7 +138,7 @@ import org.apache.fineract.client.services.UsersApi;
 import org.apache.fineract.client.services.WorkingDaysApi;
 
 /**
- * Fineract Client Java SDK API entry point. This is recommended to be used 
instead of {@link ApiClient}.
+ * Fineract Client Java SDK API entry point. Use this instead of the {@link 
ApiClient}.
  *
  * @author Michael Vorburger.ch
  */
@@ -395,7 +395,7 @@ public final class FineractClient {
         public Builder logging(Level level) {
             HttpLoggingInterceptor logging = new HttpLoggingInterceptor();
             logging.setLevel(level);
-            getApiClient().getOkBuilder().addInterceptor(logging);
+            apiClient.getOkBuilder().addInterceptor(logging);
             return this;
         }
 
@@ -458,13 +458,23 @@ public final class FineractClient {
         }
 
         /**
-         * Obtain the internal Retrofit ApiClient. This method is typically 
not required to be invoked for simple API
+         * Obtain the internal Retrofit Builder. This method is typically not 
required to be invoked for simple API
          * usages, but can be a handy back door for non-trivial advanced 
customizations of the API client.
          *
          * @return the {@link ApiClient} which {@link #build()} will use.
          */
-        public ApiClient getApiClient() {
-            return apiClient;
+        public retrofit2.Retrofit.Builder getRetrofitBuilder() {
+            return apiClient.getAdapterBuilder();
+        }
+
+        /**
+         * Obtain the internal OkHttp Builder. This method is typically not 
required to be invoked for simple API
+         * usages, but can be a handy back door for non-trivial advanced 
customizations of the API client.
+         *
+         * @return the {@link ApiClient} which {@link #build()} will use.
+         */
+        public okhttp3.OkHttpClient.Builder getOkBuilder() {
+            return apiClient.getOkBuilder();
         }
 
         private <T> T has(String propertyName, T value) throws 
IllegalStateException {
diff --git 
a/fineract-client/src/test/java/org/apache/fineract/client/test/FineractClientTest.java
 
b/fineract-client/src/test/java/org/apache/fineract/client/test/FineractClientTest.java
index 9374c62..34e0ed3 100644
--- 
a/fineract-client/src/test/java/org/apache/fineract/client/test/FineractClientTest.java
+++ 
b/fineract-client/src/test/java/org/apache/fineract/client/test/FineractClientTest.java
@@ -54,10 +54,18 @@ public class FineractClientTest {
     }
 
     @Test
+    @Disabled // TODO FINERACT-1220
+    void testOfficesDateFormat() {
+        FineractClient fineract = 
FineractClient.builder().baseURL("https://demo.fineract.dev/fineract-provider/api/v1/";).tenant("default")
+                .basicAuth("mifos", "password").insecure(true).build();
+        ok(fineract.offices.retrieveOffices(true, null, null));
+    }
+
+    @Test
     @Disabled // TODO remove Ignore once 
https://issues.apache.org/jira/browse/FINERACT-1221 is fixed
     void testInvalidOperations() {
         FineractClient.Builder builder = 
FineractClient.builder().baseURL("http://test/";).tenant("default").basicAuth("mifos",
 "password");
-        builder.getApiClient().getAdapterBuilder().validateEagerly(true); // 
see FINERACT-1221
+        builder.getRetrofitBuilder().validateEagerly(true); // see 
FINERACT-1221
         builder.build();
     }
 

Reply via email to