diff --git a/app/src/main/java/com/tangem/tap/common/shop/TangemShopService.kt b/app/src/main/java/com/tangem/tap/common/shop/TangemShopService.kt index f5281cc796..6151af3761 100644 --- a/app/src/main/java/com/tangem/tap/common/shop/TangemShopService.kt +++ b/app/src/main/java/com/tangem/tap/common/shop/TangemShopService.kt @@ -4,7 +4,8 @@ import android.app.Application import android.content.Intent import com.google.android.gms.wallet.PaymentData import com.shopify.buy3.Storefront -import com.tangem.tap.common.analytics.AnalyticsHandler +import com.tangem.common.extensions.ifNotNull +import com.tangem.tap.common.analytics.GlobalAnalyticsHandler import com.tangem.tap.common.extensions.filterNotNull import com.tangem.tap.common.shop.data.ProductType import com.tangem.tap.common.shop.data.TangemProduct @@ -195,15 +196,10 @@ class TangemShopService(application: Application, shopifyShop: ShopifyShop) { return checkouts[productType]!!.webUrl } - suspend fun waitForCheckout( - productType: ProductType, - analyticsHandler: AnalyticsHandler? - ) { + suspend fun waitForCheckout(productType: ProductType, analyticsHandler: GlobalAnalyticsHandler?) { val result = shopifyService.checkout(true, checkouts[productType]!!.id) result.onSuccess { - if (it.order != null) { - analyticsHandler?.logShopifyOrder(order = it.order) - } + ifNotNull(analyticsHandler, it.order) { handler, order -> handler.logShopifyOrder(order) } } } diff --git a/app/src/main/java/com/tangem/tap/domain/TangemSdkManager.kt b/app/src/main/java/com/tangem/tap/domain/TangemSdkManager.kt index 34e58f0ba7..43e318bd82 100644 --- a/app/src/main/java/com/tangem/tap/domain/TangemSdkManager.kt +++ b/app/src/main/java/com/tangem/tap/domain/TangemSdkManager.kt @@ -27,8 +27,8 @@ import com.tangem.operations.pins.CheckUserCodesResponse import com.tangem.operations.pins.SetUserCodeCommand import com.tangem.tap.common.analytics.Analytics import com.tangem.tap.common.analytics.AnalyticsEvent -import com.tangem.tap.common.analytics.AnalyticsHandler import com.tangem.tap.common.analytics.AnalyticsParam +import com.tangem.tap.common.analytics.GlobalAnalyticsHandler import com.tangem.tap.domain.tasks.CreateWalletAndRescanTask import com.tangem.tap.domain.tasks.product.ResetToFactorySettingsTask import com.tangem.tap.domain.tasks.product.ScanProductTask @@ -44,7 +44,7 @@ import kotlin.coroutines.suspendCoroutine class TangemSdkManager(private val tangemSdk: TangemSdk, private val context: Context) { suspend fun scanProduct( - analyticsHandler: AnalyticsHandler?, + analyticsHandler: GlobalAnalyticsHandler?, userTokensRepository: UserTokensRepository, additionalBlockchainsToDerive: Collection? = null, messageRes: Int? = null, @@ -69,7 +69,7 @@ class TangemSdkManager(private val tangemSdk: TangemSdk, private val context: Co } private fun sendScanResultsToAnalytics( - analyticsHandler: AnalyticsHandler?, + analyticsHandler: GlobalAnalyticsHandler?, result: CompletionResult ) { when (result) { diff --git a/app/src/main/java/com/tangem/tap/domain/twins/TwinCardsManager.kt b/app/src/main/java/com/tangem/tap/domain/twins/TwinCardsManager.kt index 1d02623442..d4313cf946 100644 --- a/app/src/main/java/com/tangem/tap/domain/twins/TwinCardsManager.kt +++ b/app/src/main/java/com/tangem/tap/domain/twins/TwinCardsManager.kt @@ -15,13 +15,13 @@ import com.tangem.network.common.MoshiConverter import com.tangem.operations.wallet.CreateWalletResponse import com.tangem.tap.common.AssetReader import com.tangem.tap.common.analytics.Analytics -import com.tangem.tap.common.analytics.AnalyticsHandler +import com.tangem.tap.common.analytics.GlobalAnalyticsHandler import com.tangem.tap.tangemSdkManager class TwinCardsManager( private val card: Card, assetReader: AssetReader, - val analyticsHandler: AnalyticsHandler? + val analyticsHandler: GlobalAnalyticsHandler? ) { private val currentCardId: String = card.cardId