You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@knox.apache.org by lm...@apache.org on 2017/10/29 19:48:58 UTC

[6/8] knox git commit: KNOX-1049 - check for null topology to avoid NPE in tests

KNOX-1049 - check for null topology to avoid NPE in tests

Project: http://git-wip-us.apache.org/repos/asf/knox/repo
Commit: http://git-wip-us.apache.org/repos/asf/knox/commit/c211d05e
Tree: http://git-wip-us.apache.org/repos/asf/knox/tree/c211d05e
Diff: http://git-wip-us.apache.org/repos/asf/knox/diff/c211d05e

Branch: refs/heads/master
Commit: c211d05e98c82d57eb0af61487a76f0ddd99660d
Parents: 1ee9370
Author: Larry McCay <lm...@hortonworks.com>
Authored: Thu Oct 26 11:17:30 2017 -0400
Committer: Larry McCay <lm...@hortonworks.com>
Committed: Thu Oct 26 11:17:30 2017 -0400

----------------------------------------------------------------------
 .../apache/hadoop/gateway/GatewayFilter.java    | 41 ++++++++++----------
 1 file changed, 21 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/knox/blob/c211d05e/gateway-server/src/main/java/org/apache/hadoop/gateway/GatewayFilter.java
----------------------------------------------------------------------
diff --git a/gateway-server/src/main/java/org/apache/hadoop/gateway/GatewayFilter.java b/gateway-server/src/main/java/org/apache/hadoop/gateway/GatewayFilter.java
index 2885fe3..7617ae8 100644
--- a/gateway-server/src/main/java/org/apache/hadoop/gateway/GatewayFilter.java
+++ b/gateway-server/src/main/java/org/apache/hadoop/gateway/GatewayFilter.java
@@ -128,28 +128,29 @@ public class GatewayFilter implements Filter {
     // if there was no match then look for a default service for the topology
     if (match == null) {
       Topology topology = (Topology) servletRequest.getServletContext().getAttribute("org.apache.hadoop.gateway.topology");
-      String defaultServicePath = topology.getDefaultServicePath();
-      if (defaultServicePath != null) {
-        try {
-          String newPathWithQuery = defaultServicePath + "/" + pathWithQueryTemplate;
-          match = chains.match(Parser.parseLiteral(newPathWithQuery));
-          String origUrl = ((HttpServletRequest) servletRequest).getRequestURL().toString();
-          String url = origUrl;
-          if (path.equals("/")) {
-            url += defaultServicePath;
-          }
-          else {
-            int index = origUrl.indexOf(path);
-            url = origUrl.substring(0, index) + "/" + defaultServicePath + path;
+      if (topology != null) {
+        String defaultServicePath = topology.getDefaultServicePath();
+        if (defaultServicePath != null) {
+          try {
+            String newPathWithQuery = defaultServicePath + "/" + pathWithQueryTemplate;
+            match = chains.match(Parser.parseLiteral(newPathWithQuery));
+            String origUrl = ((HttpServletRequest) servletRequest).getRequestURL().toString();
+            String url = origUrl;
+            if (path.equals("/")) {
+              url += defaultServicePath;
+            }
+            else {
+              int index = origUrl.indexOf(path);
+              url = origUrl.substring(0, index) + "/" + defaultServicePath + path;
+            }
+            String contextPath = defaultServicePath;
+            servletRequest = new ForwardedRequest((HttpServletRequest) servletRequest, 
+                contextPath, 
+                url);
+          } catch (URISyntaxException e) {
+            throw new ServletException( e );
           }
-          String contextPath = defaultServicePath;
-          servletRequest = new ForwardedRequest((HttpServletRequest) servletRequest, 
-              contextPath, 
-              url);
-        } catch (URISyntaxException e) {
-          throw new ServletException( e );
         }
-//        ((HttpServletRequest) servletRequest).getRequestURL();
       }
     }