private boolean isMatrixVariableContentAvailable() { return !getUrlPathHelper().shouldRemoveSemicolonContent(); }
private Map<String, MultiValueMap<String, String>> extractMatrixVariables( HttpServletRequest request, Map<String, String> uriVariables) { Map<String, MultiValueMap<String, String>> result = new LinkedHashMap<>(); uriVariables.forEach((uriVarKey, uriVarValue) -> { int equalsIndex = uriVarValue.indexOf('='); if (equalsIndex == -1) { return; } int semicolonIndex = uriVarValue.indexOf(';'); if (semicolonIndex != -1 && semicolonIndex != 0) { uriVariables.put(uriVarKey, uriVarValue.substring(0, semicolonIndex)); } String matrixVariables; if (semicolonIndex == -1 || semicolonIndex == 0 || equalsIndex < semicolonIndex) { matrixVariables = uriVarValue; } else { matrixVariables = uriVarValue.substring(semicolonIndex + 1); } MultiValueMap<String, String> vars = WebUtils.parseMatrixVariables(matrixVariables); result.put(uriVarKey, getUrlPathHelper().decodeMatrixVariables(request, vars)); }); return result; }
private boolean isMatrixVariableContentAvailable() { return !getUrlPathHelper().shouldRemoveSemicolonContent(); }
private Map<String, MultiValueMap<String, String>> extractMatrixVariables( HttpServletRequest request, Map<String, String> uriVariables) { Map<String, MultiValueMap<String, String>> result = new LinkedHashMap<>(); uriVariables.forEach((uriVarKey, uriVarValue) -> { int equalsIndex = uriVarValue.indexOf('='); if (equalsIndex == -1) { return; } int semicolonIndex = uriVarValue.indexOf(';'); if (semicolonIndex != -1 && semicolonIndex != 0) { uriVariables.put(uriVarKey, uriVarValue.substring(0, semicolonIndex)); } String matrixVariables; if (semicolonIndex == -1 || semicolonIndex == 0 || equalsIndex < semicolonIndex) { matrixVariables = uriVarValue; } else { matrixVariables = uriVarValue.substring(semicolonIndex + 1); } MultiValueMap<String, String> vars = WebUtils.parseMatrixVariables(matrixVariables); result.put(uriVarKey, getUrlPathHelper().decodeMatrixVariables(request, vars)); }); return result; }
Map<String, String> decodedUriVariables = getUrlPathHelper().decodePathVariables(request, uriVariables); request.setAttribute(HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE, decodedUriVariables);
Map<String, String> decodedUriVariables = getUrlPathHelper().decodePathVariables(request, uriVariables); request.setAttribute(HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE, decodedUriVariables);
private boolean isMatrixVariableContentAvailable() { return !getUrlPathHelper().shouldRemoveSemicolonContent(); }
private Map<String, MultiValueMap<String, String>> extractMatrixVariables( HttpServletRequest request, Map<String, String> uriVariables) { Map<String, MultiValueMap<String, String>> result = new LinkedHashMap<String, MultiValueMap<String, String>>(); for (Map.Entry<String, String> uriVar : uriVariables.entrySet()) { String uriVarValue = uriVar.getValue(); int equalsIndex = uriVarValue.indexOf('='); if (equalsIndex == -1) { continue; } String matrixVariables; int semicolonIndex = uriVarValue.indexOf(';'); if ((semicolonIndex == -1) || (semicolonIndex == 0) || (equalsIndex < semicolonIndex)) { matrixVariables = uriVarValue; } else { matrixVariables = uriVarValue.substring(semicolonIndex + 1); uriVariables.put(uriVar.getKey(), uriVarValue.substring(0, semicolonIndex)); } MultiValueMap<String, String> vars = WebUtils.parseMatrixVariables(matrixVariables); result.put(uriVar.getKey(), getUrlPathHelper().decodeMatrixVariables(request, vars)); } return result; }
bestPattern = patterns.iterator().next(); uriVariables = getPathMatcher().extractUriTemplateVariables(bestPattern, lookupPath); decodedUriVariables = getUrlPathHelper().decodePathVariables(request, uriVariables);