Refine search
public String getParameter(String name) { handleQueryParameters(); int pos = findFirst(name); if (pos >= 0) { return getValue(pos).toString(); } else { return null; } }
/** Process the query string into parameters */ public void handleQueryParameters() { if( didQueryParameters ) return; didQueryParameters=true; if( queryMB==null || queryMB.isNull() ) return; if( debug > 0 ) log( "Decoding query " + decodedQuery + " " + queryStringEncoding); try { decodedQuery.duplicate( queryMB ); } catch (IOException e) { // Can't happen, as decodedQuery can't overflow e.printStackTrace(); } processParameters( decodedQuery, queryStringEncoding ); }
/** Discard the last child. This happens when we return from a sub-request and the parameters are locally modified. */ public void pop() { if( currentChild==null ) { throw new RuntimeException( "Attempt to pop without a push" ); } currentChild.recycle(); currentChild=currentChild.parent; // don't remove the top. }
public Enumeration getParameterNames() { handleQueryParameters(); // Slow - the original code if( currentChild!=null ) { currentChild.merge(); return currentChild.paramHashStringArray.keys(); } // merge in child return paramHashStringArray.keys(); }
currentChild=new Parameters(); currentChild.setURLDecoder( urlDec ); currentChild.parent=this; return; currentChild.child=new Parameters(); currentChild.setURLDecoder( urlDec ); currentChild.child.parent=currentChild; currentChild.setEncoding( encoding );
return; Parameters parameters = coyoteRequest.getParameters(); String enc = getCharacterEncoding(); parameters.setEncoding(enc); if (useBodyEncodingForURI) { parameters.setQueryStringEncoding(enc); parameters.setEncoding (org.apache.coyote.Constants.DEFAULT_CHARACTER_ENCODING); if (useBodyEncodingForURI) { parameters.setQueryStringEncoding (org.apache.coyote.Constants.DEFAULT_CHARACTER_ENCODING); parameters.handleQueryParameters(); return; parameters.processParameters(formData, 0, len); } else if ("chunked".equalsIgnoreCase( coyoteRequest.getHeader("transfer-encoding"))) { byte[] formData = null; try { parameters.processParameters(formData, 0, formData.length);
request.clearCookies(); Iterator cookies = saved.getCookies(); while (cookies.hasNext()) { request.addCookie((Cookie) cookies.next()); MimeHeaders rmh = request.getCoyoteRequest().getMimeHeaders(); rmh.recycle(); Iterator names = saved.getHeaderNames(); Iterator values = saved.getHeaderValues(name); while (values.hasNext()) { rmh.addValue(name).setString( (String)values.next() ); request.getCoyoteRequest().getParameters().recycle(); request.getCoyoteRequest().action (ActionCode.ACTION_REQ_SET_BODY_REPLAY, body); MessageBytes contentType = MessageBytes.newInstance(); contentType.setString("application/x-www-form-urlencoded"); request.getCoyoteRequest().setContentType(contentType);
InputStream is = request.createInputStream(); while (is.read(buffer) >= 0) { request.clearCookies(); Iterator<Cookie> cookies = saved.getCookies(); while (cookies.hasNext()) { request.addCookie(cookies.next()); MimeHeaders rmh = request.getCoyoteRequest().getMimeHeaders(); rmh.recycle(); boolean cachable = "GET".equalsIgnoreCase(method) || Iterator<String> values = saved.getHeaderValues(name); while (values.hasNext()) { rmh.addValue(name).setString(values.next()); request.getCoyoteRequest().getParameters().recycle(); request.getCoyoteRequest().getParameters().setQueryStringEncoding( request.getConnector().getURIEncoding()); MessageBytes contentType = MessageBytes.newInstance(); contentType.setString(savedContentType); request.getCoyoteRequest().setContentType(contentType);
org.apache.coyote.Response res, long time) { Request request = (Request) req.getNote(ADAPTER_NOTES); Response response = (Response) res.getNote(ADAPTER_NOTES); boolean create = false; request.setCoyoteRequest(req); response = connector.createResponse(); response.setCoyoteResponse(res); request.setResponse(response); response.setRequest(request); req.setNote(ADAPTER_NOTES, request); res.setNote(ADAPTER_NOTES, response); req.getParameters().setQueryStringEncoding (connector.getURIEncoding()); request.recycle(); response.recycle();
public void processParameters( MessageBytes data, String encoding ) { if( data==null || data.isNull() || data.getLength() <= 0 ) { return; } if( data.getType() != MessageBytes.T_BYTES ) { data.toBytes(); } ByteChunk bc=data.getByteChunk(); processParameters( bc.getBytes(), bc.getOffset(), bc.getLength(), getCharset(encoding)); }
MultipartConfigElement mce = getWrapper().getMultipartConfigElement(); if(getContext().getAllowCasualMultipartParsing()) { mce = new MultipartConfigElement(null, connector.getMaxPostSize(), Parameters parameters = coyoteRequest.getParameters(); parameters.setLimit(getConnector().getMaxParameterCount()); String value = null; try { String encoding = parameters.getEncoding(); if (encoding == null) { if (enc == null) { parameters.addParameter(name, value); parameters.setParseFailed(true);
Parameters parameters = coyoteRequest.getParameters(); String enc = getCharacterEncoding(); parameters.setEncoding(enc); if (useBodyEncodingForURI) { parameters.setQueryStringEncoding(enc); parameters.setEncoding (org.apache.coyote.Constants.DEFAULT_CHARACTER_ENCODING); if (useBodyEncodingForURI) { parameters.setQueryStringEncoding (org.apache.coyote.Constants.DEFAULT_CHARACTER_ENCODING); parameters.handleQueryParameters(); if (!getMethod().equalsIgnoreCase("POST")) return; String contentType = getContentType(); if (contentType == null) contentType = ""; int actualLen = readPostBody(formData, len); if (actualLen == len) { parameters.processParameters(formData, 0, len);
Parameters parameters = coyoteRequest.getParameters(); parameters.setLimit(getConnector().getMaxParameterCount()); parameters.setParseFailedReason(FailReason.MULTIPART_CONFIG_INVALID); partsParseException = new IOException( sm.getString("coyoteRequest.uploadLocationInvalid", factory.setRepository(location.getCanonicalFile()); } catch (IOException ioe) { parameters.setParseFailedReason(FailReason.IO_ERROR); partsParseException = ioe; return; parameters.setParseFailedReason(FailReason.POST_TOO_LARGE); throw new IllegalStateException(sm.getString( "coyoteRequest.maxPostSizeExceeded")); parameters.addParameter(name, value); parameters.setParseFailedReason(FailReason.INVALID_CONTENT_TYPE); partsParseException = new ServletException(e); } catch (FileUploadBase.SizeException e) { parameters.setParseFailedReason(FailReason.POST_TOO_LARGE); checkSwallowInput(); partsParseException = new IllegalStateException(e); } catch (FileUploadException e) { parameters.setParseFailedReason(FailReason.IO_ERROR); partsParseException = new IOException(e); } catch (IllegalStateException e) {
public void processParameters( MessageBytes data, String encoding ) { if( data==null || data.isNull() || data.getLength() <= 0 ) return; if( data.getType() == MessageBytes.T_BYTES ) { ByteChunk bc=data.getByteChunk(); processParameters( bc.getBytes(), bc.getOffset(), bc.getLength(), encoding); } else { if (data.getType()!= MessageBytes.T_CHARS ) data.toChars(); CharChunk cc=data.getCharChunk(); processParameters( cc.getChars(), cc.getOffset(), cc.getLength()); } }
return; if (!getMethod().equalsIgnoreCase("POST")) return; String contentType = getContentType(); if (contentType == null) contentType = ""; for (FileItem fileItem : upload.parseRequest(getRequest())) { if (fileItem.getName() == null) { coyoteRequest.getParameters().addParameterValues (fileItem.getFieldName(), new String[] {fileItem.getString()});
/** * Return the defined values for the specified request parameter, if any; * otherwise, return <code>null</code>. * * @param name Name of the desired request parameter */ public String[] getParameterValues(String name) { if (!parametersParsed) parseParameters(); return coyoteRequest.getParameters().getParameterValues(name); }
/** * Return the value of the specified request parameter, if any; otherwise, * return <code>null</code>. If there is more than one value defined, * return only the first one. * * @param name Name of the desired request parameter */ public String getParameter(String name) { if (!parametersParsed) parseParameters(); return coyoteRequest.getParameters().getParameter(name); }
/** * @return the names of all defined request parameters for this request. */ @Override public Enumeration<String> getParameterNames() { if (!parametersParsed) { parseParameters(); } return coyoteRequest.getParameters().getParameterNames(); }
public void recycle() { bytesRead=0; contentLength = -1; contentTypeMB = null; charEncoding = null; headers.recycle(); serverNameMB.recycle(); serverPort=-1; localPort = -1; remotePort = -1; available = 0; cookies.recycle(); parameters.recycle(); unparsedURIMB.recycle(); uriMB.recycle(); decodedUriMB.recycle(); queryMB.recycle(); methodMB.recycle(); protoMB.recycle(); schemeMB.recycle(); instanceId.recycle(); remoteUser.recycle(); authType.recycle(); attributes.clear(); }
/** * Add a parameter name and corresponding set of values to this Request. * (This is used when restoring the original request on a form based * login). * * @param name Name of this request parameter * @param values Corresponding values for this request parameter */ public void addParameter(String name, String values[]) { coyoteRequest.getParameters().addParameterValues(name, values); }