diff options
| author | Albin <albin@mullvad.net> | 2023-01-10 15:58:10 +0100 |
|---|---|---|
| committer | Albin <albin@mullvad.net> | 2023-01-10 15:58:10 +0100 |
| commit | 7ea38a3881b92b17658a5be4f0e627601212db6c (patch) | |
| tree | 96c12212b3f95c7ea588099aec7cb5fdb22942ed /android/lib/endpoint/src/main | |
| parent | fee3b5804555b3287c9c59aecd3682f118735ba8 (diff) | |
| parent | 57008a509342f547f5e56ef781a7f2e8a18298c0 (diff) | |
| download | mullvadvpn-7ea38a3881b92b17658a5be4f0e627601212db6c.tar.xz mullvadvpn-7ea38a3881b92b17658a5be4f0e627601212db6c.zip | |
Merge branch 'add-instrumented-tests-using-mocked-api'
Diffstat (limited to 'android/lib/endpoint/src/main')
5 files changed, 47 insertions, 0 deletions
diff --git a/android/lib/endpoint/src/main/AndroidManifest.xml b/android/lib/endpoint/src/main/AndroidManifest.xml new file mode 100644 index 0000000000..cc947c5679 --- /dev/null +++ b/android/lib/endpoint/src/main/AndroidManifest.xml @@ -0,0 +1 @@ +<manifest /> diff --git a/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/ApiEndpoint.kt b/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/ApiEndpoint.kt new file mode 100644 index 0000000000..7325e3f61b --- /dev/null +++ b/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/ApiEndpoint.kt @@ -0,0 +1,13 @@ +package net.mullvad.mullvadvpn.lib.endpoint + +import android.os.Parcelable +import java.net.InetSocketAddress +import kotlinx.parcelize.Parcelize + +@Parcelize +data class ApiEndpoint( + val address: InetSocketAddress, + val disableAddressCache: Boolean, + val disableTls: Boolean, + val forceDirectConnection: Boolean +) : Parcelable diff --git a/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/ApiEndpointConfiguration.kt b/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/ApiEndpointConfiguration.kt new file mode 100644 index 0000000000..164a9fffa7 --- /dev/null +++ b/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/ApiEndpointConfiguration.kt @@ -0,0 +1,7 @@ +package net.mullvad.mullvadvpn.lib.endpoint + +import android.os.Parcelable + +interface ApiEndpointConfiguration : Parcelable { + fun apiEndpoint(): ApiEndpoint? +} diff --git a/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/ApiEndpointIntentExtensions.kt b/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/ApiEndpointIntentExtensions.kt new file mode 100644 index 0000000000..cf2f2fb0dd --- /dev/null +++ b/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/ApiEndpointIntentExtensions.kt @@ -0,0 +1,18 @@ +package net.mullvad.mullvadvpn.lib.endpoint + +import android.content.Intent +import android.os.Build + +private const val OVERRIDE_API_EXTRA_NAME = "override_api" + +fun Intent.putApiEndpointConfigurationExtra(apiEndpointConfiguration: ApiEndpointConfiguration) { + putExtra(OVERRIDE_API_EXTRA_NAME, apiEndpointConfiguration) +} + +fun Intent.getApiEndpointConfigurationExtras(): ApiEndpointConfiguration? { + return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + getParcelableExtra(OVERRIDE_API_EXTRA_NAME, ApiEndpointConfiguration::class.java) + } else { + getParcelableExtra(OVERRIDE_API_EXTRA_NAME) + } +} diff --git a/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/DefaultApiEndpointConfiguration.kt b/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/DefaultApiEndpointConfiguration.kt new file mode 100644 index 0000000000..90b9bc7896 --- /dev/null +++ b/android/lib/endpoint/src/main/kotlin/net/mullvad/mullvadvpn/lib/endpoint/DefaultApiEndpointConfiguration.kt @@ -0,0 +1,8 @@ +package net.mullvad.mullvadvpn.lib.endpoint + +import kotlinx.parcelize.Parcelize + +@Parcelize +class DefaultApiEndpointConfiguration : ApiEndpointConfiguration { + override fun apiEndpoint(): ApiEndpoint? = null +} |
