mirror of
https://github.com/ME1312/SubServers-2.git
synced 2024-11-28 21:26:01 +01:00
Update SubData
This commit is contained in:
parent
ea9eec9aa8
commit
9af8dd02ce
@ -50,7 +50,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.ME1312.SubData</groupId>
|
<groupId>net.ME1312.SubData</groupId>
|
||||||
<artifactId>Server</artifactId>
|
<artifactId>Server</artifactId>
|
||||||
<version>20w48b</version>
|
<version>21w04b</version>
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
<optional>true</optional>
|
<optional>true</optional>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
@ -2,6 +2,7 @@ package net.ME1312.SubServers.Bungee.Network.Packet;
|
|||||||
|
|
||||||
import net.ME1312.Galaxi.Library.UniversalFile;
|
import net.ME1312.Galaxi.Library.UniversalFile;
|
||||||
import net.ME1312.Galaxi.Library.Util;
|
import net.ME1312.Galaxi.Library.Util;
|
||||||
|
import net.ME1312.SubData.Server.Library.DataSize;
|
||||||
import net.ME1312.SubData.Server.Protocol.PacketIn;
|
import net.ME1312.SubData.Server.Protocol.PacketIn;
|
||||||
import net.ME1312.SubData.Server.Protocol.PacketStreamOut;
|
import net.ME1312.SubData.Server.Protocol.PacketStreamOut;
|
||||||
import net.ME1312.SubData.Server.SubDataClient;
|
import net.ME1312.SubData.Server.SubDataClient;
|
||||||
@ -37,7 +38,10 @@ public class PacketExDownloadTemplates implements PacketIn, PacketStreamOut {
|
|||||||
@Override
|
@Override
|
||||||
public void send(SubDataClient client, OutputStream stream) throws Throwable {
|
public void send(SubDataClient client, OutputStream stream) throws Throwable {
|
||||||
try {
|
try {
|
||||||
|
int initial = client.getBlockSize();
|
||||||
|
client.setBlockSize(DataSize.MBB);
|
||||||
Util.zip(new UniversalFile(plugin.dir, "SubServers:Templates"), stream);
|
Util.zip(new UniversalFile(plugin.dir, "SubServers:Templates"), stream);
|
||||||
|
client.setBlockSize(initial);
|
||||||
stream.close();
|
stream.close();
|
||||||
|
|
||||||
Util.isException(() -> Util.reflect(ExternalSubCreator.class.getDeclaredField("enableRT"), host.getCreator(), true));
|
Util.isException(() -> Util.reflect(ExternalSubCreator.class.getDeclaredField("enableRT"), host.getCreator(), true));
|
||||||
|
@ -67,7 +67,7 @@ public class PacketLinkExHost implements InitialPacket, PacketObjectIn<Integer>,
|
|||||||
((ExternalHost) host).setSubData(client, channel);
|
((ExternalHost) host).setSubData(client, channel);
|
||||||
Logger.get("SubData").info(client.getAddress().toString() + " has been defined as Host: " + host.getName() + ((channel > 0)?" (Sub-"+channel+")":""));
|
Logger.get("SubData").info(client.getAddress().toString() + " has been defined as Host: " + host.getName() + ((channel > 0)?" (Sub-"+channel+")":""));
|
||||||
queue(host.getName(), () -> client.sendPacket(new PacketLinkExHost(0, null)));
|
queue(host.getName(), () -> client.sendPacket(new PacketLinkExHost(0, null)));
|
||||||
setReady(client, true);
|
setReady(client);
|
||||||
} else {
|
} else {
|
||||||
client.sendPacket(new PacketLinkExHost(3, "Host already linked"));
|
client.sendPacket(new PacketLinkExHost(3, "Host already linked"));
|
||||||
}
|
}
|
||||||
|
@ -78,7 +78,7 @@ public class PacketLinkProxy implements InitialPacket, PacketObjectIn<Integer>,
|
|||||||
if (isnew) plugin.getPluginManager().callEvent(new SubAddProxyEvent(proxy));
|
if (isnew) plugin.getPluginManager().callEvent(new SubAddProxyEvent(proxy));
|
||||||
Logger.get("SubData").info(client.getAddress().toString() + " has been defined as Proxy: " + proxy.getName() + ((channel > 0)?" (Sub-"+channel+")":""));
|
Logger.get("SubData").info(client.getAddress().toString() + " has been defined as Proxy: " + proxy.getName() + ((channel > 0)?" (Sub-"+channel+")":""));
|
||||||
queue(proxy.getName(), () -> client.sendPacket(new PacketLinkProxy(proxy.getName(), 0, null)));
|
queue(proxy.getName(), () -> client.sendPacket(new PacketLinkProxy(proxy.getName(), 0, null)));
|
||||||
setReady(client, true);
|
setReady(client);
|
||||||
} else {
|
} else {
|
||||||
client.sendPacket(new PacketLinkProxy(proxy.getName(), 2, "Proxy already linked"));
|
client.sendPacket(new PacketLinkProxy(proxy.getName(), 2, "Proxy already linked"));
|
||||||
|
|
||||||
|
@ -140,7 +140,7 @@ public class PacketLinkServer implements InitialPacket, PacketObjectIn<Integer>,
|
|||||||
|
|
||||||
++req;
|
++req;
|
||||||
last = now;
|
last = now;
|
||||||
setReady(client, true);
|
setReady(client);
|
||||||
} else {
|
} else {
|
||||||
client.sendPacket(new PacketLinkServer(null, 4, "Server already linked"));
|
client.sendPacket(new PacketLinkServer(null, 4, "Server already linked"));
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,8 @@ package net.ME1312.SubServers.Bungee.Network;
|
|||||||
|
|
||||||
import net.ME1312.Galaxi.Library.Callback.Callback;
|
import net.ME1312.Galaxi.Library.Callback.Callback;
|
||||||
import net.ME1312.Galaxi.Library.Version.Version;
|
import net.ME1312.Galaxi.Library.Version.Version;
|
||||||
|
import net.ME1312.SubData.Server.Library.DataSize;
|
||||||
|
import net.ME1312.SubData.Server.SubDataClient;
|
||||||
import net.ME1312.SubData.Server.SubDataProtocol;
|
import net.ME1312.SubData.Server.SubDataProtocol;
|
||||||
import net.ME1312.SubData.Server.SubDataServer;
|
import net.ME1312.SubData.Server.SubDataServer;
|
||||||
import net.ME1312.SubServers.Bungee.Event.SubNetworkConnectEvent;
|
import net.ME1312.SubServers.Bungee.Event.SubNetworkConnectEvent;
|
||||||
@ -28,6 +30,7 @@ public class SubProtocol extends SubDataProtocol {
|
|||||||
|
|
||||||
setName("SubServers 2");
|
setName("SubServers 2");
|
||||||
setVersion(new Version("2.16a+"));
|
setVersion(new Version("2.16a+"));
|
||||||
|
setBlockSize(DataSize.MB);
|
||||||
|
|
||||||
|
|
||||||
// 00-0F: Object Link Packets
|
// 00-0F: Object Link Packets
|
||||||
@ -155,7 +158,10 @@ public class SubProtocol extends SubDataProtocol {
|
|||||||
subdata.on.closed(server -> plugin.subdata = null);
|
subdata.on.closed(server -> plugin.subdata = null);
|
||||||
subdata.on.connect(client -> {
|
subdata.on.connect(client -> {
|
||||||
if (!plugin.getPluginManager().callEvent(new SubNetworkConnectEvent(client.getServer(), client)).isCancelled()) {
|
if (!plugin.getPluginManager().callEvent(new SubNetworkConnectEvent(client.getServer(), client)).isCancelled()) {
|
||||||
client.on.ready(c -> plugin.getPluginManager().callEvent(new SubNetworkLoginEvent(c.getServer(), c)));
|
client.on.ready(c -> {
|
||||||
|
((SubDataClient) c).setBlockSize((int) DataSize.KBB);
|
||||||
|
plugin.getPluginManager().callEvent(new SubNetworkLoginEvent(c.getServer(), c));
|
||||||
|
});
|
||||||
client.on.closed(c -> plugin.getPluginManager().callEvent(new SubNetworkDisconnectEvent(c.value().getServer(), c.value(), c.key())));
|
client.on.closed(c -> plugin.getPluginManager().callEvent(new SubNetworkDisconnectEvent(c.value().getServer(), c.value(), c.key())));
|
||||||
return true;
|
return true;
|
||||||
} else return false;
|
} else return false;
|
||||||
|
@ -552,7 +552,6 @@ public final class SubProxy extends BungeeCommon implements Listener {
|
|||||||
subprotocol.unregisterCipher("AES-256");
|
subprotocol.unregisterCipher("AES-256");
|
||||||
subprotocol.unregisterCipher("RSA");
|
subprotocol.unregisterCipher("RSA");
|
||||||
|
|
||||||
subprotocol.setBlockSize(config.get().getMap("Settings").getMap("SubData").getLong("Block-Size", (long) DataSize.MB));
|
|
||||||
subprotocol.setTimeout(TimeUnit.SECONDS.toMillis(config.get().getMap("Settings").getMap("SubData").getInt("Timeout", 30)));
|
subprotocol.setTimeout(TimeUnit.SECONDS.toMillis(config.get().getMap("Settings").getMap("SubData").getInt("Timeout", 30)));
|
||||||
|
|
||||||
String cipher = config.get().getMap("Settings").getMap("SubData").getRawString("Encryption", "NULL");
|
String cipher = config.get().getMap("Settings").getMap("SubData").getRawString("Encryption", "NULL");
|
||||||
|
@ -62,7 +62,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.ME1312.SubData</groupId>
|
<groupId>net.ME1312.SubData</groupId>
|
||||||
<artifactId>Client</artifactId>
|
<artifactId>Client</artifactId>
|
||||||
<version>20w48b</version>
|
<version>21w04b</version>
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
<optional>true</optional>
|
<optional>true</optional>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
@ -53,7 +53,7 @@ public class PacketLinkServer implements InitialPacket, PacketObjectIn<Integer>,
|
|||||||
if (data.getInt(0x0001) == 0) {
|
if (data.getInt(0x0001) == 0) {
|
||||||
try {
|
try {
|
||||||
if (data.contains(0x0000)) Util.reflect(SubAPI.class.getDeclaredField("name"), plugin.api, data.getRawString(0x0000));
|
if (data.contains(0x0000)) Util.reflect(SubAPI.class.getDeclaredField("name"), plugin.api, data.getRawString(0x0000));
|
||||||
setReady(client.getConnection(), true);
|
setReady(client.getConnection());
|
||||||
} catch (Throwable e) {
|
} catch (Throwable e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,7 @@ import net.ME1312.Galaxi.Library.Container.Pair;
|
|||||||
import net.ME1312.Galaxi.Library.Map.ObjectMap;
|
import net.ME1312.Galaxi.Library.Map.ObjectMap;
|
||||||
import net.ME1312.Galaxi.Library.Util;
|
import net.ME1312.Galaxi.Library.Util;
|
||||||
import net.ME1312.Galaxi.Library.Version.Version;
|
import net.ME1312.Galaxi.Library.Version.Version;
|
||||||
|
import net.ME1312.SubData.Client.Library.DataSize;
|
||||||
import net.ME1312.SubData.Client.SubDataClient;
|
import net.ME1312.SubData.Client.SubDataClient;
|
||||||
import net.ME1312.SubData.Client.SubDataProtocol;
|
import net.ME1312.SubData.Client.SubDataProtocol;
|
||||||
import net.ME1312.SubServers.Client.Bukkit.Event.SubNetworkConnectEvent;
|
import net.ME1312.SubServers.Client.Bukkit.Event.SubNetworkConnectEvent;
|
||||||
@ -35,6 +36,7 @@ public class SubProtocol extends SubDataProtocol {
|
|||||||
|
|
||||||
setName("SubServers 2");
|
setName("SubServers 2");
|
||||||
addVersion(new Version("2.16a+"));
|
addVersion(new Version("2.16a+"));
|
||||||
|
setBlockSize(DataSize.MB);
|
||||||
|
|
||||||
|
|
||||||
// 00-0F: Object Link Packets
|
// 00-0F: Object Link Packets
|
||||||
@ -165,7 +167,10 @@ public class SubProtocol extends SubDataProtocol {
|
|||||||
|
|
||||||
subdata.sendPacket(new PacketLinkServer(plugin, 0));
|
subdata.sendPacket(new PacketLinkServer(plugin, 0));
|
||||||
subdata.sendPacket(new PacketDownloadLang());
|
subdata.sendPacket(new PacketDownloadLang());
|
||||||
subdata.on.ready(client -> Bukkit.getPluginManager().callEvent(new SubNetworkConnectEvent((SubDataClient) client)));
|
subdata.on.ready(client -> {
|
||||||
|
((SubDataClient) client).setBlockSize((int) DataSize.KBB);
|
||||||
|
Bukkit.getPluginManager().callEvent(new SubNetworkConnectEvent((SubDataClient) client));
|
||||||
|
});
|
||||||
subdata.on.closed(client -> {
|
subdata.on.closed(client -> {
|
||||||
SubNetworkDisconnectEvent event = new SubNetworkDisconnectEvent(client.value(), client.key());
|
SubNetworkDisconnectEvent event = new SubNetworkDisconnectEvent(client.value(), client.key());
|
||||||
|
|
||||||
|
@ -93,7 +93,6 @@ public final class SubPlugin extends JavaPlugin {
|
|||||||
subprotocol.registerCipher("DHE-128", DHE.get(128));
|
subprotocol.registerCipher("DHE-128", DHE.get(128));
|
||||||
subprotocol.registerCipher("DHE-192", DHE.get(192));
|
subprotocol.registerCipher("DHE-192", DHE.get(192));
|
||||||
subprotocol.registerCipher("DHE-256", DHE.get(256));
|
subprotocol.registerCipher("DHE-256", DHE.get(256));
|
||||||
subprotocol.setBlockSize(config.get().getMap("Settings").getMap("SubData").getLong("Block-Size", (long) DataSize.MB));
|
|
||||||
api.name = config.get().getMap("Settings").getMap("SubData").getString("Name", System.getenv("name"));
|
api.name = config.get().getMap("Settings").getMap("SubData").getString("Name", System.getenv("name"));
|
||||||
|
|
||||||
if (config.get().getMap("Settings").getMap("SubData").getRawString("Password", "").length() > 0) {
|
if (config.get().getMap("Settings").getMap("SubData").getRawString("Password", "").length() > 0) {
|
||||||
@ -219,7 +218,7 @@ public final class SubPlugin extends JavaPlugin {
|
|||||||
}
|
}
|
||||||
subdata.clear();
|
subdata.clear();
|
||||||
subdata.put(0, null);
|
subdata.put(0, null);
|
||||||
} catch (IOException | InterruptedException e) {
|
} catch (InterruptedException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.ME1312.SubData</groupId>
|
<groupId>net.ME1312.SubData</groupId>
|
||||||
<artifactId>Client</artifactId>
|
<artifactId>Client</artifactId>
|
||||||
<version>20w48b</version>
|
<version>21w04b</version>
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
@ -44,7 +44,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.ME1312.SubData</groupId>
|
<groupId>net.ME1312.SubData</groupId>
|
||||||
<artifactId>Client</artifactId>
|
<artifactId>Client</artifactId>
|
||||||
<version>20w48b</version>
|
<version>21w04b</version>
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
<optional>true</optional>
|
<optional>true</optional>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
@ -55,7 +55,7 @@ public class PacketLinkServer implements InitialPacket, PacketObjectIn<Integer>,
|
|||||||
if (data.getInt(0x0001) == 0) {
|
if (data.getInt(0x0001) == 0) {
|
||||||
try {
|
try {
|
||||||
if (data.contains(0x0000)) Util.reflect(SubAPI.class.getDeclaredField("name"), plugin.api, data.getRawString(0x0000));
|
if (data.contains(0x0000)) Util.reflect(SubAPI.class.getDeclaredField("name"), plugin.api, data.getRawString(0x0000));
|
||||||
setReady(client.getConnection(), true);
|
setReady(client.getConnection());
|
||||||
} catch (Throwable e) {
|
} catch (Throwable e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,7 @@ import net.ME1312.Galaxi.Library.Container.Pair;
|
|||||||
import net.ME1312.Galaxi.Library.Map.ObjectMap;
|
import net.ME1312.Galaxi.Library.Map.ObjectMap;
|
||||||
import net.ME1312.Galaxi.Library.Util;
|
import net.ME1312.Galaxi.Library.Util;
|
||||||
import net.ME1312.Galaxi.Library.Version.Version;
|
import net.ME1312.Galaxi.Library.Version.Version;
|
||||||
|
import net.ME1312.SubData.Client.Library.DataSize;
|
||||||
import net.ME1312.SubData.Client.SubDataClient;
|
import net.ME1312.SubData.Client.SubDataClient;
|
||||||
import net.ME1312.SubData.Client.SubDataProtocol;
|
import net.ME1312.SubData.Client.SubDataProtocol;
|
||||||
import net.ME1312.SubServers.Client.Common.Network.Packet.*;
|
import net.ME1312.SubServers.Client.Common.Network.Packet.*;
|
||||||
@ -38,6 +39,7 @@ public class SubProtocol extends SubDataProtocol {
|
|||||||
|
|
||||||
setName("SubServers 2");
|
setName("SubServers 2");
|
||||||
addVersion(new Version("2.16a+"));
|
addVersion(new Version("2.16a+"));
|
||||||
|
setBlockSize(DataSize.MB);
|
||||||
|
|
||||||
|
|
||||||
// 00-0F: Object Link Packets
|
// 00-0F: Object Link Packets
|
||||||
@ -172,7 +174,10 @@ public class SubProtocol extends SubDataProtocol {
|
|||||||
SubDataClient subdata = super.open(scheduler, logger, address, port);
|
SubDataClient subdata = super.open(scheduler, logger, address, port);
|
||||||
subdata.sendPacket(new PacketLinkServer(plugin, 0));
|
subdata.sendPacket(new PacketLinkServer(plugin, 0));
|
||||||
subdata.sendPacket(new PacketDownloadLang());
|
subdata.sendPacket(new PacketDownloadLang());
|
||||||
subdata.on.ready(client -> Sponge.getEventManager().post(new SubNetworkConnectEvent((SubDataClient) client)));
|
subdata.on.ready(client -> {
|
||||||
|
((SubDataClient) client).setBlockSize((int) DataSize.KBB);
|
||||||
|
Sponge.getEventManager().post(new SubNetworkConnectEvent((SubDataClient) client));
|
||||||
|
});
|
||||||
subdata.on.closed(client -> {
|
subdata.on.closed(client -> {
|
||||||
SubNetworkDisconnectEvent event = new SubNetworkDisconnectEvent(client.value(), client.key());
|
SubNetworkDisconnectEvent event = new SubNetworkDisconnectEvent(client.value(), client.key());
|
||||||
Sponge.getEventManager().post(event);
|
Sponge.getEventManager().post(event);
|
||||||
|
@ -112,7 +112,6 @@ public final class SubPlugin {
|
|||||||
subprotocol.registerCipher("DHE-128", DHE.get(128));
|
subprotocol.registerCipher("DHE-128", DHE.get(128));
|
||||||
subprotocol.registerCipher("DHE-192", DHE.get(192));
|
subprotocol.registerCipher("DHE-192", DHE.get(192));
|
||||||
subprotocol.registerCipher("DHE-256", DHE.get(256));
|
subprotocol.registerCipher("DHE-256", DHE.get(256));
|
||||||
subprotocol.setBlockSize(config.get().getMap("Settings").getMap("SubData").getLong("Block-Size", (long) DataSize.MB));
|
|
||||||
api.name = config.get().getMap("Settings").getMap("SubData").getString("Name", System.getenv("name"));
|
api.name = config.get().getMap("Settings").getMap("SubData").getString("Name", System.getenv("name"));
|
||||||
Logger log = LoggerFactory.getLogger("SubData");
|
Logger log = LoggerFactory.getLogger("SubData");
|
||||||
|
|
||||||
@ -247,7 +246,7 @@ public final class SubPlugin {
|
|||||||
}
|
}
|
||||||
subdata.clear();
|
subdata.clear();
|
||||||
subdata.put(0, null);
|
subdata.put(0, null);
|
||||||
} catch (IOException | InterruptedException e) {
|
} catch (InterruptedException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.ME1312.SubData</groupId>
|
<groupId>net.ME1312.SubData</groupId>
|
||||||
<artifactId>Client</artifactId>
|
<artifactId>Client</artifactId>
|
||||||
<version>20w48b</version>
|
<version>21w04b</version>
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
<optional>true</optional>
|
<optional>true</optional>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
@ -183,7 +183,6 @@ public final class ExHost {
|
|||||||
subprotocol.registerCipher("DHE-128", DHE.get(128));
|
subprotocol.registerCipher("DHE-128", DHE.get(128));
|
||||||
subprotocol.registerCipher("DHE-192", DHE.get(192));
|
subprotocol.registerCipher("DHE-192", DHE.get(192));
|
||||||
subprotocol.registerCipher("DHE-256", DHE.get(256));
|
subprotocol.registerCipher("DHE-256", DHE.get(256));
|
||||||
subprotocol.setBlockSize(config.get().getMap("Settings").getMap("SubData").getLong("Block-Size", (long) DataSize.MB));
|
|
||||||
api.name = config.get().getMap("Settings").getMap("SubData").getString("Name", null);
|
api.name = config.get().getMap("Settings").getMap("SubData").getString("Name", null);
|
||||||
Logger log = new Logger("SubData");
|
Logger log = new Logger("SubData");
|
||||||
|
|
||||||
|
@ -53,7 +53,7 @@ public class PacketLinkExHost implements InitialPacket, PacketObjectIn<Integer>,
|
|||||||
public void receive(SubDataSender client, ObjectMap<Integer> data) throws Throwable {
|
public void receive(SubDataSender client, ObjectMap<Integer> data) throws Throwable {
|
||||||
Logger log = Util.getDespiteException(() -> Util.reflect(SubDataClient.class.getDeclaredField("log"), client.getConnection()), null);
|
Logger log = Util.getDespiteException(() -> Util.reflect(SubDataClient.class.getDeclaredField("log"), client.getConnection()), null);
|
||||||
if (data.getInt(0x0001) == 0) {
|
if (data.getInt(0x0001) == 0) {
|
||||||
setReady(client.getConnection(), true);
|
setReady(client.getConnection());
|
||||||
} else {
|
} else {
|
||||||
log.severe("Could not link name with host" + ((data.contains(0x0002))?": "+data.getRawString(0x0002):'.'));
|
log.severe("Could not link name with host" + ((data.contains(0x0002))?": "+data.getRawString(0x0002):'.'));
|
||||||
DebugUtil.logException(new IllegalStateException(), log);
|
DebugUtil.logException(new IllegalStateException(), log);
|
||||||
|
@ -6,6 +6,7 @@ import net.ME1312.Galaxi.Library.Container.Pair;
|
|||||||
import net.ME1312.Galaxi.Library.Map.ObjectMap;
|
import net.ME1312.Galaxi.Library.Map.ObjectMap;
|
||||||
import net.ME1312.Galaxi.Library.Util;
|
import net.ME1312.Galaxi.Library.Util;
|
||||||
import net.ME1312.Galaxi.Library.Version.Version;
|
import net.ME1312.Galaxi.Library.Version.Version;
|
||||||
|
import net.ME1312.SubData.Client.Library.DataSize;
|
||||||
import net.ME1312.SubData.Client.SubDataClient;
|
import net.ME1312.SubData.Client.SubDataClient;
|
||||||
import net.ME1312.SubData.Client.SubDataProtocol;
|
import net.ME1312.SubData.Client.SubDataProtocol;
|
||||||
import net.ME1312.SubServers.Client.Common.Network.Packet.*;
|
import net.ME1312.SubServers.Client.Common.Network.Packet.*;
|
||||||
@ -33,6 +34,7 @@ public class SubProtocol extends SubDataProtocol {
|
|||||||
|
|
||||||
setName("SubServers 2");
|
setName("SubServers 2");
|
||||||
addVersion(new Version("2.16a+"));
|
addVersion(new Version("2.16a+"));
|
||||||
|
setBlockSize(DataSize.MB);
|
||||||
|
|
||||||
|
|
||||||
// 00-0F: Object Link Packets
|
// 00-0F: Object Link Packets
|
||||||
@ -163,14 +165,16 @@ public class SubProtocol extends SubDataProtocol {
|
|||||||
subdata.sendPacket(new PacketExDownloadTemplates(host));
|
subdata.sendPacket(new PacketExDownloadTemplates(host));
|
||||||
subdata.sendPacket(new PacketDownloadLang());
|
subdata.sendPacket(new PacketDownloadLang());
|
||||||
subdata.sendPacket(new PacketOutExRequestQueue());
|
subdata.sendPacket(new PacketOutExRequestQueue());
|
||||||
subdata.on.ready(client -> host.engine.getPluginManager().executeEvent(new SubNetworkConnectEvent((SubDataClient) client)));
|
subdata.on.ready(client -> {
|
||||||
|
((SubDataClient) client).setBlockSize((int) DataSize.KBB);
|
||||||
|
host.engine.getPluginManager().executeEvent(new SubNetworkConnectEvent((SubDataClient) client));
|
||||||
|
});
|
||||||
subdata.on.closed(client -> {
|
subdata.on.closed(client -> {
|
||||||
SubNetworkDisconnectEvent event = new SubNetworkDisconnectEvent(client.value(), client.key());
|
SubNetworkDisconnectEvent event = new SubNetworkDisconnectEvent(client.value(), client.key());
|
||||||
host.engine.getPluginManager().executeEvent(event);
|
host.engine.getPluginManager().executeEvent(event);
|
||||||
|
|
||||||
if (Util.getDespiteException(() -> Util.reflect(ExHost.class.getDeclaredField("running"), host), true)) {
|
if (Util.getDespiteException(() -> Util.reflect(ExHost.class.getDeclaredField("running"), host), true)) {
|
||||||
Logger log = Util.getDespiteException(() -> Util.reflect(SubDataClient.class.getDeclaredField("log"), client.value()), null);
|
Logger log = Util.getDespiteException(() -> Util.reflect(SubDataClient.class.getDeclaredField("log"), client.value()), null);
|
||||||
log.info("Attempting reconnect in " + host.config.get().getMap("Settings", new YAMLSection()).getMap("SubData", new YAMLSection()).getInt("Reconnect", 60) + " seconds");
|
|
||||||
Util.isException(() -> Util.reflect(ExHost.class.getDeclaredMethod("connect", Logger.class, Pair.class), host, log, client));
|
Util.isException(() -> Util.reflect(ExHost.class.getDeclaredMethod("connect", Logger.class, Pair.class), host, log, client));
|
||||||
} else map.put(0, null);
|
} else map.put(0, null);
|
||||||
});
|
});
|
||||||
|
@ -57,7 +57,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.ME1312.SubData</groupId>
|
<groupId>net.ME1312.SubData</groupId>
|
||||||
<artifactId>Client</artifactId>
|
<artifactId>Client</artifactId>
|
||||||
<version>20w48b</version>
|
<version>21w04b</version>
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
<optional>true</optional>
|
<optional>true</optional>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
@ -155,7 +155,6 @@ public final class ExProxy extends BungeeCommon implements Listener {
|
|||||||
subprotocol.unregisterCipher("AES-256");
|
subprotocol.unregisterCipher("AES-256");
|
||||||
subprotocol.unregisterCipher("RSA");
|
subprotocol.unregisterCipher("RSA");
|
||||||
|
|
||||||
subprotocol.setBlockSize(config.get().getMap("Settings").getMap("SubData").getLong("Block-Size", (long) DataSize.MB));
|
|
||||||
api.name = config.get().getMap("Settings").getMap("SubData").getString("Name", null);
|
api.name = config.get().getMap("Settings").getMap("SubData").getString("Name", null);
|
||||||
|
|
||||||
if (config.get().getMap("Settings").getMap("SubData").getRawString("Password", "").length() > 0) {
|
if (config.get().getMap("Settings").getMap("SubData").getRawString("Password", "").length() > 0) {
|
||||||
@ -178,7 +177,7 @@ public final class ExProxy extends BungeeCommon implements Listener {
|
|||||||
reconnect = true;
|
reconnect = true;
|
||||||
Logger.get("SubData").info("");
|
Logger.get("SubData").info("");
|
||||||
Logger.get("SubData").info("Connecting to /" + config.get().getMap("Settings").getMap("SubData").getRawString("Address", "127.0.0.1:4391"));
|
Logger.get("SubData").info("Connecting to /" + config.get().getMap("Settings").getMap("SubData").getRawString("Address", "127.0.0.1:4391"));
|
||||||
connect(null);
|
connect(Logger.get("SubData"), null);
|
||||||
|
|
||||||
super.startListeners();
|
super.startListeners();
|
||||||
|
|
||||||
@ -199,11 +198,12 @@ public final class ExProxy extends BungeeCommon implements Listener {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void connect(Pair<DisconnectReason, DataClient> disconnect) throws IOException {
|
private void connect(java.util.logging.Logger log, Pair<DisconnectReason, DataClient> disconnect) throws IOException {
|
||||||
int reconnect = config.get().getMap("Settings").getMap("SubData").getInt("Reconnect", 60);
|
int reconnect = config.get().getMap("Settings").getMap("SubData").getInt("Reconnect", 60);
|
||||||
if (disconnect == null || (this.reconnect && reconnect > 0 && disconnect.key() != DisconnectReason.PROTOCOL_MISMATCH && disconnect.key() != DisconnectReason.ENCRYPTION_MISMATCH)) {
|
if (disconnect == null || (this.reconnect && reconnect > 0 && disconnect.key() != DisconnectReason.PROTOCOL_MISMATCH && disconnect.key() != DisconnectReason.ENCRYPTION_MISMATCH)) {
|
||||||
long reset = resetDate;
|
long reset = resetDate;
|
||||||
Timer timer = new Timer("SubServers.Sync::SubData_Reconnect_Handler");
|
Timer timer = new Timer("SubServers.Sync::SubData_Reconnect_Handler");
|
||||||
|
if (disconnect != null) log.info("Attempting reconnect in " + reconnect + " seconds");
|
||||||
timer.scheduleAtFixedRate(new TimerTask() {
|
timer.scheduleAtFixedRate(new TimerTask() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
@ -51,7 +51,7 @@ public class PacketLinkProxy implements InitialPacket, PacketObjectIn<Integer>,
|
|||||||
if (data.getInt(0x0001) == 0) {
|
if (data.getInt(0x0001) == 0) {
|
||||||
try {
|
try {
|
||||||
if (data.contains(0x0000)) Util.reflect(SubAPI.class.getDeclaredField("name"), plugin.api, data.getRawString(0x0000));
|
if (data.contains(0x0000)) Util.reflect(SubAPI.class.getDeclaredField("name"), plugin.api, data.getRawString(0x0000));
|
||||||
setReady(client.getConnection(), true);
|
setReady(client.getConnection());
|
||||||
} catch (Throwable e) {
|
} catch (Throwable e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,7 @@ import net.ME1312.Galaxi.Library.Container.Pair;
|
|||||||
import net.ME1312.Galaxi.Library.Map.ObjectMap;
|
import net.ME1312.Galaxi.Library.Map.ObjectMap;
|
||||||
import net.ME1312.Galaxi.Library.Util;
|
import net.ME1312.Galaxi.Library.Util;
|
||||||
import net.ME1312.Galaxi.Library.Version.Version;
|
import net.ME1312.Galaxi.Library.Version.Version;
|
||||||
|
import net.ME1312.SubData.Client.Library.DataSize;
|
||||||
import net.ME1312.SubData.Client.SubDataClient;
|
import net.ME1312.SubData.Client.SubDataClient;
|
||||||
import net.ME1312.SubData.Client.SubDataProtocol;
|
import net.ME1312.SubData.Client.SubDataProtocol;
|
||||||
import net.ME1312.SubServers.Client.Common.Network.API.RemotePlayer;
|
import net.ME1312.SubServers.Client.Common.Network.API.RemotePlayer;
|
||||||
@ -42,6 +43,7 @@ public class SubProtocol extends SubDataProtocol {
|
|||||||
|
|
||||||
setName("SubServers 2");
|
setName("SubServers 2");
|
||||||
addVersion(new Version("2.16a+"));
|
addVersion(new Version("2.16a+"));
|
||||||
|
setBlockSize(DataSize.MB);
|
||||||
|
|
||||||
|
|
||||||
// 00-0F: Object Link Packets
|
// 00-0F: Object Link Packets
|
||||||
@ -199,14 +201,17 @@ public class SubProtocol extends SubDataProtocol {
|
|||||||
});
|
});
|
||||||
|
|
||||||
}));
|
}));
|
||||||
subdata.on.ready(client -> plugin.getPluginManager().callEvent(new SubNetworkConnectEvent((SubDataClient) client)));
|
subdata.on.ready(client -> {
|
||||||
|
((SubDataClient) client).setBlockSize((int) DataSize.KBB);
|
||||||
|
plugin.getPluginManager().callEvent(new SubNetworkConnectEvent((SubDataClient) client));
|
||||||
|
});
|
||||||
subdata.on.closed(client -> {
|
subdata.on.closed(client -> {
|
||||||
SubNetworkDisconnectEvent event = new SubNetworkDisconnectEvent(client.value(), client.key());
|
SubNetworkDisconnectEvent event = new SubNetworkDisconnectEvent(client.value(), client.key());
|
||||||
plugin.getPluginManager().callEvent(event);
|
plugin.getPluginManager().callEvent(event);
|
||||||
|
|
||||||
if (plugin.isRunning) {
|
if (plugin.isRunning) {
|
||||||
net.ME1312.SubServers.Bungee.Library.Compatibility.Logger.get("SubData").info("Attempting reconnect in " + plugin.config.get().getMap("Settings").getMap("SubData").getInt("Reconnect", 60) + " seconds");
|
Logger log = net.ME1312.SubServers.Bungee.Library.Compatibility.Logger.get("SubData");
|
||||||
Util.isException(() -> Util.reflect(ExProxy.class.getDeclaredMethod("connect", Pair.class), plugin, client));
|
Util.isException(() -> Util.reflect(ExProxy.class.getDeclaredMethod("connect", Logger.class, Pair.class), plugin, log, client));
|
||||||
} else map.put(0, null);
|
} else map.put(0, null);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user