Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestInfoServlet.java')
-rw-r--r--jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestInfoServlet.java69
1 files changed, 69 insertions, 0 deletions
diff --git a/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestInfoServlet.java b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestInfoServlet.java
new file mode 100644
index 0000000000..20b4cf98ae
--- /dev/null
+++ b/jetty-cdi/cdi-servlet/src/test/java/org/eclipse/jetty/cdi/servlet/RequestInfoServlet.java
@@ -0,0 +1,69 @@
+//
+// ========================================================================
+// Copyright (c) 1995-2015 Mort Bay Consulting Pty. Ltd.
+// ------------------------------------------------------------------------
+// All rights reserved. This program and the accompanying materials
+// are made available under the terms of the Eclipse Public License v1.0
+// and Apache License v2.0 which accompanies this distribution.
+//
+// The Eclipse Public License is available at
+// http://www.eclipse.org/legal/epl-v10.html
+//
+// The Apache License v2.0 is available at
+// http://www.opensource.org/licenses/apache2.0.php
+//
+// You may elect to redistribute this code under either of these licenses.
+// ========================================================================
+//
+
+package org.eclipse.jetty.cdi.servlet;
+
+import java.io.IOException;
+import java.io.PrintWriter;
+
+import javax.enterprise.inject.Any;
+import javax.enterprise.inject.Instance;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.eclipse.jetty.cdi.core.NamedLiteral;
+
+@SuppressWarnings("serial")
+@WebServlet("/req-info")
+public class RequestInfoServlet extends HttpServlet
+{
+ @Inject
+ @Any
+ private Instance<Dumper> dumpers;
+
+ @Inject
+ @Named("params")
+ private Dumper defaultDumper;
+
+ @Override
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
+ {
+ resp.setContentType("text/plain");
+ PrintWriter out = resp.getWriter();
+
+ Dumper dumper = defaultDumper;
+
+ String dumperId = req.getParameter("dumperId");
+
+ if (dumperId != null)
+ {
+ Instance<Dumper> inst = dumpers.select(new NamedLiteral(dumperId));
+ if (!inst.isAmbiguous() && !inst.isUnsatisfied())
+ {
+ dumper = inst.get();
+ }
+ }
+
+ dumper.dump(out);
+ }
+}

Back to the top