diff options
| -rw-r--r-- | mullvad-jni/src/into_java.rs | 33 | ||||
| -rw-r--r-- | talpid-types/src/net/mod.rs | 2 |
2 files changed, 5 insertions, 30 deletions
diff --git a/mullvad-jni/src/into_java.rs b/mullvad-jni/src/into_java.rs index 870b3fb5b3..9442cf4829 100644 --- a/mullvad-jni/src/into_java.rs +++ b/mullvad-jni/src/into_java.rs @@ -19,11 +19,11 @@ use mullvad_types::{ }; use std::{ fmt::Debug, - net::{Ipv4Addr, Ipv6Addr, SocketAddr}, + net::{Ipv4Addr, Ipv6Addr}, }; use talpid_core::tunnel::tun_provider::TunConfig; use talpid_types::{ - net::{Endpoint, TransportProtocol, TunnelEndpoint}, + net::{Endpoint, TunnelEndpoint}, tunnel::{ActionAfterDisconnect, BlockReason, ParameterGenerationError}, }; @@ -109,7 +109,6 @@ where wrap_jnix_into_java!(Ipv4Addr); wrap_jnix_into_java!(Ipv6Addr); -wrap_jnix_into_java!(SocketAddr); impl<'borrow, 'env> IntoJava<'borrow, 'env> for PublicKey where @@ -165,33 +164,7 @@ where wrap_jnix_into_java!(AccountData); wrap_jnix_into_java!(TunConfig); -wrap_jnix_into_java!(TransportProtocol); - -impl<'borrow, 'env> IntoJava<'borrow, 'env> for Endpoint -where - 'env: 'borrow, -{ - type JavaType = AutoLocal<'env, 'borrow>; - - fn into_java(self, env: &'borrow JnixEnv<'env>) -> Self::JavaType { - let class = env.get_class("net/mullvad/talpid/net/Endpoint"); - let address = self.address.into_java(env); - let protocol = self.protocol.into_java(env); - let parameters = [ - JValue::Object(address.as_obj()), - JValue::Object(protocol.as_obj()), - ]; - - env.auto_local( - env.new_object( - &class, - "(Ljava/net/InetSocketAddress;Lnet/mullvad/talpid/net/TransportProtocol;)V", - ¶meters, - ) - .expect("Failed to create Endpoint sub-class variant Java object"), - ) - } -} +wrap_jnix_into_java!(Endpoint); impl<'borrow, 'env> IntoJava<'borrow, 'env> for TunnelEndpoint where diff --git a/talpid-types/src/net/mod.rs b/talpid-types/src/net/mod.rs index 3760700d20..cd58fa0a1d 100644 --- a/talpid-types/src/net/mod.rs +++ b/talpid-types/src/net/mod.rs @@ -106,6 +106,8 @@ impl fmt::Display for TunnelEndpoint { /// Represents a network layer IP address together with the transport layer protocol and port. #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)] +#[cfg_attr(target_os = "android", derive(IntoJava))] +#[cfg_attr(target_os = "android", jnix(package = "net.mullvad.talpid.net"))] pub struct Endpoint { /// The socket address for the endpoint pub address: SocketAddr, |
