181 lines
4.1 KiB
Java
181 lines
4.1 KiB
Java
import java.io.DataInputStream;
|
|
import java.io.IOException;
|
|
import java.net.HttpURLConnection;
|
|
import java.net.URL;
|
|
import java.net.URLConnection;
|
|
import java.util.LinkedList;
|
|
import java.util.Queue;
|
|
import net.runelite.mapping.Export;
|
|
import net.runelite.mapping.Implements;
|
|
import net.runelite.mapping.ObfuscatedName;
|
|
import net.runelite.mapping.ObfuscatedSignature;
|
|
|
|
@ObfuscatedName("ei")
|
|
@Implements("UrlRequester")
|
|
public class UrlRequester implements Runnable {
|
|
@ObfuscatedName("c")
|
|
@Export("thread")
|
|
final Thread thread;
|
|
@ObfuscatedName("t")
|
|
@Export("isClosed")
|
|
volatile boolean isClosed;
|
|
@ObfuscatedName("o")
|
|
@Export("requests")
|
|
Queue requests;
|
|
|
|
public UrlRequester() {
|
|
this.requests = new LinkedList();
|
|
this.thread = new Thread(this);
|
|
this.thread.setPriority(1);
|
|
this.thread.start();
|
|
}
|
|
|
|
@ObfuscatedName("c")
|
|
@ObfuscatedSignature(
|
|
signature = "(Ljava/net/URL;I)Leg;",
|
|
garbageValue = "-838754437"
|
|
)
|
|
@Export("request")
|
|
public UrlRequest request(URL var1) {
|
|
UrlRequest var2 = new UrlRequest(var1);
|
|
synchronized(this) {
|
|
this.requests.add(var2);
|
|
this.notify();
|
|
return var2;
|
|
}
|
|
}
|
|
|
|
@ObfuscatedName("t")
|
|
@ObfuscatedSignature(
|
|
signature = "(I)V",
|
|
garbageValue = "1550899791"
|
|
)
|
|
@Export("close")
|
|
public void close() {
|
|
this.isClosed = true;
|
|
|
|
try {
|
|
synchronized(this) {
|
|
this.notify();
|
|
}
|
|
|
|
this.thread.join();
|
|
} catch (InterruptedException var4) {
|
|
}
|
|
|
|
}
|
|
|
|
public void run() {
|
|
while (!this.isClosed) {
|
|
try {
|
|
UrlRequest var1;
|
|
synchronized(this) {
|
|
var1 = (UrlRequest)this.requests.poll();
|
|
if (var1 == null) {
|
|
try {
|
|
this.wait();
|
|
} catch (InterruptedException var13) {
|
|
}
|
|
continue;
|
|
}
|
|
}
|
|
|
|
DataInputStream var2 = null;
|
|
URLConnection var3 = null;
|
|
|
|
try {
|
|
var3 = var1.url.openConnection();
|
|
var3.setConnectTimeout(5000);
|
|
var3.setReadTimeout(5000);
|
|
var3.setUseCaches(false);
|
|
var3.setRequestProperty("Connection", "close");
|
|
int var7 = var3.getContentLength();
|
|
if (var7 >= 0) {
|
|
byte[] var5 = new byte[var7];
|
|
var2 = new DataInputStream(var3.getInputStream());
|
|
var2.readFully(var5);
|
|
var1.response0 = var5;
|
|
}
|
|
|
|
var1.isDone0 = true;
|
|
} catch (IOException var14) {
|
|
var1.isDone0 = true;
|
|
} finally {
|
|
if (var2 != null) {
|
|
var2.close();
|
|
}
|
|
|
|
if (var3 != null && var3 instanceof HttpURLConnection) {
|
|
((HttpURLConnection)var3).disconnect();
|
|
}
|
|
|
|
}
|
|
} catch (Exception var17) {
|
|
class225.RunException_sendStackTrace((String)null, var17);
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
@ObfuscatedName("ih")
|
|
@ObfuscatedSignature(
|
|
signature = "(Lhn;IIZI)V",
|
|
garbageValue = "1992355059"
|
|
)
|
|
@Export("alignWidgetSize")
|
|
static void alignWidgetSize(Widget var0, int var1, int var2, boolean var3) {
|
|
int var4 = var0.width;
|
|
int var5 = var0.height;
|
|
if (var0.widthAlignment == 0) {
|
|
var0.width = var0.rawWidth;
|
|
} else if (var0.widthAlignment == 1) {
|
|
var0.width = var1 - var0.rawWidth;
|
|
} else if (var0.widthAlignment == 2) {
|
|
var0.width = var0.rawWidth * var1 >> 14;
|
|
}
|
|
|
|
if (var0.heightAlignment == 0) {
|
|
var0.height = var0.rawHeight;
|
|
} else if (var0.heightAlignment == 1) {
|
|
var0.height = var2 - var0.rawHeight;
|
|
} else if (var0.heightAlignment == 2) {
|
|
var0.height = var2 * var0.rawHeight >> 14;
|
|
}
|
|
|
|
if (var0.widthAlignment == 4) {
|
|
var0.width = var0.field2589 * var0.height / var0.field2590;
|
|
}
|
|
|
|
if (var0.heightAlignment == 4) {
|
|
var0.height = var0.field2590 * var0.width / var0.field2589;
|
|
}
|
|
|
|
if (var0.contentType == 1337) {
|
|
Client.viewportWidget = var0;
|
|
}
|
|
|
|
if (var3 && var0.onResize != null && (var4 != var0.width || var5 != var0.height)) {
|
|
ScriptEvent var6 = new ScriptEvent();
|
|
var6.widget = var0;
|
|
var6.args = var0.onResize;
|
|
Client.scriptEvents.addFirst(var6);
|
|
}
|
|
|
|
}
|
|
|
|
@ObfuscatedName("kv")
|
|
@ObfuscatedSignature(
|
|
signature = "(Lkp;II)V",
|
|
garbageValue = "372064004"
|
|
)
|
|
static void method3373(Buffer var0, int var1) {
|
|
byte[] var2 = var0.array;
|
|
if (Client.randomDatData == null) {
|
|
Client.randomDatData = new byte[24];
|
|
}
|
|
|
|
class301.writeRandomDat(var2, var1, Client.randomDatData, 0, 24);
|
|
WorldMapSprite.method427(var0, var1);
|
|
}
|
|
}
|