Class DefaultParameterParser
- All Implemented Interfaces:
- Iterable<String>,- org.apache.avalon.framework.logger.LogEnabled,- ParameterParser,- ParserServiceSupport,- ValueParser
NOTE: The name= portion of a name=value pair may be converted to lowercase or uppercase when the object is initialized and when new data is added. This behaviour is determined by the url.case.folding property in TurbineResources.properties. Adding a name/value pair may overwrite existing name=value pairs if the names match:
 ParameterParser pp = data.getParameters();
 pp.add("ERROR",1);
 pp.add("eRrOr",2);
 int result = pp.getInt("ERROR");
 
 In the above example, result is 2.- Version:
- $Id$
- Author:
- Ilkka Priha, Jon S. Stevens, Sean Legassick, Jürgen Hoffmann
- 
Nested Class SummaryNested classes/interfaces inherited from interface org.apache.fulcrum.parser.ValueParserValueParser.URLCaseFolding
- 
Field SummaryFields inherited from class org.apache.fulcrum.parser.BaseValueParserparameters, parserServiceFields inherited from interface org.apache.fulcrum.parser.ValueParserDEFAULT_CHARACTER_ENCODING
- 
Constructor SummaryConstructorsConstructorDescriptionCreate a new empty instance of ParameterParser.DefaultParameterParser(String characterEncoding) Create a new empty instance of ParameterParser.
- 
Method SummaryModifier and TypeMethodDescriptionvoidAdd a Part object as a parameters.voiddispose()Disposes the parser.getFileName(jakarta.servlet.http.Part part) Convenience fileName utility, which extracts the filename from headerjakarta.servlet.http.PartReturn a Part object for the given name.Collection<jakarta.servlet.http.Part> getParts()Return an array of all Part objects.jakarta.servlet.http.Part[]Return an array of Part objects for the given name.jakarta.servlet.http.HttpServletRequestGets the parsed servlet request.byte[]Gets the uploadData byte[]protected voidhandleEncoding(jakarta.servlet.http.HttpServletRequest request) voidsetRequest(jakarta.servlet.http.HttpServletRequest request) Sets the servlet request to the parser.voidsetUploadData(byte[] uploadData) Sets the uploadData byte[]Methods inherited from class org.apache.fulcrum.parser.BaseValueParseradd, add, add, add, add, add, clear, containsKey, convert, convertAndTrim, convertAndTrim, enableLogging, get, getBigDecimal, getBigDecimal, getBigDecimals, getBoolean, getBoolean, getBooleanObject, getBooleanObject, getBooleanObjects, getBooleans, getByte, getByte, getByteObject, getByteObject, getBytes, getCharacterEncoding, getDate, getDate, getDate, getDateFormat, getDouble, getDouble, getDoubleObject, getDoubleObject, getDoubleObjects, getDoubles, getFloat, getFloat, getFloatObject, getFloatObject, getFloatObjects, getFloats, getInt, getInt, getIntObject, getIntObject, getIntObjects, getInts, getKeys, getLocale, getLogger, getLong, getLong, getLongObject, getLongObject, getLongObjects, getLongs, getNumberFormat, getObject, getObjects, getParam, getString, getString, getStrings, getStrings, getToStringParam, getUrlFolding, isDisposed, isValid, iterator, keySet, putParam, recycle, recycle, remove, setCharacterEncoding, setDateFormat, setLocale, setNumberFormat, setParserService, setProperties, setProperty, setString, setStrings, toStringMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.IterableforEach, iterator, spliteratorMethods inherited from interface org.apache.fulcrum.parser.ValueParseradd, add, add, add, add, add, clear, containsKey, convert, convertAndTrim, convertAndTrim, get, getBigDecimal, getBigDecimal, getBigDecimals, getBoolean, getBoolean, getBooleanObject, getBooleanObject, getBooleanObjects, getBooleans, getByte, getByte, getByteObject, getByteObject, getBytes, getCharacterEncoding, getDate, getDate, getDate, getDateFormat, getDouble, getDouble, getDoubleObject, getDoubleObject, getDoubleObjects, getDoubles, getFloat, getFloat, getFloatObject, getFloatObject, getFloatObjects, getFloats, getInt, getInt, getIntObject, getIntObject, getIntObjects, getInts, getKeys, getLocale, getLong, getLong, getLongObject, getLongObject, getLongObjects, getLongs, getNumberFormat, getObject, getObjects, getString, getString, getStrings, getStrings, getUrlFolding, keySet, remove, setCharacterEncoding, setDateFormat, setLocale, setNumberFormat, setProperties, setString, setStrings, toString
- 
Constructor Details- 
DefaultParameterParserpublic DefaultParameterParser()Create a new empty instance of ParameterParser. Uses the default character encoding (US-ASCII).To add name/value pairs to this set of parameters, use the add()methods.
- 
DefaultParameterParserCreate a new empty instance of ParameterParser. Takes a character encoding name to use when converting strings to bytes.To add name/value pairs to this set of parameters, use the add()methods.- Parameters:
- characterEncoding- The character encoding of strings.
 
 
- 
- 
Method Details- 
disposepublic void dispose()Disposes the parser.- Specified by:
- disposein interface- ValueParser
- Overrides:
- disposein class- BaseValueParser
 
- 
getRequestpublic jakarta.servlet.http.HttpServletRequest getRequest()Gets the parsed servlet request.- Specified by:
- getRequestin interface- ParameterParser
- Returns:
- the parsed servlet request or null.
 
- 
setRequestpublic void setRequest(jakarta.servlet.http.HttpServletRequest request) Sets the servlet request to the parser. This requires a valid HttpServletRequest object. It will attempt to parse out the GET/POST/PATH_INFO data and store the data into a Map. There are convenience methods for retrieving the data as a number of different datatypes. The PATH_INFO data must be a URLEncoded() string.Sets the request character encoding to the parser. Sets the request encoding, if it is not set and ParserService.getParameterEncoding()is set to a non-default valueParserService.PARAMETER_ENCODING_DEFAULT(ifServletRequest.getCharacterEncoding()returns null, it has the default set to ISO-8859-1, cft. Servlet 2.4, 2.5, 3.0, 3.1 Specs). This will only succeed, if no data was read yet, cft. spec.To add name/value pairs to this set of parameters, use the add()methods.- Specified by:
- setRequestin interface- ParameterParser
- Parameters:
- request- An HttpServletRequest.
 
- 
handleEncodingprotected void handleEncoding(jakarta.servlet.http.HttpServletRequest request) 
- 
setUploadDatapublic void setUploadData(byte[] uploadData) Sets the uploadData byte[]- Specified by:
- setUploadDatain interface- ParameterParser
- Parameters:
- uploadData- A byte[] with data.
 
- 
getUploadDatapublic byte[] getUploadData()Gets the uploadData byte[]- Specified by:
- getUploadDatain interface- ParameterParser
- Returns:
- uploadData A byte[] with data.
 
- 
addAdd a Part object as a parameters. If there are any Parts already associated with the name, append to the array. The reason for this is that RFC 1867 allows multiple files to be associated with single HTML input element.- Specified by:
- addin interface- ParameterParser
- Parameters:
- name- A String with the name.
- value- A Part with the value.
 
- 
getPartDescription copied from interface:ParameterParserReturn a Part object for the given name. If the name does not exist or the object stored is not a Part, return null.- Specified by:
- getPartin interface- ParameterParser
- Parameters:
- name- A String with the name.
- Returns:
- A Part.
- See Also:
 
- 
getPartsDescription copied from interface:ParameterParserReturn an array of Part objects for the given name. If the name does not exist or the object stored is not a Part array, return null.- Specified by:
- getPartsin interface- ParameterParser
- Parameters:
- name- A String with the name.
- Returns:
- A Part[]
- See Also:
 
- 
getPartsDescription copied from interface:ParameterParserReturn an array of all Part objects. If no parts exist or the object stored is not a Part array, return an empty list.- Specified by:
- getPartsin interface- ParameterParser
- Returns:
- Collection Collection of parts
 
- 
getFileNameDescription copied from interface:ParameterParserConvenience fileName utility, which extracts the filename from header- Specified by:
- getFileNamein interface- ParameterParser
- Parameters:
- part- The part which represents the uploaded file
- Returns:
- the fileName String object.
 
 
-