mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-02 12:07:28 +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