diff options
Diffstat (limited to 'example-jetty-embedded/src/main/java/org/eclipse/jetty/embedded/ProxyServer.java')
-rw-r--r-- | example-jetty-embedded/src/main/java/org/eclipse/jetty/embedded/ProxyServer.java | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/example-jetty-embedded/src/main/java/org/eclipse/jetty/embedded/ProxyServer.java b/example-jetty-embedded/src/main/java/org/eclipse/jetty/embedded/ProxyServer.java index d8862c0c4b..a7fbfd6735 100644 --- a/example-jetty-embedded/src/main/java/org/eclipse/jetty/embedded/ProxyServer.java +++ b/example-jetty-embedded/src/main/java/org/eclipse/jetty/embedded/ProxyServer.java @@ -13,10 +13,12 @@ package org.eclipse.jetty.embedded; -import org.eclipse.jetty.server.Connector; import org.eclipse.jetty.server.Server; -import org.eclipse.jetty.server.bio.SocketConnector; -import org.eclipse.jetty.servlet.ServletHandler; +import org.eclipse.jetty.server.handler.HandlerCollection; +import org.eclipse.jetty.server.handler.ProxyHandler; +import org.eclipse.jetty.server.nio.SelectChannelConnector; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.servlets.ProxyServlet; public class ProxyServer @@ -24,18 +26,25 @@ public class ProxyServer public static void main(String[] args) throws Exception { Server server = new Server(); - Connector connector = new SocketConnector(); + SelectChannelConnector connector = new SelectChannelConnector(); connector.setPort(8080); - server.setConnectors(new Connector[] - { connector }); + server.addConnector(connector); - ServletHandler handler = new ServletHandler(); - server.setHandler(handler); + HandlerCollection handlers = new HandlerCollection(); + server.setHandler(handlers); - handler.addServletWithMapping(ProxyServlet.class,"/"); + ServletContextHandler context = new ServletContextHandler(handlers, "/", ServletContextHandler.SESSIONS); + ServletHolder proxyServlet = new ServletHolder(ProxyServlet.class); + proxyServlet.setInitParameter("whiteList", "google.com, www.eclipse.org"); + proxyServlet.setInitParameter("blackList", "google.com/calendar/*, www.eclipse.org/committers/"); + context.addServlet(proxyServlet, "/*"); + + ProxyHandler proxy = new ProxyHandler(); + proxy.setWhite(new String[]{"mail.google.com"}); + proxy.addWhite("www.google.com"); + handlers.addHandler(proxy); server.start(); - server.join(); } } |