com.endeca.infront.content
Class RequestParamUserStateBuilder

java.lang.Object
  extended by com.endeca.infront.content.RequestParamUserStateBuilder
Direct Known Subclasses:
PreviewUserStateBuilder

public class RequestParamUserStateBuilder
extends Object

Builds UserState objects from parameter values present in the HttpServletRequest.


Field Summary
protected  String mDateParam
           
protected  String mUserAgentParam
           
protected  String mUserSegmentParam
           
 
Constructor Summary
RequestParamUserStateBuilder()
           
 
Method Summary
 UserState createUserState(javax.servlet.http.HttpServletRequest request)
          Returns a UserState object by parsing the information present in the HttpServletRequest.
protected  String parseDate(javax.servlet.http.HttpServletRequest request)
          Returns the date parameter value, using the parameter name set by setDateParam(String).
protected  String parseUserAgent(javax.servlet.http.HttpServletRequest request)
          Returns the user agent parameter value, using the parameter name set by setUserAgentParam(String).
protected  String parseUserSegments(javax.servlet.http.HttpServletRequest request)
          Returns the user segment parameter value, using the parameter name set by setUserSegmentsParam(String).
 void setDateParam(String param)
          Sets the name of the parameter used for obtaining the date information from the HttpServletRequest.
 void setUserAgentParam(String param)
          Sets the name of the parameter used for obtaining the user agent information from the HttpServletRequest.
 void setUserSegmentsParam(String param)
          Sets the name of the parameter used for obtaining the user segment information from the HttpServletRequest.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mUserSegmentParam

protected String mUserSegmentParam

mDateParam

protected String mDateParam

mUserAgentParam

protected String mUserAgentParam
Constructor Detail

RequestParamUserStateBuilder

public RequestParamUserStateBuilder()
Method Detail

setUserSegmentsParam

public void setUserSegmentsParam(String param)
Sets the name of the parameter used for obtaining the user segment information from the HttpServletRequest. Note that the format of the user segments value must be String user segment names separated by pipe characters ('|'). For example, "preferred|standard".

Note that if this class is being used in a production environment, it is highly recommended that the user segment parameter be removed from the navigation URL by adding the user segment parameter name to UrlNavigationStateBuilder.setRemoveAlways(java.util.List).

Parameters:
param - a String specifying the name of the user segment parameter. If null, no user segment information will be read from the HttpServletRequest.
See Also:
parseUserSegments(javax.servlet.http.HttpServletRequest)

setDateParam

public void setDateParam(String param)
Sets the name of the parameter used for obtaining the date information from the HttpServletRequest. Note that the format of the date value must be recognizable by UserState.setDateAsString(String).

Note that if this class is being used in a production environment, it is highly recommended that the user segment parameter be removed from the navigation URL by adding the user segment parameter name to UrlNavigationStateBuilder.setRemoveAlways(java.util.List).

Parameters:
param - a String specifying the name of the date parameter. If null, no date information will be read from the HttpServletRequest.
See Also:
parseDate(javax.servlet.http.HttpServletRequest), UserState.setDateAsString(String)

setUserAgentParam

public void setUserAgentParam(String param)
Sets the name of the parameter used for obtaining the user agent information from the HttpServletRequest. Note that user agent must be properly encoded.

Note that if this class is being used in a production environment, it is highly recommended that the user agent parameter be removed from the navigation URL by adding the user agent parameter name to UrlNavigationStateBuilder.setRemoveAlways(java.util.List).

Parameters:
param - a String specifying the name of the user agent parameter. If null, no user agent information will be read from the HttpServletRequest.
See Also:
parseUserAgent(HttpServletRequest)

createUserState

public UserState createUserState(javax.servlet.http.HttpServletRequest request)
                          throws ContentException
Returns a UserState object by parsing the information present in the HttpServletRequest.

Throws:
ContentException - if the date cannot be parsed into a Date.

parseUserSegments

protected String parseUserSegments(javax.servlet.http.HttpServletRequest request)
Returns the user segment parameter value, using the parameter name set by setUserSegmentsParam(String).

Returns:
user segment parameter value, or null if no user segment parameter name has been set.

parseDate

protected String parseDate(javax.servlet.http.HttpServletRequest request)
Returns the date parameter value, using the parameter name set by setDateParam(String).

Returns:
date parameter value, or null if no date parameter name has been set.

parseUserAgent

protected String parseUserAgent(javax.servlet.http.HttpServletRequest request)
Returns the user agent parameter value, using the parameter name set by setUserAgentParam(String).

Returns:
user agent parameter value, or null if no date parameter name has been set.


Copyright © 2012, Oracle and/or its affiliates. All rights reserved.