Skip to content

Commit 44b6ff3

Browse files
committed
Remove async where applicable
1 parent 3348bf3 commit 44b6ff3

22 files changed

+197
-158
lines changed

Cargo.lock

Lines changed: 63 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ async-trait = { version = "^0.1", default-features = false }
1313
bytemuck = { version = "^1.19", default-features = false, features = ["extern_crate_alloc"] }
1414
dyn-clone = { version = "^1.0", default-features = false }
1515
nom = { version = "^7.1", default-features = false, features = ["alloc"] }
16-
async-lock = { version = "^3.3", default-features = false }
16+
parking_lot = { version = "^0.12", default-features = false }
1717
tracing = { version = "^0.1", default-features = false, features = ["attributes"] }
1818

1919
tokio = { version = "^1.41", features = ["macros"] }

java_runtime/Cargo.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@ license.workspace = true
88
async-trait = { workspace = true }
99
bytemuck = { workspace = true }
1010
dyn-clone = { workspace = true }
11-
async-lock = { workspace = true }
11+
parking_lot = { workspace = true }
1212
tracing = { workspace = true }
1313

14+
async-lock = { version = "^3.4", default-features = false }
1415
encoding_rs = { version = "^0.8", features = ["alloc"], default-features = false }
1516
event-listener = { version = "^5.3", default-features = false }
1617
hashbrown = { version = "^0.14", features = ["ahash"], default-features = false }

java_runtime/src/classes/java/io/input_stream_reader.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ use core::cmp::min;
22

33
use alloc::{sync::Arc, vec};
44

5-
use async_lock::Mutex;
65
use bytemuck::{cast_slice, cast_vec};
76
use encoding_rs::{Decoder, EUC_KR, UTF_8};
7+
use parking_lot::Mutex;
88

99
use java_class_proto::{JavaFieldProto, JavaMethodProto};
1010
use jvm::{Array, ClassInstanceRef, JavaChar, Jvm, Result};
@@ -115,7 +115,7 @@ impl InputStreamReader {
115115
let decoder: Arc<Mutex<Decoder>> = jvm.get_rust_object_field(&this, "decoder").await?;
116116

117117
let mut decoded = vec![0; BUF_SIZE * 3];
118-
let (_, read, wrote, _) = decoder.lock().await.decode_to_utf16(&cast_vec(read_buf_data), &mut decoded, false);
118+
let (_, read, wrote, _) = decoder.lock().decode_to_utf16(&cast_vec(read_buf_data), &mut decoded, false);
119119

120120
// advance readBuf
121121
let _: () = jvm

java_runtime/src/classes/java/lang/class.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ impl Class {
6464
let rust_class = JavaLangClass::to_rust_class(jvm, &this).await?;
6565
let other_rust_class = JavaLangClass::to_rust_class(jvm, &other).await?;
6666

67-
Ok(jvm.is_inherited_from(&*other_rust_class, &rust_class.name()).await)
67+
Ok(jvm.is_inherited_from(&*other_rust_class, &rust_class.name()))
6868
}
6969

7070
async fn get_resource_as_stream(
@@ -99,7 +99,7 @@ mod test {
9999
async fn test_class() -> Result<()> {
100100
let jvm = test_jvm().await?;
101101

102-
let java_class = jvm.resolve_class("java/lang/String").await?.java_class(&jvm).await?;
102+
let java_class = jvm.resolve_class("java/lang/String").await?.java_class()?;
103103

104104
let rust_class = JavaLangClass::to_rust_class(&jvm, &java_class).await?;
105105
assert_eq!(rust_class.name(), "java/lang/String");
@@ -115,15 +115,15 @@ mod test {
115115
async fn test_is_assignable_from() -> Result<()> {
116116
let jvm = test_jvm().await?;
117117

118-
let string_class = jvm.resolve_class("java/lang/String").await?.java_class(&jvm).await?;
119-
let object_class = jvm.resolve_class("java/lang/Object").await?.java_class(&jvm).await?;
118+
let string_class = jvm.resolve_class("java/lang/String").await?.java_class()?;
119+
let object_class = jvm.resolve_class("java/lang/Object").await?.java_class()?;
120120

121121
let result: bool = jvm
122122
.invoke_virtual(&object_class, "isAssignableFrom", "(Ljava/lang/Class;)Z", (string_class.clone(),))
123123
.await?;
124124
assert!(result);
125125

126-
let thread_class = jvm.resolve_class("java/lang/Thread").await?.java_class(&jvm).await?;
126+
let thread_class = jvm.resolve_class("java/lang/Thread").await?.java_class()?;
127127

128128
let result: bool = jvm
129129
.invoke_virtual(&string_class, "isAssignableFrom", "(Ljava/lang/Class;)Z", (thread_class,))

java_runtime/src/classes/java/lang/class_loader.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -203,13 +203,13 @@ impl ClassLoader {
203203
tracing::debug!("java.lang.ClassLoader::findLoadedClass({:?}, {:?})", &this, name);
204204

205205
let rust_name = JavaLangString::to_rust_string(jvm, &name).await?;
206-
if !jvm.has_class(&rust_name).await {
206+
if !jvm.has_class(&rust_name) {
207207
return Ok(None.into());
208208
}
209209

210210
let class = jvm.resolve_class(&rust_name).await?;
211211

212-
Ok(class.java_class(jvm).await?.into())
212+
Ok(class.java_class()?.into())
213213
}
214214

215215
async fn get_resource(

java_runtime/src/classes/java/lang/object.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ impl Object {
5050
let this: Box<dyn ClassInstance> = this.into();
5151
let class_name = this.class_definition().name();
5252

53-
let class = jvm.resolve_class(&class_name).await?.java_class(jvm).await?;
53+
let class = jvm.resolve_class(&class_name).await?.java_class()?;
5454

5555
Ok(class.into())
5656
}
@@ -218,13 +218,13 @@ mod test {
218218
#[async_trait::async_trait]
219219
impl SpawnCallback for Notifier {
220220
async fn call(&self) -> Result<()> {
221-
self.jvm.attach_thread().await?;
221+
self.jvm.attach_thread()?;
222222

223223
self.runtime.sleep(Duration::from_millis(100)).await;
224224
self.notified.store(true, Ordering::Relaxed);
225225
let _: () = self.jvm.invoke_virtual(&self.target, "notify", "()V", ()).await?;
226226

227-
self.jvm.detach_thread().await?;
227+
self.jvm.detach_thread()?;
228228

229229
Ok(())
230230
}
@@ -265,13 +265,13 @@ mod test {
265265
#[async_trait::async_trait]
266266
impl SpawnCallback for Notifier {
267267
async fn call(&self) -> Result<()> {
268-
self.jvm.attach_thread().await?;
268+
self.jvm.attach_thread()?;
269269

270270
self.runtime.sleep(Duration::from_millis(1000)).await;
271271
self.notified.store(true, Ordering::Relaxed);
272272
let _: () = self.jvm.invoke_virtual(&self.target, "notify", "()V", ()).await?;
273273

274-
self.jvm.detach_thread().await?;
274+
self.jvm.detach_thread()?;
275275

276276
Ok(())
277277
}

java_runtime/src/classes/java/lang/thread.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,11 +93,11 @@ impl Thread {
9393
async fn call(&self) -> Result<()> {
9494
tracing::trace!("Thread start");
9595

96-
self.jvm.attach_thread().await?;
96+
self.jvm.attach_thread()?;
9797

9898
let _: () = self.jvm.invoke_virtual(&self.this, "run", "()V", []).await?;
9999

100-
self.jvm.detach_thread().await?;
100+
self.jvm.detach_thread()?;
101101

102102
self.join_event.notify(usize::MAX);
103103

java_runtime/src/classes/java/lang/throwable.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ impl Throwable {
7676
async fn fill_in_stack_trace(jvm: &Jvm, _: &mut RuntimeContext, mut this: ClassInstanceRef<Self>) -> Result<ClassInstanceRef<Self>> {
7777
tracing::debug!("java.lang.Throwable::fillInStackTrace({:?})", &this);
7878

79-
let stack_trace = Arc::new(jvm.stack_trace().await);
79+
let stack_trace = Arc::new(jvm.stack_trace());
8080

8181
jvm.put_rust_object_field(&mut this, "stackTrace", stack_trace).await?;
8282

java_runtime/src/classes/java/util/zip/zip_file.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ use core::iter;
55
extern crate std;
66
use std::io::{Cursor, Read};
77

8-
use async_lock::Mutex;
98
use bytemuck::cast_vec;
9+
use parking_lot::Mutex;
1010
use zip::ZipArchive;
1111

1212
use java_class_proto::{JavaFieldProto, JavaMethodProto};
@@ -82,7 +82,7 @@ impl ZipFile {
8282
let name = JavaLangString::to_rust_string(jvm, &name).await?;
8383

8484
let zip: JavaZipArchive = jvm.get_rust_object_field(&this, "zip").await?;
85-
let file_size = zip.lock().await.by_name(&name).map(|x| x.size());
85+
let file_size = zip.lock().by_name(&name).map(|x| x.size());
8686

8787
if let Ok(x) = file_size {
8888
let _: () = jvm.invoke_virtual(&entry, "setSize", "(J)V", (x as i64,)).await?;
@@ -97,7 +97,7 @@ impl ZipFile {
9797
tracing::debug!("java.util.zip.ZipFile::entries({:?})", &this);
9898

9999
let zip: JavaZipArchive = jvm.get_rust_object_field(&this, "zip").await?;
100-
let names = zip.lock().await.file_names().map(|x| x.to_string()).collect::<Vec<_>>();
100+
let names = zip.lock().file_names().map(|x| x.to_string()).collect::<Vec<_>>();
101101

102102
let mut name_array = jvm.instantiate_array("Ljava/lang/String;", names.len() as _).await?;
103103
for (i, name) in names.iter().enumerate() {
@@ -130,7 +130,7 @@ impl ZipFile {
130130
let data = {
131131
let zip: JavaZipArchive = jvm.get_rust_object_field(&this, "zip").await?;
132132

133-
let mut zip = zip.lock().await;
133+
let mut zip = zip.lock();
134134
let mut file = zip.by_name(&entry_name).unwrap();
135135

136136
let mut buf = Vec::new();

0 commit comments

Comments
 (0)