Skip to content
Snippets Groups Projects
Commit beeb6765 authored by Taras's avatar Taras
Browse files

Update subscription ds

parent d58223a1
No related branches found
No related tags found
No related merge requests found
package org.futo.circles.auth.feature.sign_up.subscription_stage package org.futo.circles.auth.feature.sign_up.subscription_stage
import org.futo.circles.auth.feature.sign_up.SignUpDataSource import org.futo.circles.auth.feature.uia.UIADataSource.Companion.REGISTRATION_SUBSCRIPTION_TYPE
import org.futo.circles.auth.feature.sign_up.SignUpDataSource.Companion.REGISTRATION_SUBSCRIPTION_TYPE import org.futo.circles.auth.feature.uia.UIADataSource.Companion.TYPE_PARAM_KEY
import org.futo.circles.auth.feature.uia.UIADataSourceProvider
import org.futo.circles.auth.model.SubscriptionReceiptData import org.futo.circles.auth.model.SubscriptionReceiptData
import org.futo.circles.core.extensions.Response import org.futo.circles.core.extensions.Response
import org.matrix.android.sdk.api.auth.registration.RegistrationResult import org.matrix.android.sdk.api.auth.registration.RegistrationResult
import org.matrix.android.sdk.api.auth.registration.Stage import org.matrix.android.sdk.api.auth.registration.Stage
import javax.inject.Inject import javax.inject.Inject
class SubscriptionStageDataSource @Inject constructor( class SubscriptionStageDataSource @Inject constructor() {
private val signUpDataSource: SignUpDataSource
) { private val uiaDataSource = UIADataSourceProvider.getDataSourceOrThrow()
suspend fun validateSubscription( suspend fun validateSubscription(
subscriptionReceiptData: SubscriptionReceiptData subscriptionReceiptData: SubscriptionReceiptData
): Response<RegistrationResult> = ): Response<RegistrationResult> =
signUpDataSource.performRegistrationStage( uiaDataSource.performUIAStage(
mapOf( mapOf(
TYPE_PARAM_KEY to REGISTRATION_SUBSCRIPTION_TYPE, TYPE_PARAM_KEY to REGISTRATION_SUBSCRIPTION_TYPE,
ORDER_ID_KEY to subscriptionReceiptData.orderId, ORDER_ID_KEY to subscriptionReceiptData.orderId,
...@@ -25,7 +26,7 @@ class SubscriptionStageDataSource @Inject constructor( ...@@ -25,7 +26,7 @@ class SubscriptionStageDataSource @Inject constructor(
) )
) )
fun getProductIdsList() = ((signUpDataSource.currentStage as? Stage.Other) fun getProductIdsList() = ((uiaDataSource.currentStage as? Stage.Other)
?.params?.get(SUBSCRIPTION_IDS_PARAMS_KEY) as? List<*>) ?.params?.get(SUBSCRIPTION_IDS_PARAMS_KEY) as? List<*>)
?.map { it.toString() } ?.map { it.toString() }
?: emptyList() ?: emptyList()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment