Skip to content

Commit 143bb99

Browse files
committed
group upstream apis into a package in subscription module
1 parent 593f7fa commit 143bb99

11 files changed

Lines changed: 34 additions & 23 deletions

File tree

src/integrationTest/java/com/trynoice/api/subscription/SubscriptionControllerTest.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import com.stripe.exception.StripeException;
66
import com.stripe.model.checkout.Session;
77
import com.trynoice.api.identity.entities.AuthUser;
8-
import com.trynoice.api.subscription.ecb.ForeignExchangeRatesProvider;
98
import com.trynoice.api.subscription.entities.Customer;
109
import com.trynoice.api.subscription.entities.CustomerRepository;
1110
import com.trynoice.api.subscription.entities.GiftCardRepository;
@@ -15,6 +14,9 @@
1514
import com.trynoice.api.subscription.entities.SubscriptionRepository;
1615
import com.trynoice.api.subscription.payload.SubscriptionFlowParams;
1716
import com.trynoice.api.subscription.payload.SubscriptionPlanResponse;
17+
import com.trynoice.api.subscription.upstream.AndroidPublisherApi;
18+
import com.trynoice.api.subscription.upstream.ForeignExchangeRatesProvider;
19+
import com.trynoice.api.subscription.upstream.StripeApi;
1820
import com.trynoice.api.testing.AuthTestUtils;
1921
import lombok.NonNull;
2022
import lombok.val;

src/integrationTest/java/com/trynoice/api/subscription/SubscriptionControllerV2Test.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,15 @@
44
import com.fasterxml.jackson.databind.ObjectMapper;
55
import com.stripe.model.checkout.Session;
66
import com.trynoice.api.identity.entities.AuthUser;
7-
import com.trynoice.api.subscription.ecb.ForeignExchangeRatesProvider;
87
import com.trynoice.api.subscription.entities.CustomerRepository;
98
import com.trynoice.api.subscription.entities.GiftCardRepository;
109
import com.trynoice.api.subscription.entities.Subscription;
1110
import com.trynoice.api.subscription.entities.SubscriptionPlan;
1211
import com.trynoice.api.subscription.entities.SubscriptionPlanRepository;
1312
import com.trynoice.api.subscription.entities.SubscriptionRepository;
1413
import com.trynoice.api.subscription.payload.SubscriptionFlowParams;
14+
import com.trynoice.api.subscription.upstream.ForeignExchangeRatesProvider;
15+
import com.trynoice.api.subscription.upstream.StripeApi;
1516
import com.trynoice.api.testing.AuthTestUtils;
1617
import lombok.NonNull;
1718
import lombok.val;

src/integrationTest/java/com/trynoice/api/subscription/SubscriptionServiceTest.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@
99
import com.trynoice.api.subscription.entities.SubscriptionPlan;
1010
import com.trynoice.api.subscription.entities.SubscriptionRepository;
1111
import com.trynoice.api.subscription.payload.GooglePlayDeveloperNotification;
12-
import com.trynoice.api.subscription.payload.GooglePlaySubscriptionPurchase;
12+
import com.trynoice.api.subscription.upstream.AndroidPublisherApi;
13+
import com.trynoice.api.subscription.upstream.StripeApi;
14+
import com.trynoice.api.subscription.upstream.models.GooglePlaySubscriptionPurchase;
1315
import lombok.NonNull;
1416
import lombok.val;
1517
import org.junit.jupiter.api.Test;

src/main/java/com/trynoice/api/subscription/SubscriptionBeans.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,10 @@
1010
import com.google.cloud.spring.pubsub.integration.inbound.PubSubInboundChannelAdapter;
1111
import com.google.cloud.spring.pubsub.support.converter.JacksonPubSubMessageConverter;
1212
import com.google.cloud.spring.pubsub.support.converter.PubSubMessageConverter;
13-
import com.trynoice.api.subscription.ecb.ForeignExchangeRatesProvider;
1413
import com.trynoice.api.subscription.payload.GooglePlayDeveloperNotification;
14+
import com.trynoice.api.subscription.upstream.AndroidPublisherApi;
15+
import com.trynoice.api.subscription.upstream.ForeignExchangeRatesProvider;
16+
import com.trynoice.api.subscription.upstream.StripeApi;
1517
import lombok.NonNull;
1618
import org.springframework.beans.factory.annotation.Qualifier;
1719
import org.springframework.beans.factory.annotation.Value;

src/main/java/com/trynoice/api/subscription/SubscriptionService.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
import com.stripe.model.checkout.Session;
77
import com.trynoice.api.contracts.AccountServiceContract;
88
import com.trynoice.api.contracts.SubscriptionServiceContract;
9-
import com.trynoice.api.subscription.ecb.ForeignExchangeRatesProvider;
109
import com.trynoice.api.subscription.entities.Customer;
1110
import com.trynoice.api.subscription.entities.CustomerRepository;
1211
import com.trynoice.api.subscription.entities.GiftCard;
@@ -27,12 +26,15 @@
2726
import com.trynoice.api.subscription.exceptions.WebhookPayloadException;
2827
import com.trynoice.api.subscription.payload.GiftCardResponse;
2928
import com.trynoice.api.subscription.payload.GooglePlayDeveloperNotification;
30-
import com.trynoice.api.subscription.payload.GooglePlaySubscriptionPurchase;
3129
import com.trynoice.api.subscription.payload.StripeCustomerPortalUrlResponse;
3230
import com.trynoice.api.subscription.payload.SubscriptionFlowParams;
3331
import com.trynoice.api.subscription.payload.SubscriptionFlowResponseV2;
3432
import com.trynoice.api.subscription.payload.SubscriptionPlanResponse;
3533
import com.trynoice.api.subscription.payload.SubscriptionResponseV2;
34+
import com.trynoice.api.subscription.upstream.AndroidPublisherApi;
35+
import com.trynoice.api.subscription.upstream.ForeignExchangeRatesProvider;
36+
import com.trynoice.api.subscription.upstream.StripeApi;
37+
import com.trynoice.api.subscription.upstream.models.GooglePlaySubscriptionPurchase;
3638
import lombok.NonNull;
3739
import lombok.val;
3840
import org.springframework.beans.factory.annotation.Autowired;

src/main/java/com/trynoice/api/subscription/AndroidPublisherApi.java renamed to src/main/java/com/trynoice/api/subscription/upstream/AndroidPublisherApi.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
package com.trynoice.api.subscription;
1+
package com.trynoice.api.subscription.upstream;
22

33
import com.google.api.client.googleapis.javanet.GoogleNetHttpTransport;
44
import com.google.api.client.json.gson.GsonFactory;
55
import com.google.api.services.androidpublisher.AndroidPublisher;
66
import com.google.api.services.androidpublisher.model.SubscriptionPurchasesAcknowledgeRequest;
77
import com.google.auth.http.HttpCredentialsAdapter;
88
import com.google.auth.oauth2.GoogleCredentials;
9-
import com.trynoice.api.subscription.payload.GooglePlaySubscriptionPurchase;
9+
import com.trynoice.api.subscription.upstream.models.GooglePlaySubscriptionPurchase;
1010
import lombok.NonNull;
1111
import lombok.val;
1212

@@ -40,7 +40,7 @@ public AndroidPublisherApi(
4040
* @see com.google.api.services.androidpublisher.AndroidPublisher.Purchases.Subscriptionsv2#get(String, String)
4141
*/
4242
@NonNull
43-
GooglePlaySubscriptionPurchase getSubscriptionPurchase(@NonNull String purchaseToken) throws IOException {
43+
public GooglePlaySubscriptionPurchase getSubscriptionPurchase(@NonNull String purchaseToken) throws IOException {
4444
return new GooglePlaySubscriptionPurchase(
4545
client.purchases()
4646
.subscriptionsv2()
@@ -52,7 +52,7 @@ GooglePlaySubscriptionPurchase getSubscriptionPurchase(@NonNull String purchaseT
5252
* @see com.google.api.services.androidpublisher.AndroidPublisher.Purchases.Subscriptions#acknowledge(
5353
*String, String, String, SubscriptionPurchasesAcknowledgeRequest)
5454
*/
55-
void acknowledgePurchase(@NonNull String productId, @NonNull String purchaseToken) throws IOException {
55+
public void acknowledgePurchase(@NonNull String productId, @NonNull String purchaseToken) throws IOException {
5656
client.purchases()
5757
.subscriptions()
5858
.acknowledge(clientAppId, productId, purchaseToken, new SubscriptionPurchasesAcknowledgeRequest())
@@ -65,7 +65,7 @@ void acknowledgePurchase(@NonNull String productId, @NonNull String purchaseToke
6565
* @see com.google.api.services.androidpublisher.AndroidPublisher.Purchases.Subscriptions#cancel(String, String, String)
6666
* @see <a href="https://developer.android.com/google/play/billing/subscriptions#cancel">Cancellations</a>
6767
*/
68-
void cancelSubscription(@NonNull String purchaseToken) throws IOException {
68+
public void cancelSubscription(@NonNull String purchaseToken) throws IOException {
6969
val purchase = getSubscriptionPurchase(purchaseToken);
7070
if ("SUBSCRIPTION_STATE_CANCELED".equals(purchase.getSubscriptionState())) {
7171
// subscription is already cancelled.

src/main/java/com/trynoice/api/subscription/ecb/ForeignExchangeRatesProvider.java renamed to src/main/java/com/trynoice/api/subscription/upstream/ForeignExchangeRatesProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.trynoice.api.subscription.ecb;
1+
package com.trynoice.api.subscription.upstream;
22

33
import lombok.NonNull;
44
import lombok.val;

src/main/java/com/trynoice/api/subscription/StripeApi.java renamed to src/main/java/com/trynoice/api/subscription/upstream/StripeApi.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.trynoice.api.subscription;
1+
package com.trynoice.api.subscription.upstream;
22

33

44
import com.stripe.Stripe;
@@ -53,7 +53,7 @@ public StripeApi(@NonNull String apiKey) {
5353
* @throws StripeException on api call error
5454
*/
5555
@NonNull
56-
Session createCheckoutSession(
56+
public Session createCheckoutSession(
5757
@NonNull String successUrl,
5858
@NonNull String cancelUrl,
5959
@NonNull String priceId,
@@ -86,7 +86,7 @@ Session createCheckoutSession(
8686
* @see Webhook#constructEvent(String, String, String)
8787
*/
8888
@NonNull
89-
Event decodeWebhookPayload(
89+
public Event decodeWebhookPayload(
9090
@NonNull String payload,
9191
@NonNull String signature,
9292
@NonNull String secret
@@ -98,7 +98,7 @@ Event decodeWebhookPayload(
9898
* @see Subscription#retrieve(String)
9999
*/
100100
@NonNull
101-
Subscription getSubscription(@NonNull String id) throws StripeException {
101+
public Subscription getSubscription(@NonNull String id) throws StripeException {
102102
return Subscription.retrieve(id);
103103
}
104104

@@ -110,7 +110,7 @@ Subscription getSubscription(@NonNull String id) throws StripeException {
110110
* @see Subscription#update(SubscriptionUpdateParams)
111111
* @see Subscription#cancel(SubscriptionCancelParams)
112112
*/
113-
void cancelSubscription(@NonNull String id) throws StripeException {
113+
public void cancelSubscription(@NonNull String id) throws StripeException {
114114
val subscription = getSubscription(id);
115115
if ("canceled".equals(subscription.getStatus())) {
116116
return;
@@ -130,7 +130,7 @@ void cancelSubscription(@NonNull String id) throws StripeException {
130130
* @param id id of the stripe subscription.
131131
* @throws StripeException on Stripe API errors.
132132
*/
133-
void refundSubscription(@NonNull String id) throws StripeException {
133+
public void refundSubscription(@NonNull String id) throws StripeException {
134134
val subscription = Subscription.retrieve(
135135
id,
136136
SubscriptionRetrieveParams.builder()
@@ -156,7 +156,7 @@ void refundSubscription(@NonNull String id) throws StripeException {
156156
* @see com.stripe.model.billingportal.Session#create(com.stripe.param.billingportal.SessionCreateParams)
157157
*/
158158
@NonNull
159-
com.stripe.model.billingportal.Session createCustomerPortalSession(
159+
public com.stripe.model.billingportal.Session createCustomerPortalSession(
160160
@NonNull String customerId,
161161
String returnUrl
162162
) throws StripeException {
@@ -174,7 +174,7 @@ com.stripe.model.billingportal.Session createCustomerPortalSession(
174174
* @param customerId a not {@literal null} customer id recognised by Stripe API.
175175
* @throws StripeException on upstream errors.
176176
*/
177-
void resetCustomerNameAndEmail(@NonNull String customerId) throws StripeException {
177+
public void resetCustomerNameAndEmail(@NonNull String customerId) throws StripeException {
178178
Customer.retrieve(customerId).update(
179179
CustomerUpdateParams.builder()
180180
.setName(EmptyParam.EMPTY)

src/main/java/com/trynoice/api/subscription/payload/GooglePlaySubscriptionPurchase.java renamed to src/main/java/com/trynoice/api/subscription/upstream/models/GooglePlaySubscriptionPurchase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.trynoice.api.subscription.payload;
1+
package com.trynoice.api.subscription.upstream.models;
22

33
import com.google.api.client.util.DateTime;
44
import com.google.api.services.androidpublisher.model.SubscriptionPurchaseLineItem;

src/test/java/com/trynoice/api/subscription/SubscriptionServiceTest.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import com.stripe.exception.StripeException;
55
import com.stripe.model.checkout.Session;
66
import com.trynoice.api.contracts.AccountServiceContract;
7-
import com.trynoice.api.subscription.ecb.ForeignExchangeRatesProvider;
87
import com.trynoice.api.subscription.entities.Customer;
98
import com.trynoice.api.subscription.entities.CustomerRepository;
109
import com.trynoice.api.subscription.entities.GiftCard;
@@ -22,6 +21,9 @@
2221
import com.trynoice.api.subscription.exceptions.SubscriptionPlanNotFoundException;
2322
import com.trynoice.api.subscription.exceptions.UnsupportedSubscriptionPlanProviderException;
2423
import com.trynoice.api.subscription.payload.SubscriptionFlowParams;
24+
import com.trynoice.api.subscription.upstream.AndroidPublisherApi;
25+
import com.trynoice.api.subscription.upstream.ForeignExchangeRatesProvider;
26+
import com.trynoice.api.subscription.upstream.StripeApi;
2527
import lombok.NonNull;
2628
import lombok.val;
2729
import org.junit.jupiter.api.BeforeEach;

0 commit comments

Comments
 (0)