From 69277df89b67d84b89f850a46da515ae3caf331a Mon Sep 17 00:00:00 2001 From: Gilbert Kimutai Date: Wed, 17 Apr 2019 04:27:02 +0300 Subject: [PATCH] Restructured the API classes --- .../main/java/me/gilo/wc/di/AppModule.java | 2 +- .../main/java/me/gilo/woodroid/Builder.java | 39 +++++++++++ .../java/me/gilo/woodroid/Woocommerce.java | 64 +------------------ .../me/gilo/woodroid/data/ApiVersion.java | 22 +++++++ 4 files changed, 65 insertions(+), 62 deletions(-) create mode 100644 woodroid/src/main/java/me/gilo/woodroid/Builder.java create mode 100644 woodroid/src/main/java/me/gilo/woodroid/data/ApiVersion.java diff --git a/app/src/main/java/me/gilo/wc/di/AppModule.java b/app/src/main/java/me/gilo/wc/di/AppModule.java index 07f34d1..f752045 100644 --- a/app/src/main/java/me/gilo/wc/di/AppModule.java +++ b/app/src/main/java/me/gilo/wc/di/AppModule.java @@ -25,7 +25,7 @@ public class AppModule { @Provides @Singleton Woocommerce providesWoocommerce() { - Woocommerce woocommerce = new Woocommerce.Builder() + Woocommerce woocommerce = Woocommerce.Builder() .setSiteUrl("http://157.230.131.179") .setApiVersion(Woocommerce.API_V3) .setConsumerKey("ck_26c61abd7eeff238d87dc56585bf26cb2d1a1ec3") diff --git a/woodroid/src/main/java/me/gilo/woodroid/Builder.java b/woodroid/src/main/java/me/gilo/woodroid/Builder.java new file mode 100644 index 0000000..7ccf855 --- /dev/null +++ b/woodroid/src/main/java/me/gilo/woodroid/Builder.java @@ -0,0 +1,39 @@ +package me.gilo.woodroid; + +import me.gilo.woodroid.data.ApiVersion; + +public class Builder { + private String siteUrl; + private ApiVersion apiVerion; + private String consumerKey; + private String consumerSecret; + + + public Builder() { + } + + public Builder setSiteUrl(String siteUrl) { + this.siteUrl = siteUrl; + return this; + } + + public Builder setApiVersion(ApiVersion apiVerion) { + this.apiVerion = apiVerion; + return this; + } + + public Builder setConsumerKey(String consumerKey) { + this.consumerKey = consumerKey; + return this; + } + + public Builder setConsumerSecret(String consumerSecret) { + this.consumerSecret = consumerSecret; + return this; + } + + + public Woocommerce build() { + return new Woocommerce(siteUrl, apiVerion, consumerKey, consumerSecret); + } +} \ No newline at end of file diff --git a/woodroid/src/main/java/me/gilo/woodroid/Woocommerce.java b/woodroid/src/main/java/me/gilo/woodroid/Woocommerce.java index e09b927..51e0a90 100644 --- a/woodroid/src/main/java/me/gilo/woodroid/Woocommerce.java +++ b/woodroid/src/main/java/me/gilo/woodroid/Woocommerce.java @@ -2,6 +2,7 @@ package me.gilo.woodroid; import android.content.Context; import android.util.Log; +import me.gilo.woodroid.data.ApiVersion; import me.gilo.woodroid.models.PaymentGateway; import me.gilo.woodroid.repo.*; import me.gilo.woodroid.repo.order.OrderNoteRepository; @@ -35,31 +36,12 @@ public class Woocommerce { final SettingsRepository settingsRepository; final ShippingMethodRepository shippingMethodRepository; - - enum ApiVersion { - API_VERSION1{ - @Override - public String toString() { - return "1"; - } - }, - API_VERSION2{ - @Override - public String toString() { - return "2"; - } - }, - API_VERSION3{ - @Override - public String toString() { - return "3"; - } - }, + public static Builder Builder(){ + return new Builder(); } public Woocommerce(String siteUrl, ApiVersion apiVerion, String consumerKey, String consumerSecret) { String baseUrl = siteUrl + "/wp-json/wc/v" + apiVerion + "/"; - String cartBaseUrl = siteUrl + "/wp-json/wc/v" + 2 + "/"; orderNoteRepository = new OrderNoteRepository(baseUrl, consumerKey, consumerSecret); @@ -74,11 +56,8 @@ public class Woocommerce { customerRepository = new CustomerRepository(baseUrl, consumerKey, consumerSecret); orderRepository = new OrderRepository(baseUrl, consumerKey, consumerSecret); productRepository = new ProductRepository(baseUrl, consumerKey, consumerSecret); - reportsRepository = new ReportsRepository(baseUrl, consumerKey, consumerSecret); - cartRepository = new CartRepository(cartBaseUrl, consumerKey, consumerSecret); - reviewRepository = new ReviewRepository(baseUrl, consumerKey, consumerSecret); paymentGatewayRepository = new PaymentGatewayRepository(baseUrl, consumerKey, consumerSecret); settingsRepository = new SettingsRepository(baseUrl, consumerKey, consumerSecret); @@ -86,43 +65,6 @@ public class Woocommerce { } - - public static class Builder { - private String siteUrl; - private ApiVersion apiVerion; - private String consumerKey; - private String consumerSecret; - - - public Builder() { - } - - public Builder setSiteUrl(String siteUrl) { - this.siteUrl = siteUrl; - return this; - } - - public Builder setApiVersion(ApiVersion apiVerion) { - this.apiVerion = apiVerion; - return this; - } - - public Builder setConsumerKey(String consumerKey) { - this.consumerKey = consumerKey; - return this; - } - - public Builder setConsumerSecret(String consumerSecret) { - this.consumerSecret = consumerSecret; - return this; - } - - - public Woocommerce build() { - return new Woocommerce(siteUrl, apiVerion, consumerKey, consumerSecret); - } - } - public OrderNoteRepository OrderNoteRepository() { return orderNoteRepository; } diff --git a/woodroid/src/main/java/me/gilo/woodroid/data/ApiVersion.java b/woodroid/src/main/java/me/gilo/woodroid/data/ApiVersion.java new file mode 100644 index 0000000..7b5c9bd --- /dev/null +++ b/woodroid/src/main/java/me/gilo/woodroid/data/ApiVersion.java @@ -0,0 +1,22 @@ +package me.gilo.woodroid.data; + +public enum ApiVersion { + API_VERSION1{ + @Override + public String toString() { + return "1"; + } + }, + API_VERSION2{ + @Override + public String toString() { + return "2"; + } + }, + API_VERSION3{ + @Override + public String toString() { + return "3"; + } + }, +} \ No newline at end of file