Map<String, Object> convertRequestMap(RequestParameterMap requestParameterMap) { return requestParameterMap.entrySet().stream() .filter(entry -> !IGNORED_SERVLET_INPUTS.contains(entry.getKey())) .collect(Collectors.toMap( entry -> entry.getKey(), entry -> { final RequestParameter[] values = entry.getValue(); if (values.length == 1) { if (values[0].getFileName() != null) { return values[0]; } else { return values[0].getString(); } } else { return Arrays.stream(values).map(RequestParameter::getString).collect(Collectors.toList()); } } )); }
protected static String getParamValue(RequestParameterMap params, String paramName) { RequestParameter param = params.getValue(paramName); return param == null ? null : param.getString(); }
@Override public String[] getParameterValues(String name) { if (pRequest instanceof SlingHttpServletRequestWrapper) { // Convert parameter value to String ArrayList<String> retParams = new ArrayList<String>(); for (RequestParameter par : ((SlingHttpServletRequestWrapper)pRequest).getRequestParameterMap().get(name)) { // TODO: Encoding? retParams.add(par.getString()); } return retParams.toArray(new String[retParams.size()]); } else { return pRequest.getParameterValues(name); } } }
@Override public Iterator<String> getFileNames() { RequestParameterMap requestParameterMap = getRequestParameterMap(); List<String> names = new ArrayList<>(requestParameterMap.size()); for (Entry<String, RequestParameter[]> entry : requestParameterMap.entrySet()) { RequestParameter[] params = entry.getValue(); if (params != null && params.length > 0 && !params[0].isFormField()) { names.add(entry.getKey()); } } return names.iterator(); }
mypars = new com.onflapp.rested.filters.ParameterMap(); Iterator it = pars.entrySet().iterator(); while (it.hasNext()) { Map.Entry vp = (Map.Entry)it.next(); RequestParameter nval = pars.getValue(pname); if (nval != null) { mypars.removeParameter(pname); String oname = key.substring (0, key.length() - 10); String pname = val[0].getString(); RequestParameter[] nval = pars.getValues(pname); if (nval != null) { mypars.removeParameter(pname);
for (final RequestParameterMap.Entry<String, RequestParameter[]> entry : requestParameterMap.entrySet()) { if (!StringUtils.endsWith(entry.getKey(), AT_SUFFIX)) { final List<String> sources = entry.getValue(); RequestParameter allowDuplicatesParam = requestParameterMap.getValue(IGNORE_PREFIX + destination + ALLOW_DUPLICATES_SUFFIX); allowDuplicatesParam != null ? Boolean.valueOf(allowDuplicatesParam.getString()) : false; RequestParameter typeHintParam = requestParameterMap.getValue(IGNORE_PREFIX + destination + TYPE_HINT_SUFFIX);
RequestParameter specialParam = parameters.getValue(SlingPostConstants.RP_NODE_NAME); if ( specialParam != null ) { if ( specialParam.getString() != null && specialParam.getString().length() > 0 ) { specialParam = parameters.getValue(SlingPostConstants.RP_NODE_NAME_HINT); if ( specialParam != null ) { if ( specialParam.getString() != null && specialParam.getString().length() > 0 ) { param = SlingPostConstants.ITEM_PREFIX_RELATIVE_CURRENT.concat(param); final RequestParameter[] pp = parameters.get(param); if (pp != null) { for (RequestParameter p : pp) {
@Override public Enumeration getParameterNames() { if (pRequest instanceof SlingHttpServletRequestWrapper) { return Collections.enumeration(((SlingHttpServletRequestWrapper)pRequest).getRequestParameterMap().keySet()); } else { return pRequest.getParameterNames(); } }
/** * Converts request into pipe bindings * @param request from where to extract bindings * @param writeAllowed should we consider this execution is about to modify content * @return map of bindings * @throws IOException in case something turns wrong with an input stream */ protected Map getBindingsFromRequest(SlingHttpServletRequest request, boolean writeAllowed) throws IOException{ Map bindings = new HashMap<>(); String dryRun = request.getParameter(BasePipe.DRYRUN_KEY); if (StringUtils.isNotBlank(dryRun) && !dryRun.equals(Boolean.FALSE.toString())) { bindings.put(BasePipe.DRYRUN_KEY, true); } String paramBindings = request.getParameter(PARAM_BINDINGS); if (StringUtils.isNotBlank(paramBindings)){ try { bindings.putAll(JsonUtil.unbox(JsonUtil.parseObject(paramBindings))); } catch (Exception e){ log.error("Unable to retrieve bindings information", e); } } if (request.getRequestParameterMap() != null && request.getRequestParameterMap().containsKey(PARAM_FILE)){ bindings.put(AbstractInputStreamPipe.BINDING_IS, request.getRequestParameter(PARAM_FILE).getInputStream()); } bindings.put(BasePipe.READ_ONLY, !writeAllowed); return bindings; }
@Override public Map<String, MultipartFile> getFileMap() { RequestParameterMap requestParameterMap = getRequestParameterMap(); Map<String, MultipartFile> files = new HashMap<>(requestParameterMap.size()); for (Entry<String, RequestParameter[]> entry : requestParameterMap.entrySet()) { RequestParameter[] params = entry.getValue(); if (params != null && params.length > 0) { for (RequestParameter parameter : params) { if (!parameter.isFormField()) { files.put(entry.getKey(), new SlingMultipartFile(entry.getKey(), parameter)); } } } } return files; }
private void trackAssetMergeParameters(final RequestParameterMap requestParameters, final String source, String destination, final HashMap<String, Set<String>> mapping) { requestParameters.keySet().stream().map(String::valueOf) .filter((paramName) -> (paramName.endsWith("/" + source))).forEach(adjustedSource -> { String adjustedDest = alignDestinationPath(adjustedSource, destination); trackMergeParameters(mapping, adjustedSource, adjustedDest); }); }
private void writeConfigResource(Resource resource, String propertyName, SlingHttpServletRequest request, SlingHttpServletResponse response) throws IOException, ServletException { JsonObject widget = createEmptyWidget(propertyName); RequestParameterMap map = request.getRequestParameterMap(); for (Map.Entry<String, RequestParameter[]> entry : map.entrySet()) { String key = entry.getKey(); RequestParameter[] params = entry.getValue(); if (params != null) { if (params.length > 1) { JsonArray arr = new JsonArray(); for (int i = 0; i < params.length; i++) { arr.add(new JsonPrimitive(params[i].getString())); } widget.add(key, arr); } else if (params.length == 1) { widget.addProperty(key, params[0].getString()); } } } widget = underlay(widget, resource); JsonObject parent = new JsonObject(); parent.addProperty("xtype", "dialogfieldset"); parent.addProperty("border", false); parent.addProperty("padding", 0); parent.addProperty("style", "padding: 0px"); parent.add("items", widget); Gson gson = new Gson(); gson.toJson(parent, response.getWriter()); }
@Override public MultiValueMap<String, MultipartFile> getMultiFileMap() { RequestParameterMap requestParameterMap = getRequestParameterMap(); MultiValueMap<String, MultipartFile> fileMap = new LinkedMultiValueMap<>( requestParameterMap.size()); for (Entry<String, RequestParameter[]> entry : requestParameterMap.entrySet()) { RequestParameter[] params = entry.getValue(); if (params != null && params.length > 0) { List<MultipartFile> files = new ArrayList<>(params.length); for (RequestParameter parameter : params) { if (!parameter.isFormField()) { files.add(new SlingMultipartFile(entry.getKey(), parameter)); } } if (!files.isEmpty()) { fileMap.put(entry.getKey(), files); } } } return fileMap; }
@Override public String getNodeName(SlingHttpServletRequest request, String parentPath, boolean requirePrefix, NodeNameGenerator defaultNodeNameGenerator) { RequestParameterMap parameters = request.getRequestParameterMap(); String name = null; // If the :nameParam parameter is specified use that parameter to generate the // name RequestParameter nameParam = null; RequestParameter paramName = parameters.getValue(RP_NODE_NAME_PARAM); if (paramName != null && StringUtils.isNotBlank(paramName.getString())) { nameParam = parameters.getValue(paramName.getString()); } if (nameParam != null && StringUtils.isNotBlank(nameParam.getString())) { name = filter(nameParam.getString()); } return name; }
for (final String key : request.getRequestParameterMap().keySet()) { if (StringUtils.equals(key, ContentFinderConstants.CF_PATH)) { log.debug("Converting path...");
for (Map.Entry<String, RequestParameter[]> entry : map.entrySet()) { String key = entry.getKey(); RequestParameter[] params = entry.getValue();
RequestParameter specialParam = parameters.getValue(SlingPostConstants.RP_NODE_NAME); if ( specialParam != null ) { if ( specialParam.getString() != null && specialParam.getString().length() > 0 ) {
for (final String key : request.getRequestParameterMap().keySet()) { if (StringUtils.equals(key, ContentFinderConstants.CF_PATH)) { log.debug("Converting path...");