@Override public String getPath() { return acr.getPath(); }
EasyMock.expect(request.getPath()).andReturn(requestPath).anyTimes(); EasyMock.expect(request.getPathSegments()).andReturn( ImmutableList.copyOf(
@Override public String getPath() { return request.getPath(true); }
@Override public String getPath(boolean decode) { return request.getPath(decode); }
@Override public String getPath() { return getPath(true); }
@Override public String getPath(boolean decode) { return acr.getPath(decode); }
@Override public void pushRightHandPathLength(int rhpathlen) { final String ep = request.getPath(false); paths.addFirst(ep.substring(0, ep.length() - rhpathlen)); }
@Override public List<PathSegment> getPathSegments(boolean decode) { if (decode) { if (decodedPathSegments != null) return decodedPathSegments; return decodedPathSegments = UriComponent.decodePath(getPath(false), true); } else { if (encodedPathSegments != null) return encodedPathSegments; return encodedPathSegments = UriComponent.decodePath(getPath(false), false); } }
@Test public void testDatasourcesResourcesFilteringBadPath() { final String badRequestPath = WORD.matcher(requestPath).replaceAll("droid"); EasyMock.expect(request.getPath()).andReturn(badRequestPath).anyTimes(); EasyMock.replay(req, request, authorizerMapper); }
private void _handleRequest(final WebApplicationContext localContext, ContainerRequest request) { for (ContainerRequestFilter f : filterFactory.getRequestFilters()) { request = f.filter(request); localContext.setContainerRequest(request); } /** * The matching algorithm currently works from an absolute path. * The path is required to be in encoded form. */ StringBuilder path = new StringBuilder(); path.append("/").append(request.getPath(false)); if (!resourceConfig.getFeature(ResourceConfig.FEATURE_MATCH_MATRIX_PARAMS)) { path = stripMatrixParams(path); } if (!rootsRule.accept(path, null, localContext)) { throw new NotFoundException(request.getRequestUri()); } }
void logXsrfFailureButNotBeingEnforced(ContainerRequest request, Logger logger) { final String key = request.getPath(); if (key != null && XSRF_NOT_ENFORCED_RESOURCE_CACHE.getIfPresent(key) == null) { logger.warn( "XSRF failure not being enforced for request: {} , origin: {} , referrer: {}, " + "method: {}", StringUtils.substringBefore(request.getRequestUri().toString(), "?"), request.getHeaderValue(CorsHeaders.ORIGIN.value()), getSanitisedReferrer(request), request.getMethod() ); XSRF_NOT_ENFORCED_RESOURCE_CACHE.put(key, Boolean.TRUE); } }
@Override public String getPath() { return request.getPath(true); }
@Override public String getPath() { return request.getPath(true); }
@Override public String getPath(boolean decode) { return request.getPath(decode); }
private boolean isUnprotected(ContainerRequest cr) { boolean unprotected = false; for (Pattern pAux : UNPROTECTED_PATHS) { if (pAux.matcher(cr.getPath()).matches()) { unprotected = true; break; } } return unprotected; }
@Override public void pushRightHandPathLength(int rhpathlen) { final String ep = request.getPath(false); paths.addFirst(ep.substring(0, ep.length() - rhpathlen)); }
@Override public List<PathSegment> getPathSegments(boolean decode) { if (decode) { if (decodedPathSegments != null) return decodedPathSegments; return decodedPathSegments = UriComponent.decodePath(getPath(false), true); } else { if (encodedPathSegments != null) return encodedPathSegments; return encodedPathSegments = UriComponent.decodePath(getPath(false), false); } }
@Override public List<PathSegment> getPathSegments(boolean decode) { if (decode) { if (decodedPathSegments != null) return decodedPathSegments; return decodedPathSegments = UriComponent.decodePath(getPath(false), true); } else { if (encodedPathSegments != null) return encodedPathSegments; return encodedPathSegments = UriComponent.decodePath(getPath(false), false); } }
@Override public ContainerRequest filter(ContainerRequest request) { Matcher m = OrcidStringUtils.orcidPattern.matcher(request.getPath()); if (m.find()) { validateTargetRecord(m.group(), request); } return request; }
@Override public ContainerRequest filter(ContainerRequest containerRequest) { Secure.Authenticator secureAuthenticator = secureAnnotation.with(); if (secureAuthenticator == Secure.Authenticator.OAUTH) { return authenticator.authenticate(containerRequest, secureAnnotation); } else { logger.error(String.format("Invalid authenticator %s for method %s", authenticator, containerRequest.getPath())); throw new AuthException(500, "Invalid authenticator: " + authenticator); } }