Updated to new ProtocolVersion
This commit is contained in:
4
pom.xml
4
pom.xml
@@ -6,7 +6,7 @@
|
||||
|
||||
<groupId>org.openautonomousconnection</groupId>
|
||||
<artifactId>WebServer</artifactId>
|
||||
<version>1.0.0-BETA.1.1</version>
|
||||
<version>1.0.0-BETA.1.2</version>
|
||||
<organization>
|
||||
<name>Open Autonomous Connection</name>
|
||||
<url>https://open-autonomous-connection.org/</url>
|
||||
@@ -112,7 +112,7 @@
|
||||
<dependency>
|
||||
<groupId>org.openautonomousconnection</groupId>
|
||||
<artifactId>Protocol</artifactId>
|
||||
<version>1.0.0-BETA.5.2</version>
|
||||
<version>1.0.0-BETA.5.4</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
|
||||
@@ -9,7 +9,9 @@ import lombok.Getter;
|
||||
import org.openautonomousconnection.protocol.ProtocolBridge;
|
||||
import org.openautonomousconnection.protocol.ProtocolSettings;
|
||||
import org.openautonomousconnection.protocol.side.ins.ProtocolINSServer;
|
||||
import org.openautonomousconnection.protocol.side.web.WebServerConfig;
|
||||
import org.openautonomousconnection.protocol.versions.ProtocolVersion;
|
||||
import org.openautonomousconnection.protocol.versions.v1_0_0.classic.handlers.builtin.WebClassic;
|
||||
|
||||
import javax.annotation.processing.Generated;
|
||||
import java.io.File;
|
||||
@@ -29,9 +31,15 @@ public class Main {
|
||||
settings.eventManager = new EventManager();
|
||||
settings.port = 9824;
|
||||
|
||||
protocolBridge = new ProtocolBridge(new WebServer(new File("config.properties"),
|
||||
// TODO: Refactoring with port in Protocol-Project
|
||||
WebServerConfig serverConfig = new WebServerConfig(new File("config.properties"));
|
||||
settings.port = serverConfig.getPort();
|
||||
|
||||
protocolBridge = new ProtocolBridge(new WebServer(serverConfig,
|
||||
new File("auth.ini"), new File("rules.ini")),
|
||||
settings, ProtocolVersion.PV_1_0_0_BETA, new File("logs"));
|
||||
protocolBridge.setClassicHandlerWebServer(new WebClassic(protocolBridge));
|
||||
protocolBridge.getProtocolServer().getPipelineServer().start();
|
||||
|
||||
commandManager = new CommandManager(protocolBridge.getProtocolSettings().eventManager);
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
|
||||
@@ -2,8 +2,14 @@ package org.openautonomousconnection.webserver;
|
||||
|
||||
import org.openautonomousconnection.protocol.annotations.ProtocolInfo;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.*;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.web.WebRequestPacket;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.web.WebResponsePacket;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.web.stream.WebStreamChunkPacket;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.web.stream.WebStreamEndPacket;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.web.stream.WebStreamStartPacket;
|
||||
import org.openautonomousconnection.protocol.side.web.ConnectedWebClient;
|
||||
import org.openautonomousconnection.protocol.side.web.ProtocolWebServer;
|
||||
import org.openautonomousconnection.protocol.side.web.WebServerConfig;
|
||||
import org.openautonomousconnection.protocol.side.web.managers.RuleManager;
|
||||
import org.openautonomousconnection.protocol.side.web.managers.SessionManager;
|
||||
import org.openautonomousconnection.protocol.versions.ProtocolVersion;
|
||||
@@ -20,9 +26,8 @@ public final class WebServer extends ProtocolWebServer {
|
||||
private static final int STREAM_CHUNK_SIZE = 64 * 1024;
|
||||
private static final long STREAM_THRESHOLD = 2L * 1024 * 1024;
|
||||
|
||||
public WebServer(File configFile, File authFile, File rulesFile) throws Exception {
|
||||
super(configFile, authFile, rulesFile);
|
||||
Main.getProtocolBridge().getProtocolSettings().port = getConfigurationManager().getInt("port.webserver");
|
||||
public WebServer(WebServerConfig config, File authFile, File rulesFile) throws Exception {
|
||||
super(config, authFile, rulesFile);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -69,10 +74,10 @@ public final class WebServer extends ProtocolWebServer {
|
||||
return new WebResponsePacket(200, contentType, Map.of(), data);
|
||||
}
|
||||
|
||||
private void streamFile(ConnectedWebClient client, File file, String contentType) throws IOException {
|
||||
private void streamFile(ConnectedWebClient client, File file, String contentType) throws IOException, ClassNotFoundException {
|
||||
long total = file.length();
|
||||
|
||||
client.streamStart(new WebStreamStartPacket(200, contentType, Map.of("name", file.getName()), total));
|
||||
client.getPipelineConnection().sendPacket(new WebStreamStartPacket(200, contentType, Map.of("name", file.getName()), total));
|
||||
|
||||
try (InputStream in = new BufferedInputStream(new FileInputStream(file))) {
|
||||
byte[] buf = new byte[STREAM_CHUNK_SIZE];
|
||||
@@ -80,10 +85,10 @@ public final class WebServer extends ProtocolWebServer {
|
||||
int r;
|
||||
while ((r = in.read(buf)) != -1) {
|
||||
byte[] chunk = (r == buf.length) ? buf : Arrays.copyOf(buf, r);
|
||||
client.streamChunk(new WebStreamChunkPacket(seq++, chunk));
|
||||
client.getPipelineConnection().sendPacket(new WebStreamChunkPacket(seq++, chunk));
|
||||
}
|
||||
}
|
||||
|
||||
client.streamEnd(new WebStreamEndPacket(true));
|
||||
client.getPipelineConnection().sendPacket(new WebStreamEndPacket(true));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package org.openautonomousconnection.webserver.api;
|
||||
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.WebResponsePacket;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.web.WebResponsePacket;
|
||||
|
||||
/**
|
||||
* Server-side Java page (PHP alternative).
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package org.openautonomousconnection.webserver.api;
|
||||
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.WebRequestPacket;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.web.WebRequestPacket;
|
||||
import org.openautonomousconnection.protocol.side.web.ConnectedWebClient;
|
||||
import org.openautonomousconnection.protocol.side.web.ProtocolWebServer;
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package org.openautonomousconnection.webserver.runtime;
|
||||
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.WebRequestPacket;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.WebResponsePacket;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.web.WebRequestPacket;
|
||||
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.web.WebResponsePacket;
|
||||
import org.openautonomousconnection.protocol.side.web.ConnectedWebClient;
|
||||
import org.openautonomousconnection.protocol.side.web.ProtocolWebServer;
|
||||
import org.openautonomousconnection.webserver.api.WebPage;
|
||||
|
||||
Reference in New Issue
Block a user