Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.d4rk.androidtutorials.java.ui.screens.support.repository;
package com.d4rk.androidtutorials.java.data.repository;

import android.content.Context;

Expand All @@ -12,6 +12,8 @@
import com.android.billingclient.api.ProductDetails;
import com.android.billingclient.api.QueryProductDetailsParams;
import com.d4rk.androidtutorials.java.data.model.AdLoadParams;
import com.d4rk.androidtutorials.java.data.repository.SupportRepository.BillingFlowLauncher;
import com.d4rk.androidtutorials.java.data.repository.SupportRepository.OnProductDetailsListener;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.MobileAds;

Expand All @@ -21,13 +23,13 @@
import java.util.List;
import java.util.Map;

public class SupportRepository implements com.d4rk.androidtutorials.java.data.repository.SupportRepository {
public class DefaultSupportRepository implements SupportRepository {

private final Context context;
private final Map<String, ProductDetails> productDetailsMap = new HashMap<>();
private BillingClient billingClient;

public SupportRepository(Context context) {
public DefaultSupportRepository(Context context) {
this.context = context.getApplicationContext();
}

Expand Down Expand Up @@ -73,7 +75,7 @@ public void onBillingServiceDisconnected() {
* Query your product details for in-app items.
* Typically called after billing client is connected.
*/
public void queryProductDetails(List<String> productIds, com.d4rk.androidtutorials.java.data.repository.SupportRepository.OnProductDetailsListener listener) {
public void queryProductDetails(List<String> productIds, OnProductDetailsListener listener) {
if (billingClient == null || !billingClient.isReady()) {
return;
}
Expand Down Expand Up @@ -119,7 +121,7 @@ public void queryProductDetails(List<String> productIds, com.d4rk.androidtutoria
/**
* Launch the billing flow for a particular product.
*/
public void initiatePurchase(String productId, com.d4rk.androidtutorials.java.data.repository.SupportRepository.BillingFlowLauncher launcher) {
public void initiatePurchase(String productId, BillingFlowLauncher launcher) {
ProductDetails details = productDetailsMap.get(productId);
if (details != null && billingClient != null && launcher != null) {
// Note: In a real app, you would select a specific offer. For simplicity,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,11 @@
import com.d4rk.androidtutorials.java.data.repository.DefaultHomeRepository;
import com.d4rk.androidtutorials.java.data.repository.DefaultMainRepository;
import com.d4rk.androidtutorials.java.data.repository.DefaultQuizRepository;
import com.d4rk.androidtutorials.java.data.repository.DefaultSupportRepository;
import com.d4rk.androidtutorials.java.data.repository.HomeRepository;
import com.d4rk.androidtutorials.java.data.repository.MainRepository;
import com.d4rk.androidtutorials.java.data.repository.QuizRepository;
import com.d4rk.androidtutorials.java.data.repository.SupportRepository;
import com.d4rk.androidtutorials.java.data.source.DefaultHomeLocalDataSource;
import com.d4rk.androidtutorials.java.data.source.DefaultHomeRemoteDataSource;
import com.d4rk.androidtutorials.java.data.source.DefaultQuizLocalDataSource;
Expand Down Expand Up @@ -46,7 +48,6 @@
import com.d4rk.androidtutorials.java.ui.screens.help.repository.HelpRepository;
import com.d4rk.androidtutorials.java.ui.screens.settings.repository.SettingsRepository;
import com.d4rk.androidtutorials.java.ui.screens.startup.repository.StartupRepository;
import com.d4rk.androidtutorials.java.ui.screens.support.repository.SupportRepository;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
Expand Down Expand Up @@ -228,7 +229,7 @@ public LoadConsentFormUseCase provideLoadConsentFormUseCase(StartupRepository re
@Provides
@Singleton
public SupportRepository provideSupportRepository(Application application) {
return new SupportRepository(application);
return new DefaultSupportRepository(application);
}

@Provides
Expand Down