diff options
| author | Mike Vink <mike1994vink@gmail.com> | 2021-06-25 12:56:04 +0200 |
|---|---|---|
| committer | Mike Vink <mike1994vink@gmail.com> | 2021-06-25 12:56:04 +0200 |
| commit | 6bd8d0345e3ac653c3fad4f1c7a6352e8a4a166e (patch) | |
| tree | f142d3f43add40c2dd56bc496d6b4ab497f31a3e /api/src/main/java/mancala/App.java | |
| parent | 38d59e2876b9f4d7c589d58295ef8acdf336a45b (diff) | |
| parent | 102b25f18d9b269c58d15677f10cd71c15003c4b (diff) | |
Merge branch 'mvcFeature' into mainline
Diffstat (limited to 'api/src/main/java/mancala/App.java')
| -rw-r--r-- | api/src/main/java/mancala/App.java | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/api/src/main/java/mancala/App.java b/api/src/main/java/mancala/App.java new file mode 100644 index 0000000..8560e2d --- /dev/null +++ b/api/src/main/java/mancala/App.java @@ -0,0 +1,49 @@ +package mancala; + +import org.eclipse.jetty.server.Handler; +import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.handler.*; +import org.eclipse.jetty.webapp.*; +import org.eclipse.jetty.servlet.ServletHandler; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; +import org.glassfish.jersey.servlet.ServletContainer; + +import mancala.api.*; + +public class App { + public static void main(String[] args) throws Exception { + Server server = startServer(8080); + ServletContextHandler context = createStatefulContext(server); + registerServlets(context); + + server.start(); + System.out.println("Started server."); + System.out.println("Listening on http://localhost:8080/"); + System.out.println("Press CTRL+C to exit."); + server.join(); + } + + private static Server startServer(int port) { + return new Server(8080); + } + + private static ServletContextHandler createStatefulContext(Server server) { + ServletContextHandler context = + new ServletContextHandler(ServletContextHandler.SESSIONS); + context.setContextPath("/"); + server.setHandler(context); + return context; + } + + private static void registerServlets(ServletContextHandler context) { + // Use the Jersey framework to translate the classes in the + // mancala.api package to server endpoints (servlets). + // For example, the StartMancala class will become an endpoint at + // http://localost:8080/mancala/api/start + ServletHolder serverHolder = context.addServlet(ServletContainer.class, "/mancala/api/*"); + serverHolder.setInitOrder(1); + serverHolder.setInitParameter("jersey.config.server.provider.packages", + "mancala.api"); + } +} |
