public class ExtendedNavigationStateBuilder
extends com.endeca.infront.navigation.url.UrlNavigationStateBuilder
Modifier and Type | Field and Description |
---|---|
protected static java.lang.String |
CLASS_VERSION
Class version string
|
Constructor and Description |
---|
ExtendedNavigationStateBuilder() |
Modifier and Type | Method and Description |
---|---|
NavigationStateProcessor[] |
getNavigationStateProcessors() |
RecordFilterBuilder[] |
getNonSecurityFilterBuilders() |
atg.endeca.assembler.navigation.filter.RangeFilterBuilder[] |
getRangeFilterBuilders() |
RecordFilterBuilder[] |
getRecordFilterBuilders() |
RecordFilterBuilder |
getSecurityFilterBuilder() |
RecordFilterBuilder[] |
getSecurityFilterBuilders() |
protected com.endeca.infront.navigation.model.FilterState |
parseFilterState(com.endeca.soleng.urlformatter.UrlState pUrlState)
Allows the security filter to be provided by securityFilterBuilder, thus allowing us to
calculate security filter based on user profile, etc.
|
com.endeca.infront.navigation.NavigationState |
parseNavigationState(java.lang.String pQueryString,
java.lang.String pPathInfo,
java.lang.String pCharacterEncoding)
Retrieve the NavigationStateProcessor component and invoke its process
method passing in the NavigationState returned from calling super.
|
protected java.util.List<com.endeca.infront.navigation.model.RangeFilter> |
parseRangeFilters(com.endeca.soleng.urlformatter.UrlState urlState)
Adds custom range filters provided by the rangeFilterBuilders property to
the NavigationState.
|
protected java.util.List<java.lang.String> |
parseRecordFilters(com.endeca.soleng.urlformatter.UrlState pUrlState)
Adds custom record filters provided by record filter builders.
|
com.endeca.infront.navigation.RecordState |
parseRecordState(java.lang.String pQueryString,
java.lang.String pPathInfo,
java.lang.String pCharacterEncoding)
This overridden method ensures that the current request's pathInfo
parameter has a value.
|
void |
setNavigationStateProcessors(NavigationStateProcessor[] pNavigationStateProcessors) |
void |
setRangeFilterBuilders(atg.endeca.assembler.navigation.filter.RangeFilterBuilder[] pRangeFilterBuilders) |
void |
setRecordFilterBuilders(RecordFilterBuilder[] pRecordFilterBuilders) |
static java.util.List<java.lang.String> |
splitRecordFilters(java.util.List<java.lang.String> pRecordFilters)
For each record filter in the list the method checks whether the filter
is a union of filters and if so splits it into individual record filters.
|
addAutoPhraseEnabled, addEqlFilter, addFeaturedRecords, addGeoFilter, addLanguageId, addNavigationFilters, addParameters, addParameters, addRangeFilters, addRecordFilters, addRecordSpec, addSearchFilters, buildUrlState, buildUrlState, getAggregateRecordSpecParam, getAutophraseParam, getDefaultFilterState, getDefaultMatchMode, getDefaultSearchKey, getEqlParam, getFeaturedRecordsParam, getGeoFilterParam, getLanguageParam, getMdexRequestBroker, getNavigationFiltersParam, getRangeFiltersParam, getRecordDetailsDimensionNames, getRecordFilterParam, getRecordSpecParam, getRemoveAlways, getRemoveOnClearFilterState, getRemoveOnUpdateFilterState, getSearchFiltersKeyParam, getSearchFiltersMatchModeParam, getSearchFiltersParam, getSiteManager, getSiteState, getUrlFormatter, parseApplicationFilterState, parseFeaturedRecords, parseGeoFilter, parseNavigationFilters, parseNavigationState, parseParameters, parseRecordSpec, parseRecordState, parseSearchFilters, setAggregateRecordSpecParam, setAutophraseParam, setDefaultFilterState, setDefaultMatchMode, setDefaultSearchKey, setEqlParam, setFeaturedRecordsParam, setGeoFilterParam, setLanguageParam, setMdexRequestBroker, setNavigationFiltersParam, setRangeFiltersParam, setRecordDetailsDimensionNames, setRecordFilterParam, setRecordSpecParam, setRemoveAlways, setRemoveOnClearFilterState, setRemoveOnUpdateFilterState, setSearchFiltersKeyParam, setSearchFiltersMatchModeParam, setSearchFiltersParam, setSiteManager, setSiteState, setUrlFormatter
protected static final java.lang.String CLASS_VERSION
public atg.endeca.assembler.navigation.filter.RangeFilterBuilder[] getRangeFilterBuilders()
public void setRangeFilterBuilders(atg.endeca.assembler.navigation.filter.RangeFilterBuilder[] pRangeFilterBuilders)
public RecordFilterBuilder[] getRecordFilterBuilders()
public void setRecordFilterBuilders(RecordFilterBuilder[] pRecordFilterBuilders)
pRecordFilterBuilders
- the recordFilterBuilders to setpublic RecordFilterBuilder[] getNonSecurityFilterBuilders()
public RecordFilterBuilder getSecurityFilterBuilder()
public RecordFilterBuilder[] getSecurityFilterBuilders()
public NavigationStateProcessor[] getNavigationStateProcessors()
public void setNavigationStateProcessors(NavigationStateProcessor[] pNavigationStateProcessors)
pNavigationStateProcessors
- the NavigationStateProcessors to setprotected java.util.List<java.lang.String> parseRecordFilters(com.endeca.soleng.urlformatter.UrlState pUrlState) throws com.endeca.infront.navigation.NavigationException
parseRecordFilters
in class com.endeca.infront.navigation.url.UrlNavigationStateBuilder
com.endeca.infront.navigation.NavigationException
protected java.util.List<com.endeca.infront.navigation.model.RangeFilter> parseRangeFilters(com.endeca.soleng.urlformatter.UrlState urlState) throws com.endeca.infront.navigation.NavigationException
parseRangeFilters
in class com.endeca.infront.navigation.url.UrlNavigationStateBuilder
com.endeca.infront.navigation.NavigationException
public static java.util.List<java.lang.String> splitRecordFilters(java.util.List<java.lang.String> pRecordFilters)
pRecordFilters
- The initial list of record filters to splitprotected com.endeca.infront.navigation.model.FilterState parseFilterState(com.endeca.soleng.urlformatter.UrlState pUrlState) throws com.endeca.infront.navigation.NavigationException
null
, uses the default
security filter provided by the default filter state.parseFilterState
in class com.endeca.infront.navigation.url.UrlNavigationStateBuilder
com.endeca.infront.navigation.NavigationException
public com.endeca.infront.navigation.NavigationState parseNavigationState(java.lang.String pQueryString, java.lang.String pPathInfo, java.lang.String pCharacterEncoding) throws com.endeca.infront.navigation.NavigationException
Retrieve the NavigationStateProcessor component and invoke its process method passing in the NavigationState returned from calling super.
This method also ensures that the current request's pathInfo parameter has a value. This is necessary because when the Endeca SeoUrlFormatter is being used, it requires the pathInfo to parse the request.
parseNavigationState
in interface com.endeca.infront.navigation.NavigationStateBuilder
parseNavigationState
in class com.endeca.infront.navigation.url.UrlNavigationStateBuilder
com.endeca.infront.navigation.NavigationException
public com.endeca.infront.navigation.RecordState parseRecordState(java.lang.String pQueryString, java.lang.String pPathInfo, java.lang.String pCharacterEncoding) throws com.endeca.infront.navigation.NavigationException
parseRecordState
in interface com.endeca.infront.navigation.NavigationStateBuilder
parseRecordState
in class com.endeca.infront.navigation.url.UrlNavigationStateBuilder
com.endeca.infront.navigation.NavigationException