summaryrefslogtreecommitdiffhomepage
path: root/android/lib/model/src
diff options
context:
space:
mode:
authorDavid Göransson <david.goransson@mullvad.net>2024-04-16 14:03:51 +0200
committerDavid Göransson <david.goransson@mullvad.net>2024-04-16 14:16:48 +0200
commita8f5a9097d20448774828cd3349f5bbc228843f6 (patch)
tree012d88915f34106e28b316d541d9c7409f3675f9 /android/lib/model/src
parentc1d3d100074a73351bfa1fdde2ffd26dc759e9c5 (diff)
downloadmullvadvpn-a8f5a9097d20448774828cd3349f5bbc228843f6.tar.xz
mullvadvpn-a8f5a9097d20448774828cd3349f5bbc228843f6.zip
Trim custom list name and limit to 30 characters
Diffstat (limited to 'android/lib/model/src')
-rw-r--r--android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/model/CustomListName.kt20
1 files changed, 20 insertions, 0 deletions
diff --git a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/model/CustomListName.kt b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/model/CustomListName.kt
new file mode 100644
index 0000000000..5822eec2b3
--- /dev/null
+++ b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/model/CustomListName.kt
@@ -0,0 +1,20 @@
+package net.mullvad.mullvadvpn.model
+
+import android.os.Parcelable
+import kotlinx.parcelize.Parcelize
+
+@Parcelize
+@JvmInline
+value class CustomListName private constructor(val value: String) : Parcelable {
+
+ override fun toString() = value
+
+ companion object {
+ const val MAX_LENGTH = 30
+
+ fun fromString(name: String): CustomListName {
+ val trimmedName = name.trim().take(MAX_LENGTH)
+ return CustomListName(trimmedName)
+ }
+ }
+}