- Started with WebServer
This commit is contained in:
@@ -3,8 +3,10 @@ package org.openautonomousconnection.protocol;
|
||||
import dev.unlegitdqrk.unlegitlibrary.utils.Logger;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import org.openautonomousconnection.protocol.annotations.ProtocolInfo;
|
||||
import org.openautonomousconnection.protocol.listeners.ClientListener;
|
||||
import org.openautonomousconnection.protocol.listeners.DNSServerListener;
|
||||
import org.openautonomousconnection.protocol.listeners.WebServerListener;
|
||||
import org.openautonomousconnection.protocol.packets.OACPacket;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.AuthPacket;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.GetDestinationPacket;
|
||||
@@ -16,7 +18,8 @@ import org.openautonomousconnection.protocol.side.dns.ProtocolDNSServer;
|
||||
import org.openautonomousconnection.protocol.side.web.ProtocolWebServer;
|
||||
import org.openautonomousconnection.protocol.versions.ProtocolVersion;
|
||||
import org.openautonomousconnection.protocol.versions.v1_0_0.classic.ClassicHandlerClient;
|
||||
import org.openautonomousconnection.protocol.versions.v1_0_0.classic.ClassicHandlerServer;
|
||||
import org.openautonomousconnection.protocol.versions.v1_0_0.classic.ClassicHandlerDNSServer;
|
||||
import org.openautonomousconnection.protocol.versions.v1_0_0.classic.ClassicHandlerWebServer;
|
||||
import org.openautonomousconnection.protocol.versions.v1_0_0.classic.Classic_ClientListener;
|
||||
|
||||
import java.io.File;
|
||||
@@ -41,11 +44,15 @@ public class ProtocolBridge {
|
||||
private ProtocolWebServer protocolWebServer;
|
||||
@Getter
|
||||
@Setter
|
||||
private ClassicHandlerServer classicHandlerServer;
|
||||
private ClassicHandlerDNSServer classicHandlerDNSServer;
|
||||
@Getter
|
||||
@Setter
|
||||
private ClassicHandlerWebServer classicHandlerWebServer;
|
||||
@Getter
|
||||
@Setter
|
||||
private ClassicHandlerClient classicHandlerClient;
|
||||
|
||||
@ProtocolInfo(protocolSide = ProtocolVersion.ProtocolSide.DNS)
|
||||
public ProtocolBridge(ProtocolDNSServer protocolDNSServer, ProtocolSettings protocolSettings, ProtocolVersion protocolVersion, File logFolder) throws InvocationTargetException, InstantiationException, IllegalAccessException, NoSuchMethodException {
|
||||
this.protocolDNSServer = protocolDNSServer;
|
||||
this.protocolSettings = protocolSettings;
|
||||
@@ -62,6 +69,7 @@ public class ProtocolBridge {
|
||||
|
||||
this.logger = tmpLogger;
|
||||
protocolSettings.eventManager.registerListener(new DNSServerListener());
|
||||
protocolSettings.eventManager.unregisterListener(new WebServerListener());
|
||||
protocolSettings.eventManager.unregisterListener(new ClientListener());
|
||||
|
||||
if (!validateProtocolSide()) {
|
||||
@@ -75,6 +83,38 @@ public class ProtocolBridge {
|
||||
instance = this;
|
||||
}
|
||||
|
||||
@ProtocolInfo(protocolSide = ProtocolVersion.ProtocolSide.WEB)
|
||||
public ProtocolBridge(ProtocolWebServer protocolWebServer, ProtocolSettings protocolSettings, ProtocolVersion protocolVersion, File logFolder) throws InvocationTargetException, InstantiationException, IllegalAccessException, NoSuchMethodException {
|
||||
this.protocolWebServer = protocolWebServer;
|
||||
this.protocolSettings = protocolSettings;
|
||||
this.protocolVersion = protocolVersion;
|
||||
|
||||
Logger tmpLogger = null;
|
||||
try {
|
||||
tmpLogger = new Logger(logFolder, false, true);
|
||||
} catch (IOException | NoSuchFieldException | IllegalAccessException exception) {
|
||||
exception.printStackTrace();
|
||||
tmpLogger = null;
|
||||
System.exit(1);
|
||||
}
|
||||
|
||||
this.logger = tmpLogger;
|
||||
protocolSettings.eventManager.unregisterListener(new DNSServerListener());
|
||||
protocolSettings.eventManager.registerListener(new WebServerListener());
|
||||
protocolSettings.eventManager.unregisterListener(new ClientListener());
|
||||
|
||||
if (!validateProtocolSide()) {
|
||||
this.logger.error("Invalid protocol version '" + protocolVersion.toString() + "'!");
|
||||
System.exit(1);
|
||||
}
|
||||
|
||||
if (isClassicSupported()) protocolSettings.eventManager.unregisterListener(new Classic_ClientListener());
|
||||
registerPackets();
|
||||
|
||||
instance = this;
|
||||
}
|
||||
|
||||
@ProtocolInfo(protocolSide = ProtocolVersion.ProtocolSide.CLIENT)
|
||||
public ProtocolBridge(ProtocolClient protocolClient, ProtocolSettings protocolSettings, ProtocolVersion protocolVersion, File logFolder) throws InvocationTargetException, InstantiationException, IllegalAccessException, NoSuchMethodException {
|
||||
this.protocolClient = protocolClient;
|
||||
this.protocolSettings = protocolSettings;
|
||||
@@ -91,6 +131,7 @@ public class ProtocolBridge {
|
||||
|
||||
this.logger = tmpLogger;
|
||||
protocolSettings.eventManager.registerListener(new ClientListener());
|
||||
protocolSettings.eventManager.unregisterListener(new WebServerListener());
|
||||
protocolSettings.eventManager.unregisterListener(new DNSServerListener());
|
||||
|
||||
if (!validateProtocolSide()) {
|
||||
|
Reference in New Issue
Block a user