From 846fa167bc86cb64e221fca9650a3030ba08c74f Mon Sep 17 00:00:00 2001 From: Tinglyyy Date: Mon, 29 Sep 2025 18:22:08 +0200 Subject: [PATCH] Revert "Revert "- Maked classes final"" This reverts commit 742059ff67cee2bfc0cde49e0bf530943188e0df. --- .../protocol/ProtocolBridge.java | 2 +- .../protocol/ProtocolSettings.java | 2 +- .../UnsupportedProtocolException.java | 2 +- .../protocol/listeners/ClientListener.java | 2 +- .../protocol/listeners/DNSServerListener.java | 2 +- .../protocol/listeners/WebServerListener.java | 2 +- .../packets/v1_0_0/beta/AuthPacket.java | 2 +- .../v1_0_0/beta/GetDestinationPacket.java | 2 +- .../v1_0_0/beta/UnsupportedClassicPacket.java | 2 +- .../v1_0_0/beta/ValidateDomainPacket.java | 2 +- .../v1_0_0/classic/Classic_DomainPacket.java | 2 +- .../v1_0_0/classic/Classic_MessagePacket.java | 2 +- .../v1_0_0/classic/Classic_PingPacket.java | 2 +- .../ConnectedToProtocolDNSServerEvent.java | 2 +- .../protocol/side/web/ProtocolWebServer.java | 29 ++++++++++++++++++- .../side/web/managers/AuthManager.java | 4 +-- .../side/web/managers/RuleManager.java | 2 +- .../side/web/managers/SessionManager.java | 9 +++--- .../protocol/versions/v1_0_0/beta/Domain.java | 2 +- .../Classic_DomainPacketReceivedEvent.java | 2 +- .../Classic_PingPacketReceivedEvent.java | 2 +- .../classic/objects/Classic_Domain.java | 2 +- .../classic/objects/Classic_LocalDomain.java | 2 +- .../objects/Classic_RequestDomain.java | 2 +- .../classic/site/Classic_WebsitesContent.java | 2 +- .../classic/utils/ClassicConverter.java | 2 +- .../classic/utils/Classic_ClientListener.java | 2 +- 27 files changed, 59 insertions(+), 31 deletions(-) diff --git a/src/main/java/org/openautonomousconnection/protocol/ProtocolBridge.java b/src/main/java/org/openautonomousconnection/protocol/ProtocolBridge.java index 80051a0..a06e567 100644 --- a/src/main/java/org/openautonomousconnection/protocol/ProtocolBridge.java +++ b/src/main/java/org/openautonomousconnection/protocol/ProtocolBridge.java @@ -30,7 +30,7 @@ import java.lang.reflect.InvocationTargetException; * The main bridge class for the protocol connection. * It manages the protocol settings, version, and side instances. */ -public class ProtocolBridge { +public final class ProtocolBridge { /** * The singleton instance of the ProtocolBridge class diff --git a/src/main/java/org/openautonomousconnection/protocol/ProtocolSettings.java b/src/main/java/org/openautonomousconnection/protocol/ProtocolSettings.java index df259a0..d303642 100644 --- a/src/main/java/org/openautonomousconnection/protocol/ProtocolSettings.java +++ b/src/main/java/org/openautonomousconnection/protocol/ProtocolSettings.java @@ -7,7 +7,7 @@ import dev.unlegitdqrk.unlegitlibrary.utils.DefaultMethodsOverrider; /** * Settings for the protocol connection. */ -public class ProtocolSettings extends DefaultMethodsOverrider { +public final class ProtocolSettings extends DefaultMethodsOverrider { /** * The host to connect to. diff --git a/src/main/java/org/openautonomousconnection/protocol/exceptions/UnsupportedProtocolException.java b/src/main/java/org/openautonomousconnection/protocol/exceptions/UnsupportedProtocolException.java index a3bf9b7..f0ad383 100644 --- a/src/main/java/org/openautonomousconnection/protocol/exceptions/UnsupportedProtocolException.java +++ b/src/main/java/org/openautonomousconnection/protocol/exceptions/UnsupportedProtocolException.java @@ -3,7 +3,7 @@ package org.openautonomousconnection.protocol.exceptions; /** * Exception thrown when an unsupported protocol is encountered. */ -public class UnsupportedProtocolException extends RuntimeException { +public final class UnsupportedProtocolException extends RuntimeException { public UnsupportedProtocolException() { this("Selected protocol is not supported!"); diff --git a/src/main/java/org/openautonomousconnection/protocol/listeners/ClientListener.java b/src/main/java/org/openautonomousconnection/protocol/listeners/ClientListener.java index d3ec9d0..b9c6299 100644 --- a/src/main/java/org/openautonomousconnection/protocol/listeners/ClientListener.java +++ b/src/main/java/org/openautonomousconnection/protocol/listeners/ClientListener.java @@ -15,7 +15,7 @@ import java.io.IOException; * Listener for client-side events such as connection and disconnection. */ @ProtocolInfo(protocolSide = ProtocolVersion.ProtocolSide.CLIENT) -public class ClientListener extends EventListener { +public final class ClientListener extends EventListener { /** * Handles the event when a client connects. diff --git a/src/main/java/org/openautonomousconnection/protocol/listeners/DNSServerListener.java b/src/main/java/org/openautonomousconnection/protocol/listeners/DNSServerListener.java index e545665..e33143a 100644 --- a/src/main/java/org/openautonomousconnection/protocol/listeners/DNSServerListener.java +++ b/src/main/java/org/openautonomousconnection/protocol/listeners/DNSServerListener.java @@ -13,7 +13,7 @@ import org.openautonomousconnection.protocol.versions.ProtocolVersion; * Listener for DNS server connection events. */ @ProtocolInfo(protocolSide = ProtocolVersion.ProtocolSide.DNS) -public class DNSServerListener extends EventListener { +public final class DNSServerListener extends EventListener { /** * Handles the event when a connection handler connects to the DNS server. diff --git a/src/main/java/org/openautonomousconnection/protocol/listeners/WebServerListener.java b/src/main/java/org/openautonomousconnection/protocol/listeners/WebServerListener.java index 2109252..616eb27 100644 --- a/src/main/java/org/openautonomousconnection/protocol/listeners/WebServerListener.java +++ b/src/main/java/org/openautonomousconnection/protocol/listeners/WebServerListener.java @@ -13,7 +13,7 @@ import org.openautonomousconnection.protocol.versions.ProtocolVersion; * Listener for web server connection events. */ @ProtocolInfo(protocolSide = ProtocolVersion.ProtocolSide.WEB) -public class WebServerListener extends EventListener { +public final class WebServerListener extends EventListener { /** * Handles the event when a connection is established. diff --git a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/AuthPacket.java b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/AuthPacket.java index cb6e29f..5e459f0 100644 --- a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/AuthPacket.java +++ b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/AuthPacket.java @@ -18,7 +18,7 @@ import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; -public class AuthPacket extends OACPacket { +public final class AuthPacket extends OACPacket { File certificatesFolder = new File("certificates"); File publicFolder = new File(certificatesFolder, "public"); diff --git a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/GetDestinationPacket.java b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/GetDestinationPacket.java index 193a918..e87ba98 100644 --- a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/GetDestinationPacket.java +++ b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/GetDestinationPacket.java @@ -11,7 +11,7 @@ import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; -public class GetDestinationPacket extends OACPacket { +public final class GetDestinationPacket extends OACPacket { private Domain domain; private int clientID; private DNSResponseCode validationResponse; diff --git a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/UnsupportedClassicPacket.java b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/UnsupportedClassicPacket.java index ef27178..63e27bc 100644 --- a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/UnsupportedClassicPacket.java +++ b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/UnsupportedClassicPacket.java @@ -10,7 +10,7 @@ import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; -public class UnsupportedClassicPacket extends OACPacket { +public final class UnsupportedClassicPacket extends OACPacket { private Class unsupportedClassicPacket; private Object[] content; diff --git a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/ValidateDomainPacket.java b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/ValidateDomainPacket.java index 4a33a48..c6b6de5 100644 --- a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/ValidateDomainPacket.java +++ b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/beta/ValidateDomainPacket.java @@ -10,7 +10,7 @@ import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; -public class ValidateDomainPacket extends OACPacket { +public final class ValidateDomainPacket extends OACPacket { private Domain domain; private int clientID; diff --git a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_DomainPacket.java b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_DomainPacket.java index 2ea61cf..f7ac1e7 100644 --- a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_DomainPacket.java +++ b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_DomainPacket.java @@ -15,7 +15,7 @@ import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.sql.SQLException; -public class Classic_DomainPacket extends OACPacket { +public final class Classic_DomainPacket extends OACPacket { private Classic_RequestDomain requestDomain; private Classic_Domain domain; private int clientID; diff --git a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_MessagePacket.java b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_MessagePacket.java index 0037eaf..262701e 100644 --- a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_MessagePacket.java +++ b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_MessagePacket.java @@ -10,7 +10,7 @@ import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; -public class Classic_MessagePacket extends OACPacket { +public final class Classic_MessagePacket extends OACPacket { private String message; private int clientID; diff --git a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_PingPacket.java b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_PingPacket.java index 6c8cfb4..37f61cb 100644 --- a/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_PingPacket.java +++ b/src/main/java/org/openautonomousconnection/protocol/packets/v1_0_0/classic/Classic_PingPacket.java @@ -16,7 +16,7 @@ import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.sql.SQLException; -public class Classic_PingPacket extends OACPacket { +public final class Classic_PingPacket extends OACPacket { private Classic_RequestDomain requestDomain; private Classic_Domain domain; private int clientID; diff --git a/src/main/java/org/openautonomousconnection/protocol/side/client/events/ConnectedToProtocolDNSServerEvent.java b/src/main/java/org/openautonomousconnection/protocol/side/client/events/ConnectedToProtocolDNSServerEvent.java index 2695cec..dc0c5ab 100644 --- a/src/main/java/org/openautonomousconnection/protocol/side/client/events/ConnectedToProtocolDNSServerEvent.java +++ b/src/main/java/org/openautonomousconnection/protocol/side/client/events/ConnectedToProtocolDNSServerEvent.java @@ -8,5 +8,5 @@ import org.openautonomousconnection.protocol.versions.ProtocolVersion; * Event triggered when a client successfully connects to a DNS protocol server. */ @ProtocolInfo(protocolSide = ProtocolVersion.ProtocolSide.DNS) -public class ConnectedToProtocolDNSServerEvent extends Event { +public final class ConnectedToProtocolDNSServerEvent extends Event { } diff --git a/src/main/java/org/openautonomousconnection/protocol/side/web/ProtocolWebServer.java b/src/main/java/org/openautonomousconnection/protocol/side/web/ProtocolWebServer.java index bdf6a40..ec41a67 100644 --- a/src/main/java/org/openautonomousconnection/protocol/side/web/ProtocolWebServer.java +++ b/src/main/java/org/openautonomousconnection/protocol/side/web/ProtocolWebServer.java @@ -4,6 +4,7 @@ import dev.unlegitdqrk.unlegitlibrary.file.ConfigurationManager; import dev.unlegitdqrk.unlegitlibrary.file.FileUtils; import dev.unlegitdqrk.unlegitlibrary.network.system.server.NetworkServer; import dev.unlegitdqrk.unlegitlibrary.network.utils.NetworkUtils; +import dev.unlegitdqrk.unlegitlibrary.string.RandomString; import lombok.Getter; import org.openautonomousconnection.protocol.ProtocolBridge; import org.openautonomousconnection.protocol.annotations.ProtocolInfo; @@ -19,12 +20,13 @@ import java.io.IOException; import java.security.cert.CertificateException; import java.util.ArrayList; import java.util.List; +import java.util.Random; /** * Represents the web server for the protocol. */ @ProtocolInfo(protocolSide = ProtocolVersion.ProtocolSide.WEB) -public class ProtocolWebServer { +public final class ProtocolWebServer { /** * Folder for web content. */ @@ -76,6 +78,17 @@ public class ProtocolWebServer { @Getter private List clients; + /** + * The configuration file for the web server. + */ + private final File configFile; + + /** + * A unique secret for session management. + */ + @Getter + private String uniqueSessionString; + /** * Initializes the web server with the given configuration, authentication, and rules files. * @param configFile The configuration file. @@ -87,6 +100,9 @@ public class ProtocolWebServer { // Initialize the list of connected clients this.clients = new ArrayList<>(); + // Store the configuration file + this.configFile = configFile; + // Set up folder structure for certificates folderStructure = new ServerCertificateFolderStructure(); @@ -140,6 +156,8 @@ public class ProtocolWebServer { } // Load authentication and rules + uniqueSessionString = AuthManager.sha256(new RandomString(new Random(System.currentTimeMillis()).nextInt(10, 20)).nextString()); + AuthManager.loadAuthFile(authFile); RuleManager.loadRules(rulesFile); @@ -261,6 +279,15 @@ public class ProtocolWebServer { if (!found) throw new CertificateException("Missing " + prefix + NetworkUtils.getPublicIPAddress() + extension); } + /** + * Retrieves the configuration manager for the web server. + * @return The configuration manager. + * @throws IOException If an I/O error occurs while loading or saving the configuration. + */ + public final ConfigurationManager getConfigurationManager() throws IOException { + return getConfigurationManager(configFile); + } + /** * Loads and initializes the configuration manager with default settings if necessary. * @param configFile The configuration file to load. diff --git a/src/main/java/org/openautonomousconnection/protocol/side/web/managers/AuthManager.java b/src/main/java/org/openautonomousconnection/protocol/side/web/managers/AuthManager.java index 0cc228a..d9be7cb 100644 --- a/src/main/java/org/openautonomousconnection/protocol/side/web/managers/AuthManager.java +++ b/src/main/java/org/openautonomousconnection/protocol/side/web/managers/AuthManager.java @@ -16,7 +16,7 @@ import java.util.Map; * Loads user credentials from a file and verifies login attempts. */ @ProtocolInfo(protocolSide = ProtocolVersion.ProtocolSide.WEB) -public class AuthManager { +public final class AuthManager { /** * Map of usernames to their SHA-256 hashed passwords @@ -67,7 +67,7 @@ public class AuthManager { * @param input The input string to hash. * @return The hexadecimal representation of the SHA-256 hash. */ - private static String sha256(String input) { + public static String sha256(String input) { try { MessageDigest md = MessageDigest.getInstance("SHA-256"); byte[] digest = md.digest(input.getBytes(StandardCharsets.UTF_8)); diff --git a/src/main/java/org/openautonomousconnection/protocol/side/web/managers/RuleManager.java b/src/main/java/org/openautonomousconnection/protocol/side/web/managers/RuleManager.java index 0d02392..67f013e 100644 --- a/src/main/java/org/openautonomousconnection/protocol/side/web/managers/RuleManager.java +++ b/src/main/java/org/openautonomousconnection/protocol/side/web/managers/RuleManager.java @@ -15,7 +15,7 @@ import java.util.Map; * Loads allow, deny, and auth rules from a JSON file and provides methods to check access. */ @ProtocolInfo(protocolSide = ProtocolVersion.ProtocolSide.WEB) -public class RuleManager { +public final class RuleManager { /** * Lists of path patterns for allow, deny, and auth rules */ diff --git a/src/main/java/org/openautonomousconnection/protocol/side/web/managers/SessionManager.java b/src/main/java/org/openautonomousconnection/protocol/side/web/managers/SessionManager.java index 6a8b936..c3acb25 100644 --- a/src/main/java/org/openautonomousconnection/protocol/side/web/managers/SessionManager.java +++ b/src/main/java/org/openautonomousconnection/protocol/side/web/managers/SessionManager.java @@ -1,6 +1,7 @@ package org.openautonomousconnection.protocol.side.web.managers; import lombok.Getter; +import org.openautonomousconnection.protocol.ProtocolBridge; import org.openautonomousconnection.protocol.annotations.ProtocolInfo; import org.openautonomousconnection.protocol.versions.ProtocolVersion; @@ -15,7 +16,7 @@ import java.util.concurrent.ConcurrentHashMap; * Provides methods to create, validate, and invalidate sessions. */ @ProtocolInfo(protocolSide = ProtocolVersion.ProtocolSide.WEB) -public class SessionManager { +public final class SessionManager { /** * Map of session IDs to Session objects. @@ -41,7 +42,7 @@ public class SessionManager { secureRandom.nextBytes(bytes); // Encode the bytes to a URL-safe Base64 string - String sessionId = Base64.getUrlEncoder().withoutPadding().encodeToString(bytes); + String sessionId = Base64.getUrlEncoder().withoutPadding().encodeToString(bytes) + ProtocolBridge.getInstance().getProtocolWebServer().getUniqueSessionString(); // Create and store the new session sessions.put(sessionId, new Session(login, ip, userAgent)); @@ -121,7 +122,7 @@ public class SessionManager { this.login = login; this.ip = ip; this.userAgent = userAgent; - this.expiresAt = System.currentTimeMillis() + Main.getConfigurationManager().getInt("sessionexpireminutes") * 60 * 1000; + this.expiresAt = System.currentTimeMillis() + (long) ProtocolBridge.getInstance().getProtocolWebServer().getConfigurationManager().getInt("sessionexpireminutes") * 60 * 1000; } /** @@ -147,7 +148,7 @@ public class SessionManager { * @throws IOException If an I/O error occurs. */ void refresh() throws IOException { - this.expiresAt = System.currentTimeMillis() + Main.getConfigurationManager().getInt("sessionexpireminutes") * 60 * 1000; + this.expiresAt = System.currentTimeMillis() + (long) ProtocolBridge.getInstance().getProtocolWebServer().getConfigurationManager().getInt("sessionexpireminutes") * 60 * 1000; } } } diff --git a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/beta/Domain.java b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/beta/Domain.java index ee0c550..5322a55 100644 --- a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/beta/Domain.java +++ b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/beta/Domain.java @@ -12,7 +12,7 @@ import java.util.List; /** * Class representing a domain with its components such as subname, name, top-level name, path, query, fragment, and protocol. */ -public class Domain implements Serializable { +public final class Domain implements Serializable { /** * The subname of the domain (e.g., "sub" in "sub.example.com"). */ diff --git a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/events/Classic_DomainPacketReceivedEvent.java b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/events/Classic_DomainPacketReceivedEvent.java index a237687..bcd18db 100644 --- a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/events/Classic_DomainPacketReceivedEvent.java +++ b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/events/Classic_DomainPacketReceivedEvent.java @@ -14,7 +14,7 @@ import org.openautonomousconnection.protocol.versions.v1_0_0.classic.objects.Cla * @see org.openautonomousconnection.protocol.versions.v1_0_0.classic.handlers.ClassicHandlerWebServer */ @Deprecated(forRemoval = false, since = "1.0.0-BETA.3") -public class Classic_DomainPacketReceivedEvent extends Event { +public final class Classic_DomainPacketReceivedEvent extends Event { public final Classic_ProtocolVersion protocolVersion; public final Classic_Domain domain; diff --git a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/events/Classic_PingPacketReceivedEvent.java b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/events/Classic_PingPacketReceivedEvent.java index 56af978..809c6f4 100644 --- a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/events/Classic_PingPacketReceivedEvent.java +++ b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/events/Classic_PingPacketReceivedEvent.java @@ -13,7 +13,7 @@ import org.openautonomousconnection.protocol.versions.v1_0_0.classic.objects.Cla * @see org.openautonomousconnection.protocol.versions.v1_0_0.classic.handlers.ClassicHandlerWebServer */ @Deprecated(forRemoval = false, since = "1.0.0-BETA.3") -public class Classic_PingPacketReceivedEvent extends Event { +public final class Classic_PingPacketReceivedEvent extends Event { public final Classic_ProtocolVersion protocolVersion; public final Classic_Domain domain; public final Classic_RequestDomain requestDomain; diff --git a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_Domain.java b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_Domain.java index acfe6dd..5ff3ad8 100644 --- a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_Domain.java +++ b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_Domain.java @@ -11,7 +11,7 @@ import java.io.Serializable; * This class is deprecated and users are encouraged to use the Domain class instead. */ @Deprecated(forRemoval = false, since = "1.0.0-BETA.3") -public class Classic_Domain implements Serializable { +public final class Classic_Domain implements Serializable { /** * The name of the domain (e.g., "example" in "example.com"). diff --git a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_LocalDomain.java b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_LocalDomain.java index 671b3cd..bdf6bbe 100644 --- a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_LocalDomain.java +++ b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_LocalDomain.java @@ -5,7 +5,7 @@ package org.openautonomousconnection.protocol.versions.v1_0_0.classic.objects; * This class extends Classic_Domain and is used for local domain representation. */ @Deprecated(forRemoval = false, since = "1.0.0-BETA.3") -public class Classic_LocalDomain extends Classic_Domain { +public final class Classic_LocalDomain extends Classic_Domain { public Classic_LocalDomain(String name, String endName, String path) { super(name, endName, null, path); } diff --git a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_RequestDomain.java b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_RequestDomain.java index b6d3fb3..c6d184b 100644 --- a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_RequestDomain.java +++ b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/objects/Classic_RequestDomain.java @@ -7,7 +7,7 @@ import java.io.Serializable; * This class extends Classic_Domain and is used for requesting domain information. */ @Deprecated(forRemoval = false, since = "1.0.0-BETA.3") -public class Classic_RequestDomain extends Classic_Domain implements Serializable { +public final class Classic_RequestDomain extends Classic_Domain implements Serializable { public Classic_RequestDomain(String name, String topLevelDomain, String path) { super(name, topLevelDomain, null, path); diff --git a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/site/Classic_WebsitesContent.java b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/site/Classic_WebsitesContent.java index d83b234..70941c0 100644 --- a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/site/Classic_WebsitesContent.java +++ b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/site/Classic_WebsitesContent.java @@ -6,7 +6,7 @@ import dev.unlegitdqrk.unlegitlibrary.utils.DefaultMethodsOverrider; * This class contains predefined HTML content for various website responses in the Classic protocol. */ @Deprecated(forRemoval = false, since = "1.0.0-BETA.3") -public class Classic_WebsitesContent extends DefaultMethodsOverrider { +public final class Classic_WebsitesContent extends DefaultMethodsOverrider { public static final String DOMAIN_NOT_FOUND = """ diff --git a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/utils/ClassicConverter.java b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/utils/ClassicConverter.java index b5264b9..71e4bb0 100644 --- a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/utils/ClassicConverter.java +++ b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/utils/ClassicConverter.java @@ -7,7 +7,7 @@ import org.openautonomousconnection.protocol.versions.v1_0_0.classic.objects.Cla /** * Utility class for converting between Classic protocol objects and new protocol objects. */ -public class ClassicConverter { +public final class ClassicConverter { /** * Converts a Classic_Domain object to a Domain object. diff --git a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/utils/Classic_ClientListener.java b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/utils/Classic_ClientListener.java index dfd47c5..f370ea4 100644 --- a/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/utils/Classic_ClientListener.java +++ b/src/main/java/org/openautonomousconnection/protocol/versions/v1_0_0/classic/utils/Classic_ClientListener.java @@ -22,7 +22,7 @@ import java.net.URL; * and web content retrieval. */ @Deprecated(forRemoval = false, since = "1.0.0-BETA.3") -public class Classic_ClientListener extends EventListener { +public final class Classic_ClientListener extends EventListener { /** * Handles the event when a domain packet is received.