From 68917838a4a850b6c4fe834e0650429ee08dd3c0 Mon Sep 17 00:00:00 2001 From: Tangem Date: Wed, 10 Oct 2018 21:00:25 +0300 Subject: [PATCH] Updated on 2026-08-14 --- app/build.gradle | 6 +++ app/src/main/AndroidManifest.xml | 2 +- .../tangem/{AppController.java => App.java} | 19 +++++++-- .../tangem/data/network/ServerApiHelper.java | 15 ++----- .../main/java/com/tangem/di/AppComponent.java | 18 +++++++++ .../java/com/tangem/di/NetworkModule.java | 39 +++++++++++++++++++ .../activity/LoadedWalletActivity.kt | 10 +---- 7 files changed, 84 insertions(+), 25 deletions(-) rename app/src/main/java/com/tangem/{AppController.java => App.java} (57%) create mode 100644 app/src/main/java/com/tangem/di/AppComponent.java create mode 100644 app/src/main/java/com/tangem/di/NetworkModule.java diff --git a/app/build.gradle b/app/build.gradle index a5d0b7aa22..9827f25411 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -68,4 +68,10 @@ dependencies { implementation 'io.reactivex.rxjava2:rxjava:2.2.0' implementation 'io.reactivex.rxjava2:rxandroid:2.0.1' implementation 'io.reactivex.rxjava2:rxkotlin:2.3.0' + + implementation 'com.google.dagger:dagger:2.16' + annotationProcessor 'com.google.dagger:dagger-compiler:2.16' +// implementation 'com.google.dagger:dagger-android:2.16' +// implementation 'com.google.dagger:dagger-android-support:2.16' // if you use the support libraries +// annotationProcessor 'com.google.dagger:dagger-android-processor:2.16' } \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index c154bdefa1..3fda44ad52 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -16,7 +16,7 @@ call; switch (blockCount) { @@ -136,12 +132,7 @@ public class ServerApiHelper { } public void infura(String method, int id, String wallet, String contract, String tx) { - Retrofit retrofit = new Retrofit.Builder() - .baseUrl(Server.ApiInfura.URL_INFURA) - .addConverterFactory(GsonConverterFactory.create()) - .build(); - - InfuraApi infuraApi = retrofit.create(InfuraApi.class); + InfuraApi infuraApi = App.getComponent().getRetrofitInfura().create(InfuraApi.class); InfuraBody infuraBody; switch (method) { diff --git a/app/src/main/java/com/tangem/di/AppComponent.java b/app/src/main/java/com/tangem/di/AppComponent.java new file mode 100644 index 0000000000..11c51d05e1 --- /dev/null +++ b/app/src/main/java/com/tangem/di/AppComponent.java @@ -0,0 +1,18 @@ +package com.tangem.di; + +import javax.inject.Named; +import javax.inject.Singleton; + +import dagger.Component; +import retrofit2.Retrofit; + +@Singleton +@Component(modules = {NetworkModule.class}) +public interface AppComponent { + + @Named(NetworkModule.PROVIDE_RETROFIT_INFURA) + Retrofit getRetrofitInfura(); + + @Named(NetworkModule.PROVIDE_RETROFIT_ESTIMATEFEE) + Retrofit getRetrofitEstimatefee(); +} \ No newline at end of file diff --git a/app/src/main/java/com/tangem/di/NetworkModule.java b/app/src/main/java/com/tangem/di/NetworkModule.java new file mode 100644 index 0000000000..92c7b9bcad --- /dev/null +++ b/app/src/main/java/com/tangem/di/NetworkModule.java @@ -0,0 +1,39 @@ +package com.tangem.di; + +import com.tangem.data.network.Server; + +import javax.inject.Named; +import javax.inject.Singleton; + +import dagger.Module; +import dagger.Provides; +import retrofit2.Retrofit; +import retrofit2.converter.gson.GsonConverterFactory; + +@Module +class NetworkModule { + + final static String PROVIDE_RETROFIT_INFURA = "provideRetrofitInfura"; + final static String PROVIDE_RETROFIT_ESTIMATEFEE = "provideRetrofitEstimatefee"; + + @Singleton + @Provides + @Named(PROVIDE_RETROFIT_INFURA) + Retrofit provideRetrofitInfura() { + return new Retrofit.Builder() + .baseUrl(Server.ApiInfura.URL_INFURA) + .addConverterFactory(GsonConverterFactory.create()) + .build(); + } + + @Singleton + @Provides + @Named(PROVIDE_RETROFIT_ESTIMATEFEE) + Retrofit provideRetrofitEstimatefee() { + return new Retrofit.Builder() + .baseUrl(Server.ApiEstimatefee.URL_ESTIMATEFEE) + .addConverterFactory(GsonConverterFactory.create()) + .build(); + } + +} \ No newline at end of file diff --git a/app/src/main/java/com/tangem/presentation/activity/LoadedWalletActivity.kt b/app/src/main/java/com/tangem/presentation/activity/LoadedWalletActivity.kt index 84055cfa7d..be7cc14bd6 100644 --- a/app/src/main/java/com/tangem/presentation/activity/LoadedWalletActivity.kt +++ b/app/src/main/java/com/tangem/presentation/activity/LoadedWalletActivity.kt @@ -4,8 +4,10 @@ import android.nfc.NfcAdapter import android.nfc.Tag import android.os.Bundle import android.support.v7.app.AppCompatActivity +import com.tangem.App import com.tangem.presentation.fragment.LoadedWallet import com.tangem.wallet.R +import retrofit2.Retrofit class LoadedWalletActivity : AppCompatActivity() { @@ -28,12 +30,4 @@ class LoadedWalletActivity : AppCompatActivity() { } } -// override fun onBackPressed() { -// val loadedWallet = supportFragmentManager.findFragmentById(R.id.loaded_wallet_fragment) as LoadedWallet -// val data = loadedWallet.prepareResultIntent() -// data.putExtra(EXTRA_MODIFICATION, "update") -// setResult(Activity.RESULT_OK, data) -// finish() -// } - } \ No newline at end of file