102 lines
2.7 KiB
Java
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);
|
|
}
|
|
}
|