diff --git a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/AuthRequestTypeJson.kt b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/AuthRequestTypeJson.kt index 297c9bbe58..a6067b08b2 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/AuthRequestTypeJson.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/AuthRequestTypeJson.kt @@ -21,5 +21,7 @@ enum class AuthRequestTypeJson { } @Keep -private class AuthRequestTypeSerializer : - BaseEnumeratedIntSerializer(AuthRequestTypeJson.entries.toTypedArray()) +private class AuthRequestTypeSerializer : BaseEnumeratedIntSerializer( + className = "AuthRequestTypeJson", + values = AuthRequestTypeJson.entries.toTypedArray(), +) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/KdfTypeJson.kt b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/KdfTypeJson.kt index 0e54616524..8967e24e0a 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/KdfTypeJson.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/KdfTypeJson.kt @@ -18,5 +18,7 @@ enum class KdfTypeJson { } @Keep -private class KdfTypeSerializer : - BaseEnumeratedIntSerializer(KdfTypeJson.entries.toTypedArray()) +private class KdfTypeSerializer : BaseEnumeratedIntSerializer( + className = "KdfTypeJson", + values = KdfTypeJson.entries.toTypedArray(), +) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/TwoFactorAuthMethod.kt b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/TwoFactorAuthMethod.kt index 764ea98f5f..24c535eba1 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/TwoFactorAuthMethod.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/model/TwoFactorAuthMethod.kt @@ -39,5 +39,7 @@ enum class TwoFactorAuthMethod(val value: UInt) { } @Keep -private class TwoFactorAuthMethodSerializer : - BaseEnumeratedIntSerializer(TwoFactorAuthMethod.entries.toTypedArray()) +private class TwoFactorAuthMethodSerializer : BaseEnumeratedIntSerializer( + className = "TwoFactorAuthMethod", + values = TwoFactorAuthMethod.entries.toTypedArray(), +) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/platform/datasource/network/serializer/BaseEnumeratedIntSerializer.kt b/app/src/main/java/com/x8bit/bitwarden/data/platform/datasource/network/serializer/BaseEnumeratedIntSerializer.kt index 109e7f2594..acfe64b94b 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/platform/datasource/network/serializer/BaseEnumeratedIntSerializer.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/platform/datasource/network/serializer/BaseEnumeratedIntSerializer.kt @@ -15,6 +15,7 @@ import kotlinx.serialization.encoding.Encoder */ @Suppress("UnnecessaryAbstractClass") abstract class BaseEnumeratedIntSerializer>( + private val className: String, private val values: Array, private val default: T? = null, ) : KSerializer { @@ -29,7 +30,7 @@ abstract class BaseEnumeratedIntSerializer>( val decodedValue = decoder.decodeInt().toString() return values.firstOrNull { it.serialNameAnnotation?.value == decodedValue } ?: default - ?: throw IllegalArgumentException("Unknown value $decodedValue") + ?: throw IllegalArgumentException("Unknown value $decodedValue for $className") } override fun serialize(encoder: Encoder, value: T) { diff --git a/app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/NotificationType.kt b/app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/NotificationType.kt index d03a88998d..4ab4e0b203 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/NotificationType.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/NotificationType.kt @@ -63,5 +63,7 @@ enum class NotificationType { } @Keep -private class NotificationTypeSerializer : - BaseEnumeratedIntSerializer(NotificationType.entries.toTypedArray()) +private class NotificationTypeSerializer : BaseEnumeratedIntSerializer( + className = "NotificationType", + values = NotificationType.entries.toTypedArray(), +) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/OrganizationEventType.kt b/app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/OrganizationEventType.kt index 411b59ba93..dc81126357 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/OrganizationEventType.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/platform/manager/model/OrganizationEventType.kt @@ -130,5 +130,6 @@ enum class OrganizationEventType { @Keep private class OrganizationEventTypeSerializer : BaseEnumeratedIntSerializer( + className = "OrganizationEventType", values = OrganizationEventType.entries.toTypedArray(), ) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/tools/generator/repository/model/PasscodeGenerationOptions.kt b/app/src/main/java/com/x8bit/bitwarden/data/tools/generator/repository/model/PasscodeGenerationOptions.kt index 0302130cf8..9ec0ee3ffa 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/tools/generator/repository/model/PasscodeGenerationOptions.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/tools/generator/repository/model/PasscodeGenerationOptions.kt @@ -91,5 +91,6 @@ data class PasscodeGenerationOptions( @Keep private class PasscodeTypeSerializer : BaseEnumeratedIntSerializer( - PasscodeGenerationOptions.PasscodeType.entries.toTypedArray(), + className = "PasscodeGenerationOptions.PasscodeType", + values = PasscodeGenerationOptions.PasscodeType.entries.toTypedArray(), ) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/tools/generator/repository/model/UsernameGenerationOptions.kt b/app/src/main/java/com/x8bit/bitwarden/data/tools/generator/repository/model/UsernameGenerationOptions.kt index 6f00601421..c3ac9667c6 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/tools/generator/repository/model/UsernameGenerationOptions.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/tools/generator/repository/model/UsernameGenerationOptions.kt @@ -122,11 +122,13 @@ data class UsernameGenerationOptions( @Keep private class UsernameTypeSerializer : BaseEnumeratedIntSerializer( - UsernameGenerationOptions.UsernameType.entries.toTypedArray(), + className = "UsernameGenerationOptions.UsernameType", + values = UsernameGenerationOptions.UsernameType.entries.toTypedArray(), ) @Keep private class ForwardedEmailServiceTypeSerializer : BaseEnumeratedIntSerializer( - UsernameGenerationOptions.ForwardedEmailServiceType.entries.toTypedArray(), + className = "UsernameGenerationOptions.ForwardedEmailServiceType", + values = UsernameGenerationOptions.ForwardedEmailServiceType.entries.toTypedArray(), ) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/CipherRepromptTypeJson.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/CipherRepromptTypeJson.kt index 3104960956..d7f22ae589 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/CipherRepromptTypeJson.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/CipherRepromptTypeJson.kt @@ -25,5 +25,6 @@ enum class CipherRepromptTypeJson { @Keep private class CipherRepromptTypeSerializer : BaseEnumeratedIntSerializer( - CipherRepromptTypeJson.entries.toTypedArray(), + className = "CipherRepromptTypeJson", + values = CipherRepromptTypeJson.entries.toTypedArray(), ) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/CipherTypeJson.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/CipherTypeJson.kt index 1b43aeec70..8c2b80d71c 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/CipherTypeJson.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/CipherTypeJson.kt @@ -42,5 +42,7 @@ enum class CipherTypeJson { } @Keep -private class CipherTypeSerializer : - BaseEnumeratedIntSerializer(CipherTypeJson.entries.toTypedArray()) +private class CipherTypeSerializer : BaseEnumeratedIntSerializer( + className = "CipherTypeJson", + values = CipherTypeJson.entries.toTypedArray(), +) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/FieldTypeJson.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/FieldTypeJson.kt index fc57724a58..7eaffcdfe6 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/FieldTypeJson.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/FieldTypeJson.kt @@ -36,5 +36,7 @@ enum class FieldTypeJson { } @Keep -private class FieldTypeSerializer : - BaseEnumeratedIntSerializer(FieldTypeJson.entries.toTypedArray()) +private class FieldTypeSerializer : BaseEnumeratedIntSerializer( + className = "FieldTypeJson", + values = FieldTypeJson.entries.toTypedArray(), +) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/FileUploadType.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/FileUploadType.kt index 175d79e120..7999be2e71 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/FileUploadType.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/FileUploadType.kt @@ -19,5 +19,6 @@ enum class FileUploadType { @Keep private class FileUploadTypeSerializer : BaseEnumeratedIntSerializer( - FileUploadType.entries.toTypedArray(), + className = "FileUploadType", + values = FileUploadType.entries.toTypedArray(), ) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/LinkedIdTypeJson.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/LinkedIdTypeJson.kt index 54aef22902..65792af78b 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/LinkedIdTypeJson.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/LinkedIdTypeJson.kt @@ -180,5 +180,7 @@ enum class LinkedIdTypeJson(val value: UInt) { } @Keep -private class LinkedIdTypeSerializer : - BaseEnumeratedIntSerializer(LinkedIdTypeJson.entries.toTypedArray()) +private class LinkedIdTypeSerializer : BaseEnumeratedIntSerializer( + className = "LinkedIdTypeJson", + values = LinkedIdTypeJson.entries.toTypedArray(), +) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/OrganizationStatusType.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/OrganizationStatusType.kt index dc033ab042..5641d2f7e1 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/OrganizationStatusType.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/OrganizationStatusType.kt @@ -32,5 +32,6 @@ enum class OrganizationStatusType { @Keep private class OrganizationStatusTypeSerializer : BaseEnumeratedIntSerializer( - OrganizationStatusType.entries.toTypedArray(), + className = "OrganizationStatusType", + values = OrganizationStatusType.entries.toTypedArray(), ) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/OrganizationType.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/OrganizationType.kt index e91370a9bd..9f6aa7ec53 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/OrganizationType.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/OrganizationType.kt @@ -43,5 +43,6 @@ enum class OrganizationType { @Keep private class OrganizationTypeSerializer : BaseEnumeratedIntSerializer( - OrganizationType.entries.toTypedArray(), + className = "OrganizationType", + values = OrganizationType.entries.toTypedArray(), ) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/PolicyTypeJson.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/PolicyTypeJson.kt index 15ec0fa69d..4292a288a2 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/PolicyTypeJson.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/PolicyTypeJson.kt @@ -100,6 +100,7 @@ enum class PolicyTypeJson { @Keep private class PolicyTypeSerializer : BaseEnumeratedIntSerializer( + className = "PolicyTypeJson", values = PolicyTypeJson.entries.toTypedArray(), default = PolicyTypeJson.UNKNOWN, ) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/SecureNoteTypeJson.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/SecureNoteTypeJson.kt index 239bef766f..5108238ad7 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/SecureNoteTypeJson.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/SecureNoteTypeJson.kt @@ -18,5 +18,7 @@ enum class SecureNoteTypeJson { } @Keep -private class SecureNoteTypeSerializer : - BaseEnumeratedIntSerializer(SecureNoteTypeJson.entries.toTypedArray()) +private class SecureNoteTypeSerializer : BaseEnumeratedIntSerializer( + className = "SecureNoteTypeJson", + values = SecureNoteTypeJson.entries.toTypedArray(), +) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/SendTypeJson.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/SendTypeJson.kt index f3f8b744e7..6a0563739a 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/SendTypeJson.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/SendTypeJson.kt @@ -24,5 +24,7 @@ enum class SendTypeJson { } @Keep -private class SendTypeSerializer : - BaseEnumeratedIntSerializer(SendTypeJson.entries.toTypedArray()) +private class SendTypeSerializer : BaseEnumeratedIntSerializer( + className = "SendTypeJson", + values = SendTypeJson.entries.toTypedArray(), +) diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/UriMatchTypeJson.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/UriMatchTypeJson.kt index 97b80e6559..da119ae34a 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/UriMatchTypeJson.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/model/UriMatchTypeJson.kt @@ -48,5 +48,7 @@ enum class UriMatchTypeJson { } @Keep -private class UriMatchTypeSerializer : - BaseEnumeratedIntSerializer(UriMatchTypeJson.entries.toTypedArray()) +private class UriMatchTypeSerializer : BaseEnumeratedIntSerializer( + className = "UriMatchTypeJson", + values = UriMatchTypeJson.entries.toTypedArray(), +) diff --git a/app/src/test/java/com/x8bit/bitwarden/data/platform/datasource/network/serializer/BaseEnumeratedIntSerializerTest.kt b/app/src/test/java/com/x8bit/bitwarden/data/platform/datasource/network/serializer/BaseEnumeratedIntSerializerTest.kt index ae9783f397..ec74c90c04 100644 --- a/app/src/test/java/com/x8bit/bitwarden/data/platform/datasource/network/serializer/BaseEnumeratedIntSerializerTest.kt +++ b/app/src/test/java/com/x8bit/bitwarden/data/platform/datasource/network/serializer/BaseEnumeratedIntSerializerTest.kt @@ -62,6 +62,7 @@ private enum class TestEnum { } private class TestEnumSerializer : BaseEnumeratedIntSerializer( + className = "TestEnum", values = TestEnum.entries.toTypedArray(), default = TestEnum.UNKNOWN, )