private static HttpHeaders createDefaultHttpHeaders(HttpServletRequest request) { HttpHeaders headers = new HttpHeaders(); for (Enumeration<?> names = request.getHeaderNames(); names.hasMoreElements(); ) { String name = (String) names.nextElement(); for (Enumeration<?> values = request.getHeaders(name); values.hasMoreElements(); ) { headers.add(name, (String) values.nextElement()); } } return headers; }
/** * @return all headers */ public Set<String> headers() { if (headers == null) { headers = new TreeSet<>(); Enumeration<String> enumeration = servletRequest.getHeaderNames(); while (enumeration.hasMoreElements()) { headers.add(enumeration.nextElement()); } } return headers; }
private static Map<String, String> getHeaders(HttpServletRequest request) { Map<String, String> headers = new HashMap<>(); Collections.list(request.getHeaderNames()).forEach(header -> headers.put(header.toLowerCase(Locale.ENGLISH), request.getHeader(header))); return headers; }
@Override public Enumeration<String> getHeaderNames() { if("post".equalsIgnoreCase(req.getMethod()) && req.getHeader("accept").equalsIgnoreCase("application/json;odata.metadata=full")) { CustomEnumeration<String> headerNames = new CustomEnumeration<>(req.getHeaderNames()); headerNames.addValues("prefer"); return headerNames; } else { return req.getHeaderNames(); } }
private void testCarteRequest( CarteRequestHandler.CarteRequest carteRequest ) { when( req.getMethod() ).thenReturn( "POST" ); when( req.getHeader( "Connection" ) ).thenReturn( "Keep-Alive" ); when( req.getParameter( "param1" ) ).thenReturn( "val1" ); when( req.getParameterNames() ).thenReturn( Collections.enumeration( Arrays.asList( "name1", "name2" ) ) ); when( req.getParameterValues( any( String.class ) ) ) .thenReturn( new String[] { "val" } ); when( req.getHeaderNames() ).thenReturn( Collections.enumeration( Arrays.asList( "name1", "name2" ) ) ); when( req.getHeaders( "name1" ) ).thenReturn( Collections.enumeration( ImmutableList.of( "val" ) ) ); when( req.getHeaders( "name2" ) ).thenReturn( Collections.enumeration( ImmutableList.of( "val" ) ) ); assertThat( carteRequest.getMethod(), is( "POST" ) ); assertThat( carteRequest.getHeader( "Connection" ), is( "Keep-Alive" ) ); assertThat( carteRequest.getParameter( "param1" ), is( "val1" ) ); checkMappedVals( carteRequest.getParameters() ); checkMappedVals( carteRequest.getHeaders() ); }
private void logRequest(HttpServletRequest request) { LogFormatUtils.traceDebug(logger, traceOn -> { String params; if (isEnableLoggingRequestDetails()) { params = request.getParameterMap().entrySet().stream() .map(entry -> entry.getKey() + ":" + Arrays.toString(entry.getValue())) .collect(Collectors.joining(", ")); } else { params = (request.getParameterMap().isEmpty() ? "" : "masked"); } String query = StringUtils.isEmpty(request.getQueryString()) ? "" : "?" + request.getQueryString(); String dispatchType = (!request.getDispatcherType().equals(DispatcherType.REQUEST) ? "\"" + request.getDispatcherType().name() + "\" dispatch for " : ""); String message = (dispatchType + request.getMethod() + " \"" + getRequestUri(request) + query + "\", parameters={" + params + "}"); if (traceOn) { List<String> values = Collections.list(request.getHeaderNames()); String headers = values.size() > 0 ? "masked" : ""; if (isEnableLoggingRequestDetails()) { headers = values.stream().map(name -> name + ":" + Collections.list(request.getHeaders(name))) .collect(Collectors.joining(", ")); } return message + ", headers={" + headers + "} in DispatcherServlet '" + getServletName() + "'"; } else { return message; } }); }
when(request.getMethod()).thenReturn("POST"); when(request.getHeaderNames()).thenReturn(mock(Enumeration.class)); when(request.getContentType()).thenReturn("multipart/form-data"); when(request.getRequestURL()).thenReturn(new StringBuffer("foo"));
@Override public Map<String, Collection<String>> getHeaders() { ImmutableMultimap.Builder<String, String> builder = ImmutableMultimap.builder(); for ( String name : fromEnumeration( req.getHeaderNames() ) ) { builder.putAll( name, fromEnumeration( req.getHeaders( name ) ) ); } return builder.build().asMap(); }
private static Map<String, List<String>> initHeaders(HttpServletRequest request) { Map<String, List<String>> headers = new LinkedCaseInsensitiveMap<>(Locale.ENGLISH); Enumeration<String> names = request.getHeaderNames(); while (names.hasMoreElements()) { String name = names.nextElement(); if (!FORWARDED_HEADER_NAMES.contains(name)) { headers.put(name, Collections.list(request.getHeaders(name))); } } return headers; }
@Override public Enumeration<String> getHeaderNames() { Set list = new HashSet(); list.addAll(b.headers.keySet()); list.addAll(Collections.list(b.request.getHeaderNames())); if (b.request != null) { Enumeration e = b.request.getAttributeNames(); while (e.hasMoreElements()) { String name = e.nextElement().toString(); if (name.startsWith(X_ATMOSPHERE)) { list.add(name); } } } if (b.contentType != null) { list.add("Content-Type"); } return Collections.enumeration(list); }
private void mockRequest(HttpServletRequest mockedRequest) { when(mockedRequest.getMethod()).thenReturn("GET"); when(mockedRequest.getRemoteUser()).thenReturn("tester"); when(mockedRequest.getHeaderNames()).thenReturn(Collections.enumeration(Arrays.asList("header1", "header2"))); when(mockedRequest.getServerName()).thenReturn("server1"); when(mockedRequest.getHeader("header1")).thenReturn("header1"); when(mockedRequest.isUserInRole("role1")).thenReturn(true); HttpSession mockedSession = Mockito.mock(HttpSession.class); when(mockedRequest.getSession()).thenReturn(mockedSession); when(mockedRequest.getSession(true)).thenReturn(mockedSession); mockSession(mockedSession); }
for (String headerName : Collections.list(request.getHeaderNames())) { Collection<String> headerValues = Collections.list( request.getHeaders(headerName)); headerName = headerName.toLowerCase(); if (!headerName.startsWith("x-amz-") || (bothDateHeader && .append(request.getMethod()) .append('\n') .append(Strings.nullToEmpty(request.getHeader( HttpHeaders.CONTENT_MD5))) .append('\n') .append(Strings.nullToEmpty(request.getHeader( HttpHeaders.CONTENT_TYPE))) .append('\n'); builder.append(""); } else { builder.append(request.getHeader(HttpHeaders.DATE));
private void logRequest(HttpServletRequest request) { LogFormatUtils.traceDebug(logger, traceOn -> { String params; if (isEnableLoggingRequestDetails()) { params = request.getParameterMap().entrySet().stream() .map(entry -> entry.getKey() + ":" + Arrays.toString(entry.getValue())) .collect(Collectors.joining(", ")); } else { params = (request.getParameterMap().isEmpty() ? "" : "masked"); } String query = StringUtils.isEmpty(request.getQueryString()) ? "" : "?" + request.getQueryString(); String dispatchType = (!request.getDispatcherType().equals(DispatcherType.REQUEST) ? "\"" + request.getDispatcherType().name() + "\" dispatch for " : ""); String message = (dispatchType + request.getMethod() + " \"" + getRequestUri(request) + query + "\", parameters={" + params + "}"); if (traceOn) { List<String> values = Collections.list(request.getHeaderNames()); String headers = values.size() > 0 ? "masked" : ""; if (isEnableLoggingRequestDetails()) { headers = values.stream().map(name -> name + ":" + Collections.list(request.getHeaders(name))) .collect(Collectors.joining(", ")); } return message + ", headers={" + headers + "} in DispatcherServlet '" + getServletName() + "'"; } else { return message; } }); }
private static void setHeaders(HttpServletRequest request, Map<String, String> valuesByName) { valuesByName.entrySet().forEach(entry -> when(request.getHeader(entry.getKey())).thenReturn(entry.getValue())); when(request.getHeaderNames()).thenReturn(Collections.enumeration(valuesByName.keySet())); }
private void performRequest( HttpServletRequest servletRequest, AsyncResponse asyncResponse, Request.Builder requestBuilder, Function<ProxyResponse, Response> responseBuilder) { setupBearerToken(servletRequest, requestBuilder); for (String name : list(servletRequest.getHeaderNames())) { if (isPrestoHeader(name) || name.equalsIgnoreCase(COOKIE)) { for (String value : list(servletRequest.getHeaders(name))) { requestBuilder.addHeader(name, value); } } else if (name.equalsIgnoreCase(USER_AGENT)) { for (String value : list(servletRequest.getHeaders(name))) { requestBuilder.addHeader(name, "[Presto Proxy] " + value); } } } Request request = requestBuilder .setPreserveAuthorizationOnRedirect(true) .build(); ListenableFuture<Response> future = executeHttp(request) .transform(responseBuilder::apply, executor) .catching(ProxyException.class, e -> handleProxyException(request, e), directExecutor()); setupAsyncResponse(asyncResponse, future); }
@Nullable private static String initForwardedPrefix(HttpServletRequest request) { String result = null; Enumeration<String> names = request.getHeaderNames(); while (names.hasMoreElements()) { String name = names.nextElement(); if ("X-Forwarded-Prefix".equalsIgnoreCase(name)) { result = request.getHeader(name); } } if (result != null) { while (result.endsWith("/")) { result = result.substring(0, result.length() - 1); } } return result; }
private void mockRequest(HttpServletRequest mockedRequest) { when(mockedRequest.getMethod()).thenReturn("GET"); when(mockedRequest.getRemoteUser()).thenReturn("tester"); when(mockedRequest.getHeaderNames()).thenReturn(Collections.enumeration(Arrays.asList("header1", "header2"))); when(mockedRequest.getServerName()).thenReturn("server1"); when(mockedRequest.getHeader("header1")).thenReturn("header1"); when(mockedRequest.isUserInRole("role1")).thenReturn(true); HttpSession mockedSession = Mockito.mock(HttpSession.class); when(mockedRequest.getSession()).thenReturn(mockedSession); when(mockedRequest.getSession(true)).thenReturn(mockedSession); mockSession(mockedSession); }
public final void doHandle(HttpServletRequest baseRequest, HttpServletRequest request, HttpServletResponse response, InputStream is) throws IOException, S3Exception { String method = request.getMethod(); String uri = request.getRequestURI(); String hostHeader = request.getHeader(HttpHeaders.HOST); if (hostHeader != null && virtualHost.isPresent()) { hostHeader = HostAndPort.fromString(hostHeader).getHostText(); for (String headerName : Collections.list(request.getHeaderNames())) { for (String headerValue : Collections.list(request.getHeaders( headerName))) { logger.debug("header: {}: {}", headerName, logger.debug("have the x-amz-date heaer {}", headerName); if ("".equals(request.getHeader("x-amz-date")) || request.getHeader("x-amz-date") == null) { logger.debug("have empty x-amz-date"); } else { for (String headerName : Collections.list(request.getHeaderNames())) { if (ignoreUnknownHeaders) { continue;
@VisibleForTesting Request asApolloRequest(HttpServletRequest req) throws IOException { final String uri = req.getRequestURI() + (req.getQueryString() == null ? "" : "?" + req.getQueryString()); final String method = req.getMethod(); final int contentLength = req.getContentLength(); final ImmutableMap.Builder<String, String> headersBuilder = ImmutableMap.builder(); toStream(req.getHeaderNames()) .forEachOrdered( name -> headersBuilder.put( name, toStream(req.getHeaders(name)).collect(Collectors.joining(",")) )); final ImmutableMap<String, String> headers = headersBuilder.build(); Request request = Request.forUri(uri, method).withHeaders(headers); final Optional<String> callingService = request.header("X-Calling-Service"); if (callingService.isPresent() && !callingService.get().isEmpty()) { request = request.withService(callingService.get()); } Optional<ByteString> payload = readPayload(req, contentLength); if (payload.isPresent()) { request = request.withPayload(payload.get()); } return request; }
public void visitHeaders() { Map<String, Object> keyValues = createTreeMap(); for (String name : enumToList(request.getHeaderNames())) { keyValues.put(name, enumToList(request.getHeaders(name))); } keyValuesComponent.visitTemplate(context, keyValues); }