Updated on 2026-08-14
This commit is contained in:
parent
e904e54848
commit
b2fbe74220
14 changed files with 121 additions and 32 deletions
|
|
@ -27,11 +27,7 @@ interface AnalyticsHandler : AnalyticsEventHandler {
|
|||
|
||||
fun id(): String
|
||||
|
||||
fun send(eventId: String, params: Map<String, String> = emptyMap())
|
||||
|
||||
override fun send(event: AnalyticsEvent) {
|
||||
send(event.id, event.params)
|
||||
}
|
||||
override fun send(event: AnalyticsEvent)
|
||||
}
|
||||
|
||||
interface AnalyticsHandlerHolder {
|
||||
|
|
|
|||
|
|
@ -0,0 +1,23 @@
|
|||
package com.tangem.core.analytics.filter
|
||||
|
||||
import com.tangem.core.analytics.api.AnalyticsEventFilter
|
||||
import com.tangem.core.analytics.api.AnalyticsHandler
|
||||
import com.tangem.core.analytics.models.AnalyticsEvent
|
||||
import com.tangem.core.analytics.models.AppsFlyerIncludedEvent
|
||||
import com.tangem.core.analytics.models.AppsFlyerOnlyEvent
|
||||
|
||||
class AppsFlyerEventFilter : AnalyticsEventFilter {
|
||||
|
||||
override fun canBeAppliedTo(event: AnalyticsEvent): Boolean =
|
||||
event is AppsFlyerOnlyEvent || event is AppsFlyerIncludedEvent
|
||||
|
||||
override suspend fun canBeSent(event: AnalyticsEvent): Boolean = true
|
||||
|
||||
override fun canBeConsumedByHandler(handler: AnalyticsHandler, event: AnalyticsEvent): Boolean {
|
||||
return when (event) {
|
||||
is AppsFlyerOnlyEvent -> handler.id() == "AppsFlyer"
|
||||
is AppsFlyerIncludedEvent -> true
|
||||
else -> false
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue