diff --git a/app/src/main/java/org/thoughtcrime/securesms/push/SignalServiceNetworkAccess.kt b/app/src/main/java/org/thoughtcrime/securesms/push/SignalServiceNetworkAccess.kt index 7ed45b22b8..6d1b53e0fd 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/push/SignalServiceNetworkAccess.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/push/SignalServiceNetworkAccess.kt @@ -216,7 +216,7 @@ open class SignalServiceNetworkAccess(context: Context) { COUNTRY_CODE_RUSSIA to fConfig ) - private val defaultCensoredConfiguration: SignalServiceConfiguration = buildGConfiguration(baseGHostConfigs) + private val defaultCensoredConfiguration: SignalServiceConfiguration = buildGConfiguration(baseGHostConfigs) + fConfig private val defaultCensoredCountryCodes: Set = setOf( COUNTRY_CODE_EGYPT, diff --git a/libsignal-service/src/main/java/org/whispersystems/signalservice/internal/configuration/SignalServiceConfiguration.kt b/libsignal-service/src/main/java/org/whispersystems/signalservice/internal/configuration/SignalServiceConfiguration.kt index caf3abfe44..4a686311cd 100644 --- a/libsignal-service/src/main/java/org/whispersystems/signalservice/internal/configuration/SignalServiceConfiguration.kt +++ b/libsignal-service/src/main/java/org/whispersystems/signalservice/internal/configuration/SignalServiceConfiguration.kt @@ -7,7 +7,8 @@ import java.util.Optional /** * Defines all network configuration needed to connect to the Signal service. */ -class SignalServiceConfiguration( +@Suppress("ArrayInDataClass") // Using data class for .copy(), don't care about equals/hashcode +data class SignalServiceConfiguration( val signalServiceUrls: Array, val signalCdnUrlMap: Map>, val signalStorageUrls: Array, @@ -19,4 +20,16 @@ class SignalServiceConfiguration( val zkGroupServerPublicParams: ByteArray, val genericServerPublicParams: ByteArray, val backupServerPublicParams: ByteArray -) +) { + + /** Convenience operator overload for combining the URL lists. Does not add the other fields together, as those wouldn't make sense. */ + operator fun plus(other: SignalServiceConfiguration): SignalServiceConfiguration { + return this.copy( + signalServiceUrls = signalServiceUrls + other.signalServiceUrls, + signalCdnUrlMap = signalCdnUrlMap + other.signalCdnUrlMap, + signalStorageUrls = signalStorageUrls + other.signalStorageUrls, + signalCdsiUrls = signalCdsiUrls + other.signalCdsiUrls, + signalSvr2Urls = signalSvr2Urls + other.signalSvr2Urls + ) + } +}