| src/de/uhilger/neon/Factory.java | ●●●●● patch | view | raw | blame | history | |
| src/de/uhilger/neon/FactoryListener.java | ●●●●● patch | view | raw | blame | history | |
| src/de/uhilger/neon/entity/NeonDescriptor.java | ●●●●● patch | view | raw | blame | history | |
| src/de/uhilger/neon/entity/WsServerDescriptor.java | ●●●●● patch | view | raw | blame | history |
src/de/uhilger/neon/Factory.java
@@ -36,9 +36,6 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.net.InetSocketAddress; import java.net.MalformedURLException; import java.net.URI; import java.net.URISyntaxException; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; @@ -49,7 +46,6 @@ import java.util.logging.Level; import java.util.logging.Logger; import de.uhilger.neon.Scanner.ScannerListener; import java.util.Set; /** * Einen Neon-Server aus einer Beschreibungsdatei herstellen @@ -133,7 +129,7 @@ IllegalAccessException, IllegalArgumentException, InvocationTargetException, IOException { Logger.getLogger(Factory.class.getName()).log(Level.FINER, System.getProperty("java.class.path")); List<ServerDescriptor> serverList = d.server; for (ServerDescriptor sd : serverList) { HttpServer server = HttpServer.create(new InetSocketAddress(sd.port), 0); @@ -154,7 +150,16 @@ server.setExecutor(Executors.newFixedThreadPool(10)); server.start(); } fireInstanceStarted(); // List<WsServerDescriptor> wsserverList = d.wsserver; // for (WsServerDescriptor wsd : wsserverList) { // WebSocketServer wsserver = new SimpleWsServer(new InetSocketAddress(wsd.port)); // fireWsServerCreated(wsserver); // } fireInstanceStarted(); } private Authenticator createAuthenticator(NeonDescriptor d) { @@ -394,6 +399,13 @@ l.serverCreated(server); } } //private void fireWsServerCreated(WebSocketServer wsserver) { // for (WsFactoryListener l : listeners) { // l.wsServerCreated(wsserver); // } //} private void fireHandlerCreated(HttpContext ctx, HttpHandler h) { for (FactoryListener l : listeners) { src/de/uhilger/neon/FactoryListener.java
@@ -23,6 +23,7 @@ import com.sun.net.httpserver.HttpContext; import com.sun.net.httpserver.HttpHandler; import com.sun.net.httpserver.HttpServer; import org.java_websocket.server.WebSocketServer; /** * Objekte, die auf Ereignisse der Neon-Factory lauschen @@ -40,6 +41,8 @@ public void authenticatorCreated(HttpContext context, Authenticator authenticator); //public void wsServerCreated(WebSocketServer wsserver); //public void elementCreated(Object realm); public void instanceStarted(); src/de/uhilger/neon/entity/NeonDescriptor.java
@@ -34,5 +34,6 @@ public List<String> actorPackages; public AuthenticatorDescriptor authenticator; public List<ServerDescriptor> server; public List<WsServerDescriptor> wsserver; } src/de/uhilger/neon/entity/WsServerDescriptor.java
New file @@ -0,0 +1,29 @@ /* neon - Embeddable HTTP Server based on jdk.httpserver Copyright (C) 2025 Ulrich Hilger This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see <https://www.gnu.org/licenses/>. */ package de.uhilger.neon.entity; /** * * @author Ulrich Hilger * @version 0.1, 22.11.2025 */ public class WsServerDescriptor { public String name; public int port; }