mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2025-10-10 23:24:35 +02:00
Uses a separate okhttp for DM relays
This commit is contained in:
@@ -102,13 +102,27 @@ class Amethyst : Application() {
|
|||||||
scope = applicationIOScope,
|
scope = applicationIOScope,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// manages all relay connections
|
||||||
|
val okHttpClientForRelaysForDms =
|
||||||
|
DualHttpClientManager(
|
||||||
|
userAgent = appAgent,
|
||||||
|
proxyPortProvider = torManager.activePortOrNull,
|
||||||
|
isMobileDataProvider = connManager.isMobileOrNull,
|
||||||
|
keyCache = keyCache,
|
||||||
|
scope = applicationIOScope,
|
||||||
|
)
|
||||||
|
|
||||||
val torProxySettingsAnchor = ProxySettingsAnchor()
|
val torProxySettingsAnchor = ProxySettingsAnchor()
|
||||||
|
|
||||||
// Connects the NostrClient class with okHttp
|
// Connects the NostrClient class with okHttp
|
||||||
val websocketBuilder =
|
val websocketBuilder =
|
||||||
OkHttpWebSocket.Builder { url ->
|
OkHttpWebSocket.Builder { url ->
|
||||||
|
if (torProxySettingsAnchor.isDM(url)) {
|
||||||
|
okHttpClientForRelaysForDms.getHttpClient(torProxySettingsAnchor.useProxy(url))
|
||||||
|
} else {
|
||||||
okHttpClientForRelays.getHttpClient(torProxySettingsAnchor.useProxy(url))
|
okHttpClientForRelays.getHttpClient(torProxySettingsAnchor.useProxy(url))
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Caches all events in Memory
|
// Caches all events in Memory
|
||||||
val cache: LocalCache = LocalCache
|
val cache: LocalCache = LocalCache
|
||||||
|
@@ -38,5 +38,6 @@ class ProxySettingsAnchor {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
var isDM: (NormalizedRelayUrl) -> Boolean = { it in flow.value.value.dmRelayList }
|
||||||
var useProxy: (NormalizedRelayUrl) -> Boolean = { flow.value.value.useTor(it) }
|
var useProxy: (NormalizedRelayUrl) -> Boolean = { flow.value.value.useTor(it) }
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user