summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-11-22 11:14:39 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-11-22 15:16:56 +0000
commit6677eede732ab9ba6687229caf498d0df8874f11 (patch)
treee5665e1dc2e337f9dedc857eb084db159f1e5a31
parent7b2af16441cf28c534c42474ffcffec2d25d5601 (diff)
downloadmullvadvpn-6677eede732ab9ba6687229caf498d0df8874f11.tar.xz
mullvadvpn-6677eede732ab9ba6687229caf498d0df8874f11.zip
Remove `into_java` module
-rw-r--r--mullvad-jni/src/into_java.rs63
-rw-r--r--mullvad-jni/src/jni_event_listener.rs3
-rw-r--r--mullvad-jni/src/lib.rs63
-rw-r--r--mullvad-jni/src/vpn_service_tun_provider.rs3
4 files changed, 30 insertions, 102 deletions
diff --git a/mullvad-jni/src/into_java.rs b/mullvad-jni/src/into_java.rs
deleted file mode 100644
index 048643b160..0000000000
--- a/mullvad-jni/src/into_java.rs
+++ /dev/null
@@ -1,63 +0,0 @@
-use jnix::{jni::objects::AutoLocal, JnixEnv};
-use mullvad_types::{
- relay_constraints::Constraint, relay_list::RelayList, settings::Settings, states::TunnelState,
- version::AppVersionInfo, wireguard::KeygenEvent,
-};
-use std::fmt::Debug;
-use talpid_core::tunnel::tun_provider::TunConfig;
-
-pub trait IntoJava<'borrow, 'env: 'borrow> {
- type JavaType;
-
- fn into_java(self, env: &'borrow JnixEnv<'env>) -> Self::JavaType;
-}
-
-macro_rules! wrap_jnix_into_java {
- ( $type:ty $( where $param:ident : $( $constraints:tt )* )* ) => {
- impl<'borrow, 'env, $( $param ),* > IntoJava<'borrow, 'env> for $type
- where
- 'env: 'borrow,
- $( $param: $( $constraints )* ),*
- {
- type JavaType = <$type as jnix::IntoJava<'borrow, 'env>>::JavaType;
-
- fn into_java(self, env: &'borrow JnixEnv<'env>) -> Self::JavaType {
- jnix::IntoJava::into_java(self, env)
- }
- }
- };
-}
-
-wrap_jnix_into_java!(
- Option<T> where T: jnix::IntoJava<'borrow, 'env, JavaType = AutoLocal<'env, 'borrow>>
-);
-
-wrap_jnix_into_java!(String);
-
-wrap_jnix_into_java!(
- Vec<T> where T: jnix::IntoJava<'borrow, 'env, JavaType = AutoLocal<'env, 'borrow>>
-);
-
-impl<'array, 'borrow, 'env> IntoJava<'borrow, 'env> for &'array [u8]
-where
- 'env: 'borrow,
-{
- type JavaType = AutoLocal<'env, 'borrow>;
-
- fn into_java(self, env: &'borrow JnixEnv<'env>) -> Self::JavaType {
- jnix::IntoJava::into_java(self, env)
- }
-}
-
-wrap_jnix_into_java!(AppVersionInfo);
-wrap_jnix_into_java!(TunConfig);
-wrap_jnix_into_java!(RelayList);
-
-wrap_jnix_into_java!(Constraint<T>
- where
- T: Clone + Eq + Debug + jnix::IntoJava<'borrow, 'env, JavaType = AutoLocal<'env, 'borrow>>
-);
-
-wrap_jnix_into_java!(KeygenEvent);
-wrap_jnix_into_java!(Settings);
-wrap_jnix_into_java!(TunnelState);
diff --git a/mullvad-jni/src/jni_event_listener.rs b/mullvad-jni/src/jni_event_listener.rs
index 234fd30313..45020111fa 100644
--- a/mullvad-jni/src/jni_event_listener.rs
+++ b/mullvad-jni/src/jni_event_listener.rs
@@ -1,10 +1,9 @@
-use crate::into_java::IntoJava;
use jnix::{
jni::{
objects::{GlobalRef, JMethodID, JObject, JValue},
signature::{JavaType, Primitive},
},
- JnixEnv,
+ IntoJava, JnixEnv,
};
use mullvad_daemon::EventListener;
use mullvad_types::{
diff --git a/mullvad-jni/src/lib.rs b/mullvad-jni/src/lib.rs
index d9041aa6c5..0e00decd04 100644
--- a/mullvad-jni/src/lib.rs
+++ b/mullvad-jni/src/lib.rs
@@ -3,14 +3,13 @@
mod classes;
mod daemon_interface;
mod from_java;
-mod into_java;
mod is_null;
mod jni_event_listener;
mod vpn_service_tun_provider;
use crate::{
- daemon_interface::DaemonInterface, from_java::FromJava, into_java::IntoJava,
- jni_event_listener::JniEventListener, vpn_service_tun_provider::VpnServiceTunProvider,
+ daemon_interface::DaemonInterface, from_java::FromJava, jni_event_listener::JniEventListener,
+ vpn_service_tun_provider::VpnServiceTunProvider,
};
use jnix::{
jni::{
@@ -18,10 +17,11 @@ use jnix::{
sys::{jboolean, JNI_FALSE, JNI_TRUE},
JNIEnv,
},
- JnixEnv,
+ IntoJava, JnixEnv,
};
use lazy_static::lazy_static;
use mullvad_daemon::{logging, version, Daemon, DaemonCommandSender};
+use mullvad_types::account::AccountData;
use std::{
path::{Path, PathBuf},
sync::{mpsc, Once},
@@ -61,40 +61,33 @@ pub enum Error {
StartLogging(#[error(source)] logging::Error),
}
-mod get_account_data_result {
- use crate::daemon_interface;
- use jnix::IntoJava;
- use mullvad_types::account::AccountData;
-
- #[derive(IntoJava)]
- #[jnix(package = "net.mullvad.mullvadvpn.model")]
- pub enum GetAccountDataResult {
- Ok(AccountData),
- InvalidAccount,
- RpcError,
- OtherError,
- }
+#[derive(IntoJava)]
+#[jnix(package = "net.mullvad.mullvadvpn.model")]
+pub enum GetAccountDataResult {
+ Ok(AccountData),
+ InvalidAccount,
+ RpcError,
+ OtherError,
+}
- impl From<Result<AccountData, daemon_interface::Error>> for GetAccountDataResult {
- fn from(result: Result<AccountData, daemon_interface::Error>) -> Self {
- match result {
- Ok(account_data) => GetAccountDataResult::Ok(account_data),
- Err(error) => match error {
- daemon_interface::Error::RpcError(jsonrpc_client_core::Error(
- jsonrpc_client_core::ErrorKind::JsonRpcError(jsonrpc_core::Error {
- code: jsonrpc_core::ErrorCode::ServerError(-200),
- ..
- }),
- _,
- )) => GetAccountDataResult::InvalidAccount,
- daemon_interface::Error::RpcError(_) => GetAccountDataResult::RpcError,
- _ => GetAccountDataResult::OtherError,
- },
- }
+impl From<Result<AccountData, daemon_interface::Error>> for GetAccountDataResult {
+ fn from(result: Result<AccountData, daemon_interface::Error>) -> Self {
+ match result {
+ Ok(account_data) => GetAccountDataResult::Ok(account_data),
+ Err(error) => match error {
+ daemon_interface::Error::RpcError(jsonrpc_client_core::Error(
+ jsonrpc_client_core::ErrorKind::JsonRpcError(jsonrpc_core::Error {
+ code: jsonrpc_core::ErrorCode::ServerError(-200),
+ ..
+ }),
+ _,
+ )) => GetAccountDataResult::InvalidAccount,
+ daemon_interface::Error::RpcError(_) => GetAccountDataResult::RpcError,
+ _ => GetAccountDataResult::OtherError,
+ },
}
}
}
-use get_account_data_result::GetAccountDataResult;
#[no_mangle]
#[allow(non_snake_case)]
@@ -279,7 +272,7 @@ pub extern "system" fn Java_net_mullvad_mullvadvpn_MullvadDaemon_getAccountData<
);
}
- jnix::IntoJava::into_java(GetAccountDataResult::from(result), &env).forget()
+ GetAccountDataResult::from(result).into_java(&env).forget()
}
#[no_mangle]
diff --git a/mullvad-jni/src/vpn_service_tun_provider.rs b/mullvad-jni/src/vpn_service_tun_provider.rs
index aecdee3786..01f1905814 100644
--- a/mullvad-jni/src/vpn_service_tun_provider.rs
+++ b/mullvad-jni/src/vpn_service_tun_provider.rs
@@ -1,4 +1,3 @@
-use crate::into_java::IntoJava;
use ipnetwork::IpNetwork;
use jnix::{
jni::{
@@ -6,7 +5,7 @@ use jnix::{
signature::{JavaType, Primitive},
JavaVM,
},
- JnixEnv,
+ IntoJava, JnixEnv,
};
use std::{
fs::File,