summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-05-06 19:14:34 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-05-11 13:15:50 +0000
commitca6b51fde35b4625d8484122a20064956a33d2b4 (patch)
tree19f8fc6b4a67fcfa7adbbc9339686930dd1f50e9
parenteffc1d641e664a663ec48d02bef5de5f48be735a (diff)
downloadmullvadvpn-ca6b51fde35b4625d8484122a20064956a33d2b4.tar.xz
mullvadvpn-ca6b51fde35b4625d8484122a20064956a33d2b4.zip
Create `VoucherSubmission` class
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/model/VoucherSubmission.kt3
-rw-r--r--mullvad-jni/src/classes.rs1
-rw-r--r--mullvad-types/src/account.rs4
3 files changed, 8 insertions, 0 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/model/VoucherSubmission.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/model/VoucherSubmission.kt
new file mode 100644
index 0000000000..9a14c4cf7e
--- /dev/null
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/model/VoucherSubmission.kt
@@ -0,0 +1,3 @@
+package net.mullvad.mullvadvpn.model
+
+data class VoucherSubmission(val timeAdded: Long, val newExpiry: String)
diff --git a/mullvad-jni/src/classes.rs b/mullvad-jni/src/classes.rs
index 15e27d3a11..70da955a58 100644
--- a/mullvad-jni/src/classes.rs
+++ b/mullvad-jni/src/classes.rs
@@ -36,6 +36,7 @@ pub const CLASSES: &[&str] = &[
"net/mullvad/mullvadvpn/model/TunnelState$Connecting",
"net/mullvad/mullvadvpn/model/TunnelState$Disconnected",
"net/mullvad/mullvadvpn/model/TunnelState$Disconnecting",
+ "net/mullvad/mullvadvpn/model/VoucherSubmission",
"net/mullvad/mullvadvpn/model/WireguardEndpointData",
"net/mullvad/mullvadvpn/service/MullvadDaemon",
"net/mullvad/mullvadvpn/service/MullvadVpnService",
diff --git a/mullvad-types/src/account.rs b/mullvad-types/src/account.rs
index eac2adce4c..f5dc450e76 100644
--- a/mullvad-types/src/account.rs
+++ b/mullvad-types/src/account.rs
@@ -18,10 +18,14 @@ pub struct AccountData {
/// Data structure that's returned from successful invocation of the mullvad API's
/// `/v1/submit-voucher` RPC.
#[derive(Deserialize, Serialize, Debug)]
+#[cfg_attr(target_os = "android", derive(IntoJava))]
+#[cfg_attr(target_os = "android", jnix(package = "net.mullvad.mullvadvpn.model"))]
pub struct VoucherSubmission {
/// Amount of time added to the account
+ #[cfg_attr(target_os = "android", jnix(map = "|time_added| time_added as i64"))]
pub time_added: u64,
/// Updated expiry time
+ #[cfg_attr(target_os = "android", jnix(map = "|expiry| expiry.to_string()"))]
pub new_expiry: DateTime<Utc>,
}