SMILA 1.0 API documentation

org.eclipse.smila.search.servlet
Class ARequestParser

java.lang.Object
  extended by org.eclipse.smila.search.servlet.ARequestParser
Direct Known Subclasses:
HttpRequestParser, MultiPartRequestParser

public class ARequestParser
extends java.lang.Object

base class for request parsers.

Author:
jschumacher

Field Summary
protected  java.lang.String _defaultPipeline
          name of pipeline to use, if the request does not contain a pipeline parameter.
static java.lang.String PARAM_PIPELINE
          name of parameter specifying the workflow name.
static java.lang.String PREFIX_ATTRIBUTE
          prefix for http parameter names specifying attribute values.
static java.lang.String PREFIX_FILTER_MAX
          prefix for range filter max values.
static java.lang.String PREFIX_FILTER_MIN
          prefix for range filter min values.
static java.lang.String PREFIX_FILTER_VAL
          prefix for enum filter values.
static java.lang.String PREFIX_RANKING
          prefix for ranking parameters.
static java.lang.String PREFIX_SORTBY
          prefix for SortBy parameter.
 
Constructor Summary
ARequestParser(java.lang.String defaultPipeline)
          create new instance with default pipeline.
 
Method Summary
protected  void processParameter(QueryBuilder builder, java.lang.String paramName, java.lang.String[] paramValues)
          process http param values.
protected  void setCustomParameterValues(QueryBuilder builder, java.lang.String paramName, java.util.List<java.lang.String> paramValues)
          set query parameters from http params.
protected  void setDefaultParameters(QueryBuilder builder)
          set default parameters for resultSize and resultOffset parameters, if no values where found in the request.
protected  void setupFilters(QueryBuilder builder)
          create filters from information collected during http parameter processing.
protected  void setupListFilter(QueryBuilder builder, java.lang.String attributeName)
          add an enum filter.
protected  void setupQuery(QueryBuilder builder)
          add stuff collected while parsing the request to query builder.
protected  void setupRangeFilter(QueryBuilder builder, java.lang.String attributeName)
          add a range filter.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PREFIX_ATTRIBUTE

public static final java.lang.String PREFIX_ATTRIBUTE
prefix for http parameter names specifying attribute values. The attribute name is the rest of the parameter name after this prefix.

See Also:
Constant Field Values

PREFIX_SORTBY

public static final java.lang.String PREFIX_SORTBY
prefix for SortBy parameter. After the prefix follows the attribute name, the value is either ASCENDING or DESCENDING.

See Also:
Constant Field Values

PREFIX_FILTER_VAL

public static final java.lang.String PREFIX_FILTER_VAL
prefix for enum filter values. Rest of parameter name is attribute name.

See Also:
Constant Field Values

PREFIX_FILTER_MIN

public static final java.lang.String PREFIX_FILTER_MIN
prefix for range filter min values. Rest of parameter name is attribute name.

See Also:
Constant Field Values

PREFIX_FILTER_MAX

public static final java.lang.String PREFIX_FILTER_MAX
prefix for range filter max values. Rest of parameter name is attribute name.

See Also:
Constant Field Values

PREFIX_RANKING

public static final java.lang.String PREFIX_RANKING
prefix for ranking parameters. Rest of parameter name is attribute name dot ranking parameter.

See Also:
Constant Field Values

PARAM_PIPELINE

public static final java.lang.String PARAM_PIPELINE
name of parameter specifying the workflow name.

See Also:
Constant Field Values

_defaultPipeline

protected java.lang.String _defaultPipeline
name of pipeline to use, if the request does not contain a pipeline parameter.

Constructor Detail

ARequestParser

public ARequestParser(java.lang.String defaultPipeline)
create new instance with default pipeline.

Parameters:
defaultPipeline - default pipeline name to use, if request does not contain a pipeline parameter.
Method Detail

setupQuery

protected void setupQuery(QueryBuilder builder)
add stuff collected while parsing the request to query builder.

Parameters:
builder - query builder.

setupFilters

protected void setupFilters(QueryBuilder builder)
create filters from information collected during http parameter processing.

Parameters:
builder - query builder

setupListFilter

protected void setupListFilter(QueryBuilder builder,
                               java.lang.String attributeName)
add an enum filter.

Parameters:
builder - query builder.
attributeName - attribute name.

setupRangeFilter

protected void setupRangeFilter(QueryBuilder builder,
                                java.lang.String attributeName)
add a range filter.

Parameters:
builder - query builder.
attributeName - attribute name.

setDefaultParameters

protected void setDefaultParameters(QueryBuilder builder)
set default parameters for resultSize and resultOffset parameters, if no values where found in the request. This is done mainly to make life easier for the XSL sheet processing the result.

Parameters:
builder - query builder created from http request.

processParameter

protected void processParameter(QueryBuilder builder,
                                java.lang.String paramName,
                                java.lang.String[] paramValues)
process http param values.

Parameters:
builder - query builder
paramName - parameter name
paramValues - parameter values, must not be null or empty.

setCustomParameterValues

protected void setCustomParameterValues(QueryBuilder builder,
                                        java.lang.String paramName,
                                        java.util.List<java.lang.String> paramValues)
set query parameters from http params.

Parameters:
builder - query builder
paramName - parameter name
paramValues - parameter values, must not be null or empty.

SMILA 1.0 API documentation