From 0d62e1d1e8d0a7744a62f437605a4197ec6e3285 Mon Sep 17 00:00:00 2001 From: Jorge Hernandez Date: Wed, 8 Aug 2018 10:28:36 -0500 Subject: generic jetty filter and cadi support Change-Id: I363e44e85e1d89c6254218629010d5c3e1507e0a Issue-ID: POLICY-1043 Signed-off-by: Jorge Hernandez --- .../endpoints/http/server/test/HttpServerTest.java | 5 +++ .../endpoints/http/server/test/TestFilter.java | 41 ++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 policy-endpoints/src/test/java/org/onap/policy/common/endpoints/http/server/test/TestFilter.java (limited to 'policy-endpoints/src/test/java/org/onap/policy/common/endpoints/http') diff --git a/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/http/server/test/HttpServerTest.java b/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/http/server/test/HttpServerTest.java index 0db6cfe1..d4c14a8a 100644 --- a/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/http/server/test/HttpServerTest.java +++ b/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/http/server/test/HttpServerTest.java @@ -20,6 +20,7 @@ package org.onap.policy.common.endpoints.http.server.test; +import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import java.io.BufferedReader; @@ -51,6 +52,7 @@ public class HttpServerTest { HttpServletServer server = HttpServletServer.factory.build("echo", "localhost", 5678, "/", false, true); server.addServletPackage("/*", this.getClass().getPackage().getName()); + server.addFilterClass("/*", TestFilter.class.getCanonicalName()); server.waitedStart(5000); assertTrue(HttpServletServer.factory.get(5678).isAlive()); @@ -66,6 +68,9 @@ public class HttpServerTest { } assertTrue(response == null); + response = http(HttpServletServer.factory.get(5678), "http://localhost:5678/junit/echo/hello?block=true"); + assertEquals("FILTERED", response); + assertTrue(HttpServletServer.factory.get(5678).isAlive()); assertTrue(HttpServletServer.factory.inventory().size() == 1); diff --git a/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/http/server/test/TestFilter.java b/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/http/server/test/TestFilter.java new file mode 100644 index 00000000..5de96930 --- /dev/null +++ b/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/http/server/test/TestFilter.java @@ -0,0 +1,41 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP + * ================================================================================ + * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ +package org.onap.policy.common.endpoints.http.server.test; + +import java.io.IOException; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; + +public class TestFilter implements Filter { + + @Override + public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) + throws IOException, ServletException { + + if (servletRequest.getParameter("block") != null) { + servletResponse.getWriter().write("FILTERED"); + } else { + filterChain.doFilter(servletRequest, servletResponse); + } + } +} \ No newline at end of file -- cgit 1.2.3-korg