mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-02 21:32:34 +00:00
Add a session-scoped WellknownRetriever provider so we don't have to build it every time there
This commit is contained in:
committed by
Jorge Martin Espinosa
parent
ec0819ad07
commit
b9afbf0692
+41
@@ -0,0 +1,41 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2026 Element Creations Ltd.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
|
||||||
|
* Please see LICENSE files in the repository root for full details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.element.android.libraries.wellknown.impl
|
||||||
|
|
||||||
|
import dev.zacsweers.metro.BindingContainer
|
||||||
|
import dev.zacsweers.metro.ContributesTo
|
||||||
|
import dev.zacsweers.metro.Provides
|
||||||
|
import io.element.android.features.enterprise.api.EnterpriseService
|
||||||
|
import io.element.android.libraries.di.SessionScope
|
||||||
|
import io.element.android.libraries.di.annotations.SessionCoroutineScope
|
||||||
|
import io.element.android.libraries.matrix.api.GetUrlResolver
|
||||||
|
import io.element.android.libraries.wellknown.api.ElementWellKnownParser
|
||||||
|
import io.element.android.libraries.wellknown.api.ElementWellknownStore
|
||||||
|
import io.element.android.libraries.wellknown.api.WellknownRetriever
|
||||||
|
import kotlinx.coroutines.CoroutineScope
|
||||||
|
|
||||||
|
@BindingContainer
|
||||||
|
@ContributesTo(SessionScope::class)
|
||||||
|
object SessionWellknownModule {
|
||||||
|
@Provides
|
||||||
|
fun provideWellKnownRetriever(
|
||||||
|
elementWellknownStoreFactory: ElementWellknownStore.Factory,
|
||||||
|
enterpriseService: EnterpriseService,
|
||||||
|
elementWellKnownParser: ElementWellKnownParser,
|
||||||
|
getUrlResolver: GetUrlResolver,
|
||||||
|
@SessionCoroutineScope coroutineScope: CoroutineScope,
|
||||||
|
): WellknownRetriever {
|
||||||
|
return DefaultWellknownRetriever(
|
||||||
|
elementWellknownStoreFactory = elementWellknownStoreFactory,
|
||||||
|
enterpriseService = enterpriseService,
|
||||||
|
elementWellKnownParser = elementWellKnownParser,
|
||||||
|
getUrlResolver = getUrlResolver,
|
||||||
|
coroutineScope = coroutineScope
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user