first commit

This commit is contained in:
Finn
2026-01-16 23:45:06 +01:00
commit 20df71f96d
37 changed files with 3244 additions and 0 deletions

View File

@@ -0,0 +1,84 @@
package org.openautonomousconnection.oac2web;
import com.google.gson.JsonObject;
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.WebResponsePacket;
import org.openautonomousconnection.protocol.versions.v1_0_0.beta.WebRequestMethod;
import org.openautonomousconnection.webserver.api.WebPage;
import org.openautonomousconnection.webserver.api.WebPageContext;
import javax.net.ssl.HttpsURLConnection;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.URL;
import java.net.http.HttpClient;
import java.net.http.HttpResponse;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Map;
public class api implements WebPage {
@Override
public WebResponsePacket handle(WebPageContext webPageContext) throws Exception {
if (webPageContext.request.getMethod() == WebRequestMethod.POST) {
String hostIp = webPageContext.request.getHeaders().get("hostip");
String description = webPageContext.request.getHeaders().get("description");
int port = 0;
try {
port = Integer.parseInt(webPageContext.request.getHeaders().get("port"));
} catch (NumberFormatException exception) {
return new WebResponsePacket(400, "text/plain", webPageContext.request.getHeaders(),
("Bad request:\n" + exception.getMessage()).getBytes());
}
String hidden = "ins";
try {
HashMap<String, String> dataMap = new HashMap<>();
dataMap.put("insIp", hostIp);
dataMap.put("insPort", String.valueOf(port));
dataMap.put("insDesc", description);
URL url = new URL("https://open-autonomous-connection.org/api/add.php");
HttpsURLConnection connection = (HttpsURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "application/json");
connection.setDoOutput(true);
JsonObject jsonData = new JsonObject();
for (Map.Entry<String, String> entry : dataMap.entrySet()) {
jsonData.addProperty(entry.getKey(), entry.getValue());
try (OutputStream os = connection.getOutputStream()) {
byte[] input = jsonData.toString().getBytes(StandardCharsets.UTF_8);
os.write(input, 0, input.length);
}
}
int responseCode = connection.getResponseCode();
StringBuilder response = new StringBuilder();
try (BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()))) {
String inputLine;
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
}
connection.disconnect();
return new WebResponsePacket(200, "text/plain", webPageContext.request.getHeaders(), ("Published\n" +
"Received Response Code: " + responseCode + "\n" + "Received Response: " + response).getBytes());
} catch (Exception e) {
return new WebResponsePacket(500, "text/plain", webPageContext.request.getHeaders(),
("Bad request:\n" + e.getMessage()).getBytes());
}
}
return new WebResponsePacket(400, "text/plain", webPageContext.request.getHeaders(), "Bad request".getBytes());
}
}

View File

@@ -0,0 +1,32 @@
package org.openautonomousconnection.oac2web;
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.WebResponsePacket;
import org.openautonomousconnection.webserver.api.WebPage;
import org.openautonomousconnection.webserver.api.WebPageContext;
import java.net.URL;
import java.net.URLConnection;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Scanner;
public class download implements WebPage {
@Override
public WebResponsePacket handle(WebPageContext webPageContext) throws Exception {
String content = null;
URLConnection connection = null;
try {
connection = new URL("https://open-autonomous-connection.org/download.html").openConnection();
Scanner scanner = new Scanner(connection.getInputStream());
scanner.useDelimiter("\\Z");
content = scanner.next();
scanner.close();
}catch ( Exception ex ) {
content = ex.getMessage();
ex.printStackTrace();
}
return new WebResponsePacket(308, "text/html", new HashMap<>(), content.getBytes(StandardCharsets.UTF_8));
}
}

View File

@@ -0,0 +1,33 @@
package org.openautonomousconnection.oac2web;
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.WebResponsePacket;
import org.openautonomousconnection.webserver.api.WebPage;
import org.openautonomousconnection.webserver.api.WebPageContext;
import java.net.URL;
import java.net.URLConnection;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class index implements WebPage {
@Override
public WebResponsePacket handle(WebPageContext webPageContext) throws Exception {
String content = null;
URLConnection connection = null;
try {
connection = new URL("https://open-autonomous-connection.org/index.html").openConnection();
Scanner scanner = new Scanner(connection.getInputStream());
scanner.useDelimiter("\\Z");
content = scanner.next();
scanner.close();
}catch ( Exception ex ) {
content = ex.getMessage();
ex.printStackTrace();
}
return new WebResponsePacket(308, "text/html", new HashMap<>(), content.getBytes(StandardCharsets.UTF_8));
}
}

View File

@@ -0,0 +1,32 @@
package org.openautonomousconnection.oac2web;
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.WebResponsePacket;
import org.openautonomousconnection.webserver.api.WebPage;
import org.openautonomousconnection.webserver.api.WebPageContext;
import java.net.URL;
import java.net.URLConnection;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Scanner;
public class ins implements WebPage {
@Override
public WebResponsePacket handle(WebPageContext webPageContext) throws Exception {
String content = null;
URLConnection connection = null;
try {
connection = new URL("https://open-autonomous-connection.org/ins.php").openConnection();
Scanner scanner = new Scanner(connection.getInputStream());
scanner.useDelimiter("\\Z");
content = scanner.next();
scanner.close();
}catch ( Exception ex ) {
content = ex.getMessage();
ex.printStackTrace();
}
return new WebResponsePacket(308, "text/html", new HashMap<>(), content.getBytes(StandardCharsets.UTF_8));
}
}

View File

@@ -0,0 +1,32 @@
package org.openautonomousconnection.oac2web;
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.WebResponsePacket;
import org.openautonomousconnection.webserver.api.WebPage;
import org.openautonomousconnection.webserver.api.WebPageContext;
import java.net.URL;
import java.net.URLConnection;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Scanner;
public class license implements WebPage {
@Override
public WebResponsePacket handle(WebPageContext webPageContext) throws Exception {
String content = null;
URLConnection connection = null;
try {
connection = new URL("https://open-autonomous-connection.org/license.html").openConnection();
Scanner scanner = new Scanner(connection.getInputStream());
scanner.useDelimiter("\\Z");
content = scanner.next();
scanner.close();
}catch ( Exception ex ) {
content = ex.getMessage();
ex.printStackTrace();
}
return new WebResponsePacket(308, "text/html", new HashMap<>(), content.getBytes(StandardCharsets.UTF_8));
}
}

View File

@@ -0,0 +1,32 @@
package org.openautonomousconnection.oac2web;
import org.openautonomousconnection.protocol.packets.v1_0_0.beta.WebResponsePacket;
import org.openautonomousconnection.webserver.api.WebPage;
import org.openautonomousconnection.webserver.api.WebPageContext;
import java.net.URL;
import java.net.URLConnection;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Scanner;
public class wiki implements WebPage {
@Override
public WebResponsePacket handle(WebPageContext webPageContext) throws Exception {
String content = null;
URLConnection connection = null;
try {
connection = new URL("https://open-autonomous-connection.org/wiki.html").openConnection();
Scanner scanner = new Scanner(connection.getInputStream());
scanner.useDelimiter("\\Z");
content = scanner.next();
scanner.close();
}catch ( Exception ex ) {
content = ex.getMessage();
ex.printStackTrace();
}
return new WebResponsePacket(308, "text/html", new HashMap<>(), content.getBytes(StandardCharsets.UTF_8));
}
}