]> WPIA git - gigi.git/blobdiff - lib/jetty/org/eclipse/jetty/security/ConstraintSecurityHandler.java
updating jetty to jetty-9.2.16.v2016040
[gigi.git] / lib / jetty / org / eclipse / jetty / security / ConstraintSecurityHandler.java
index 201618d89d1226941afe6d0ea51ffb32ba1ed6ae..47efd2561a73d7e5694eb16e0f8212bb80e41be0 100644 (file)
@@ -1,6 +1,6 @@
 //
 //  ========================================================================
-//  Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd.
+//  Copyright (c) 1995-2016 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
@@ -46,6 +46,7 @@ import org.eclipse.jetty.server.Request;
 import org.eclipse.jetty.server.Response;
 import org.eclipse.jetty.server.UserIdentity;
 import org.eclipse.jetty.server.handler.ContextHandler;
+import org.eclipse.jetty.util.URIUtil;
 import org.eclipse.jetty.util.log.Log;
 import org.eclipse.jetty.util.log.Logger;
 import org.eclipse.jetty.util.security.Constraint;
@@ -510,21 +511,6 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr
                 mappings.put(ALL_METHODS,roleInfo);
             }
         }
-        else
-        {
-            //combine with any entry that covers all methods
-            if (httpMethod == null)
-            {
-                for (Map.Entry<String, RoleInfo> entry : mappings.entrySet())
-                {
-                    if (entry.getKey() != null)
-                    {
-                        RoleInfo specific = entry.getValue();
-                        specific.combine(roleInfo);
-                    }
-                }
-            }
-        }
     }
 
     /* ------------------------------------------------------------ */
@@ -627,7 +613,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr
     @Override
     protected RoleInfo prepareConstraintInfo(String pathInContext, Request request)
     {
-        Map<String, RoleInfo> mappings = (Map<String, RoleInfo>)_constraintMap.match(pathInContext);
+        Map<String, RoleInfo> mappings = _constraintMap.match(pathInContext);
 
         if (mappings != null)
         {
@@ -700,11 +686,8 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr
             {
                 String scheme = httpConfig.getSecureScheme();
                 int port = httpConfig.getSecurePort();
-                String url = ("https".equalsIgnoreCase(scheme) && port==443)
-                    ? "https://"+request.getServerName()+request.getRequestURI()
-                    : scheme + "://" + request.getServerName() + ":" + port + request.getRequestURI();                    
-                if (request.getQueryString() != null)
-                    url += "?" + request.getQueryString();
+                
+                String url = URIUtil.newURI(scheme, request.getServerName(), port,request.getRequestURI(),request.getQueryString());
                 response.setContentLength(0);
                 response.sendRedirect(url);
             }