Package org.apache.fulcrum.parser
Class DefaultParserService
java.lang.Object
org.apache.avalon.framework.logger.AbstractLogEnabled
org.apache.fulcrum.parser.DefaultParserService
- All Implemented Interfaces:
org.apache.avalon.framework.configuration.Configurable
,org.apache.avalon.framework.logger.LogEnabled
,org.apache.avalon.framework.service.Serviceable
,ParserService
public class DefaultParserService
extends org.apache.avalon.framework.logger.AbstractLogEnabled
implements ParserService, org.apache.avalon.framework.configuration.Configurable, org.apache.avalon.framework.service.Serviceable
The DefaultParserService provides the default implementation
of a
ParserService
.- Version:
- $Id: BaseValueParser.java 542062 2007-05-28 00:29:43Z seade $
- Author:
- Thomas Vandahl
-
Field Summary
Fields inherited from interface org.apache.fulcrum.parser.ParserService
AUTOMATIC_DEFAULT, AUTOMATIC_KEY, DEFAULT_MAX_IDLE, DEFAULT_POOL_CAPACITY, FULCRUM_POOL_DEFAULT, FULCRUM_POOL_KEY, PARAMETER_ENCODING_DEFAULT, PARAMETER_ENCODING_KEY, POOL_KEY, ROLE, URL_CASE_FOLDING_KEY
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultParserService
(org.apache.commons.pool2.impl.GenericObjectPoolConfig<?> config) -
Method Summary
Modifier and TypeMethodDescriptionvoid
configure
(org.apache.avalon.framework.configuration.Configuration conf) Avalon component lifecycle methodTrims the string data and applies the conversion specified in the property given by URL_CASE_FOLDING.convertAndTrim
(String value) Convert a String value according to the url-case-folding property.convertAndTrim
(String value, ValueParser.URLCaseFolding fold) A static version of the convert method, which trims the string data and applies the conversion specified in the property given by URL_CASE_FOLDING.boolean
Gets the automaticUpload value from the configurationGet the character encoding that will be used by this ValueParser.<P extends ValueParser>
PGet aValueParser
instance from the service.Gets the folding value from the configurationList
<jakarta.servlet.http.Part> parseUpload
(jakarta.servlet.http.HttpServletRequest request) Parse the given request for uploaded filesvoid
putParser
(ValueParser parser) Clears the parse and puts it back into the pool service.void
service
(org.apache.avalon.framework.service.ServiceManager manager) Avalon component lifecycle methodvoid
setParameterEncoding
(String encoding) Set the character encoding that will be used by this ValueParser.Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
-
Constructor Details
-
DefaultParserService
public DefaultParserService() -
DefaultParserService
public DefaultParserService(org.apache.commons.pool2.impl.GenericObjectPoolConfig<?> config)
-
-
Method Details
-
getParameterEncoding
Get the character encoding that will be used by this ValueParser.- Specified by:
getParameterEncoding
in interfaceParserService
- Returns:
- A String for the parameter encoding
-
setParameterEncoding
Set the character encoding that will be used by this ValueParser. -
convert
Trims the string data and applies the conversion specified in the property given by URL_CASE_FOLDING. It returns a new string so that it does not destroy the value data.- Specified by:
convert
in interfaceParserService
- Parameters:
value
- A String to be processed.- Returns:
- A new String converted to the case as specified by URL_CASE_FOLDING and trimmed.
-
convertAndTrim
Convert a String value according to the url-case-folding property.- Specified by:
convertAndTrim
in interfaceParserService
- Parameters:
value
- the String to convert- Returns:
- a new String.
-
convertAndTrim
A static version of the convert method, which trims the string data and applies the conversion specified in the property given by URL_CASE_FOLDING. It returns a new string so that it does not destroy the value data.- Specified by:
convertAndTrim
in interfaceParserService
- Parameters:
value
- A String to be processed.fold
- The parameter folding to be applied (seeParserService
)- Returns:
- A new String converted to lowercase and trimmed.
-
getUrlFolding
Gets the folding value from the configuration- Specified by:
getUrlFolding
in interfaceParserService
- Returns:
- The current Folding Value
-
getAutomaticUpload
public boolean getAutomaticUpload()Gets the automaticUpload value from the configuration- Specified by:
getAutomaticUpload
in interfaceParserService
- Returns:
- The current automaticUpload Value
-
parseUpload
public List<jakarta.servlet.http.Part> parseUpload(jakarta.servlet.http.HttpServletRequest request) throws org.apache.avalon.framework.service.ServiceException Parse the given request for uploaded files- Specified by:
parseUpload
in interfaceParserService
- Parameters:
request
- the HttpServletRequest object- Returns:
- A list of
Part
s - Throws:
org.apache.avalon.framework.service.ServiceException
- if parsing fails
-
getParser
Get aValueParser
instance from the service. Use the given Class to create the object.- Specified by:
getParser
in interfaceParserService
- Type Parameters:
P
- The ValueParser we are using- Parameters:
ppClass
- parameter parser class- Returns:
- An object that implements ValueParser
- Throws:
InstantiationException
- if the instance could not be created
-
putParser
Clears the parse and puts it back into the pool service. This allows for pooling and recycling As we are not yet using org.apache.fulcrum.pool.Recyclable, we call instedaValueParser.dispose()
.- Specified by:
putParser
in interfaceParserService
- Parameters:
parser
- The value parser to use
-
configure
public void configure(org.apache.avalon.framework.configuration.Configuration conf) throws org.apache.avalon.framework.configuration.ConfigurationException Avalon component lifecycle method- Specified by:
configure
in interfaceorg.apache.avalon.framework.configuration.Configurable
- Parameters:
conf
- the configuration- Throws:
org.apache.avalon.framework.configuration.ConfigurationException
- Generic exception
-
service
public void service(org.apache.avalon.framework.service.ServiceManager manager) throws org.apache.avalon.framework.service.ServiceException Avalon component lifecycle method- Specified by:
service
in interfaceorg.apache.avalon.framework.service.Serviceable
- Parameters:
manager
- The service manager instance- Throws:
org.apache.avalon.framework.service.ServiceException
- generic exception
-