dmsc/java/classes/
gateway.rs1use jni::JNIEnv;
23use jni::objects::JClass;
24use jni::sys::jlong;
25use crate::gateway::{DMSCGateway, DMSCGatewayConfig};
26
27#[no_mangle]
28pub extern "system" fn Java_com_dunimd_dmsc_gateway_DMSCGateway_new0(
29 _env: JNIEnv,
30 _class: JClass,
31) -> jlong {
32 let gateway = Box::new(DMSCGateway::new());
33 Box::into_raw(gateway) as jlong
34}
35
36#[no_mangle]
37pub extern "system" fn Java_com_dunimd_dmsc_gateway_DMSCGateway_free0(
38 _env: JNIEnv,
39 _class: JClass,
40 ptr: jlong,
41) {
42 if ptr != 0 {
43 unsafe {
44 let _ = Box::from_raw(ptr as *mut DMSCGateway);
45 }
46 }
47}
48
49#[no_mangle]
50pub extern "system" fn Java_com_dunimd_dmsc_gateway_DMSCGatewayConfig_new0(
51 _env: JNIEnv,
52 _class: JClass,
53) -> jlong {
54 let config = Box::new(DMSCGatewayConfig::default());
55 Box::into_raw(config) as jlong
56}
57
58#[no_mangle]
59pub extern "system" fn Java_com_dunimd_dmsc_gateway_DMSCGatewayConfig_free0(
60 _env: JNIEnv,
61 _class: JClass,
62 ptr: jlong,
63) {
64 if ptr != 0 {
65 unsafe {
66 let _ = Box::from_raw(ptr as *mut DMSCGatewayConfig);
67 }
68 }
69}