Files
runelite/runescape-client/src/main/java/ArchiveDiskActionHandler.java
Lucwousin f6c2b4ac11 rev187
2019-12-16 18:40:02 +01:00

102 lines
2.7 KiB
Java

import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedGetter;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("ih")
@Implements("ArchiveDiskActionHandler")
public class ArchiveDiskActionHandler implements Runnable {
@ObfuscatedName("f")
@ObfuscatedSignature(
signature = "Ljs;"
)
@Export("ArchiveDiskActionHandler_requestQueue")
static NodeDeque ArchiveDiskActionHandler_requestQueue;
@ObfuscatedName("i")
@ObfuscatedSignature(
signature = "Ljs;"
)
@Export("ArchiveDiskActionHandler_responseQueue")
static NodeDeque ArchiveDiskActionHandler_responseQueue;
@ObfuscatedName("y")
@ObfuscatedGetter(
intValue = 509614069
)
static int field3120;
@ObfuscatedName("w")
@Export("ArchiveDiskActionHandler_lock")
static Object ArchiveDiskActionHandler_lock;
@ObfuscatedName("p")
@Export("ArchiveDiskActionHandler_thread")
static Thread ArchiveDiskActionHandler_thread;
static {
ArchiveDiskActionHandler_requestQueue = new NodeDeque();
ArchiveDiskActionHandler_responseQueue = new NodeDeque();
field3120 = 0;
ArchiveDiskActionHandler_lock = new Object();
}
ArchiveDiskActionHandler() {
}
public void run() {
try {
while (true) {
ArchiveDiskAction var1;
synchronized(ArchiveDiskActionHandler_requestQueue) {
var1 = (ArchiveDiskAction)ArchiveDiskActionHandler_requestQueue.last();
}
if (var1 != null) {
if (var1.type == 0) {
var1.archiveDisk.write((int)var1.key, var1.data, var1.data.length);
synchronized(ArchiveDiskActionHandler_requestQueue) {
var1.remove();
}
} else if (var1.type == 1) {
var1.data = var1.archiveDisk.read((int)var1.key);
synchronized(ArchiveDiskActionHandler_requestQueue) {
ArchiveDiskActionHandler_responseQueue.addFirst(var1);
}
}
synchronized(ArchiveDiskActionHandler_lock) {
if (field3120 <= 1) {
field3120 = 0;
ArchiveDiskActionHandler_lock.notifyAll();
return;
}
field3120 = 600;
}
} else {
ServerBuild.method4111(100L);
synchronized(ArchiveDiskActionHandler_lock) {
if (field3120 <= 1) {
field3120 = 0;
ArchiveDiskActionHandler_lock.notifyAll();
return;
}
--field3120;
}
}
}
} catch (Exception var13) {
DesktopPlatformInfoProvider.RunException_sendStackTrace((String)null, var13);
}
}
@ObfuscatedName("y")
@ObfuscatedSignature(
signature = "(Ljava/lang/CharSequence;I)I",
garbageValue = "139365615"
)
@Export("parseInt")
public static int parseInt(CharSequence var0) {
return TriBool.parseIntCustomRadix(var0, 10, true);
}
}