| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectatg.nucleus.logging.VariableArgumentApplicationLoggingImpl
atg.nucleus.GenericService
atg.epub.servlet.PortletFormHandler
atg.epub.servlet.BaseSearchFormHandler
atg.epub.servlet.SearchFormHandler
public class SearchFormHandler
This form handler can be used to search repositories with any combination of several search types: Keyword, Text, Hierarchical, Advanced. Each of these types are enabled with a boolean parameter. The handler examines each boolean and if true, appends that search's subquery to the full query string.
General Properties
Set one or more of the following properties to "true" to enable a search type:
doKeywordSearch
    doTextSearch
    doHierarchicalSearch
    doAdvancedSearch
    
Keyword Search Properties
 Keyword searching takes a set of property names and a search string(s).
 Each property will be searched for these strings. You may also search *ALL* string properties
 (excluding enumerated and non-queriable properties) of an item by simply leaving the property
 keywordSearchPropertyNames empty.
 
keywordSearchPropertyNames
    keywords
    keywordInput  property
    keywordInput
    keywords, this
    property allows logical operators (AND, OR, NOT, &, |, !) and supports
    parenthesis '(' and ')' to group logic. Quote keyword values with single
    or double quotes if they include spaces. Quote types may not be mixed.
    Logical operators are optional; 'OR' will be used by default
    toUpperCaseKeywords
    toLowerCaseKeywords
    Text Search Properties
Text searching takes a list of text property names and an input search string to do text pattern matching. Values entered will be used to build the sub-query for text searching.
textSearchPropertyNames
    searchStringFormat
    textInput
    simulateTextSearchQueries=true), the SQL
    LIKE operator will be used to determine whether the target value is a
    substring of any of the text properties being searched.
    allowWildcards
    minScore
    Hierarchical Search Properties
 Hierarchical searches look in a subset of items, starting from a given
 item, including also that items's child items, and also those children's
 children, i.e. all descendants of the original item.  The given item is
 indicated by the repository ID in the ancestorId property.
 
ancestorPropertyName
    ancestorId
    Advanced Search Properties
 Advanced searching takes a list of properties and values or ranges of values
 for those properties and looks for an exact match. Additionally, the Advanced
 Search can be used to provide all possible search values for properties
 specified in AdvancedSearchPropertyNames.  For example, enumerated types
 will be defined in the repository with a set number of values.  Advanced
 searching can retrieve these values to be displayed
 in a select box.
 
advancedSearchPropertyNames
    advancedSearchPropertyValues
    advancedSearchPropertyRanges
    propertyValuesByType
    advancedSearchPropertyNames whose type is either enumerated,
    RepositoryItem or a collection of RepositoryItems. The key is the name of
    the property and the value is a Collection of the possible values.
    If the property type a collection of RepositoryItems, the value will be
    a collection of RepositoryItem. Alternatively, if the property type is
      RepositoryItem a property of each item is returned as described below.
    displayName
    propertyValuesByType will be values of the property
      "displayName" when the property is a RepositoryItem. Use this
    property to override the default name of "displayName"
    Form Actions
In addition to the standard "cancel" action of all form handlers:
searchclearQueryallowRefine.
      It will force the previous query to be cleared so that the user may
        begin refining their query anew. 
BaseSearchFormHandler| Field Summary | |
|---|---|
| static java.lang.String | CLASS_VERSIONClass version string | 
| static java.lang.String | GENERATE_VALUES_BY_TYPE_FAILEDdroplet exception code: failed to generate possible values for a property | 
| static java.lang.String | INVALID_KEYWORD_SEARCH_STRINGdroplet exception code: syntax problem in keyword search string | 
| static java.lang.String | INVALID_PROP_COMBINATIONdroplet exception code: cant combine these properties | 
| static java.lang.String | INVALID_SEARCH_PROPERTY_NAMESdroplet exception code: searched property names don't exist in item | 
| static java.lang.String | NO_PROPERTY_NAMES_FOR_ITEMdroplet exception code: no property names specified for searched item | 
| static java.lang.String | UNMATCHED_QUOTESlogical operator search string parse failed because quotes didn't match | 
| Fields inherited from class atg.epub.servlet.BaseSearchFormHandler | 
|---|
| EMPTY_SEARCH_VALUES_DISALLOW, INVALID_ITEM_TYPE, MULTIPLE_ITEM_TYPES_DISALLOW, QUERY_FAILURE | 
| Fields inherited from class atg.epub.servlet.PortletFormHandler | 
|---|
| mFormExceptions, PARAM_USE_FORWARDS, sTransactionManager | 
| Fields inherited from class atg.nucleus.GenericService | 
|---|
| SERVICE_INFO_KEY | 
| Fields inherited from interface atg.nucleus.logging.TraceApplicationLogging | 
|---|
| DEFAULT_LOG_TRACE_STATUS | 
| Fields inherited from interface atg.nucleus.logging.ApplicationLogging | 
|---|
| DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS | 
| Constructor Summary | |
|---|---|
| SearchFormHandler() | |
| Method Summary | |
|---|---|
| protected  boolean | areSearchValuesEmpty()Check to see if all search values are empty for enabled search types | 
|  boolean | beforeSet(DynamoHttpServletRequest request,
          DynamoHttpServletResponse response)Called before any setX methods on this form are set when a form that modifies properties of this form handler is submitted. | 
| protected  Query | generateAdvancedSearchQuery(Repository pRepository,
                            java.lang.String pItemType,
                            QueryBuilder pQueryBuilder)Return a query which represents an advanced search based on selected property values. | 
| protected  Query | generateHierarchicalSearchQuery(java.lang.String pItemType,
                                QueryBuilder pQueryBuilder)Build a query which represents a hierarchical search, that is, a constraint to look only in a designated item, its child items, and so on, in effect, to all descendants of the designated item. | 
| protected  Query | generateKeywordSearchQuery(Repository pRepository,
                           java.lang.String pItemType,
                           QueryBuilder pQueryBuilder)Return a query which represents a keyword search. | 
| protected  java.util.Collection | generateResultSet(java.lang.String pItemType)For the supplied item type return a collection of ==sub-result set that will combined into the total result set. | 
| protected  Query | generateSearchQuery(Repository pRepository,
                    java.lang.String pItemType,
                    QueryBuilder pQueryBuilder)Return the query that should be executed on the Repository View. | 
| protected  java.util.Collection | generateSearchValues(java.lang.String pItemType,
                     java.lang.String pPropertyName)Used by the advanced searching feature. | 
| protected  Query | generateSingleKeywordQuery(Repository pRepository,
                           java.lang.String pItemType,
                           QueryBuilder pQueryBuilder,
                           java.lang.String pPropertyName,
                           java.lang.String pInput)Parses pKeywordInput and converts into RQL statement where each keyword value is used to create a CONTAINS clause. | 
| protected  Query | generateSingleKeywordQuery(Repository pRepository,
                           java.lang.String pItemType,
                           QueryBuilder pQueryBuilder,
                           java.lang.String pPropertyName,
                           java.lang.String[] pKeywords)Return a query for the given property name against the set of supplied keywords. | 
| protected  Query | generateTextSearchQuery(java.lang.String pItemType,
                        QueryBuilder pQueryBuilder,
                        java.lang.String pInput)Return a query which represents a text search query. | 
|  java.lang.String[] | getAdvancedSearchPropertyNames()Returns property AdvancedSearchPropertyNames | 
|  java.util.HashMap | getAdvancedSearchPropertyRanges()Returns property AdvancedSearchPropertyRanges | 
|  java.util.HashMap | getAdvancedSearchPropertyValues()Returns property AdvancedSearchPropertyValues | 
|  boolean | getAllowWildcards()Returns property AllowWildcards | 
|  java.lang.String | getAncestorId()Returns property AncestorId | 
|  java.lang.String | getAncestorPropertyName()Returns property ancestorPropertyName | 
|  java.lang.String | getDisplayName()Returns property displayName | 
|  java.lang.String | getEncodedPathAndItemType()Get the value set as the encoded repository component path name and item descriptor name | 
|  java.lang.String | getFolderPath()Returns property FolderPath | 
|  boolean | getIgnoreCase() | 
|  java.lang.String | getKeywordInput()Returns property KeywordInput | 
|  java.lang.String[] | getKeywords()Returns property Keywords | 
|  java.lang.String[] | getKeywordSearchPropertyNames()Returns property KeywordSearchPropertyNames which is the set of property names for text search | 
|  java.lang.Integer | getMinScore()Returns property MinScore | 
|  java.util.HashMap | getPropertyValuesByType()Returns property PropertyValuesByType. | 
|  java.lang.String | getSearchStringFormat()Returns property SearchStringFormat | 
| protected  java.lang.String | getSingleKeywordSearchOperator(boolean pIsMulti)Return a keyword search operator based on the state of ignoreCase for non-multi items. | 
|  java.lang.String | getTextInput()Returns property TextInput | 
|  java.lang.String[] | getTextSearchPropertyNames()Returns property TextSearchPropertyNames which is the set of property names for text search | 
| protected  VirtualFileSystem | getVFSFromComponentPath(java.lang.String pComponentPath) | 
|  VirtualFileSystem[] | getVirtualFileSystems()Returns property VirtualFileSystems | 
| protected  boolean | isAdvancedSearchPropertyRangesEmpty()test if adv search property ranges null or empty | 
| protected  boolean | isAdvancedSearchPropertyValuesEmpty()test if adv search property values are null or empty | 
|  boolean | isDoAdvancedSearch()Returns property DoAdvancedSearch | 
|  boolean | isDoHierarchicalSearch()Returns property DoHierarchicalSearch | 
|  boolean | isDoKeywordSearch()Returns property DoKeywordSearch | 
|  boolean | isDoTextSearch()Returns property DoTextSearch | 
|  boolean | isIncludeSubFolders()Returns property IncludeSubFolders | 
|  boolean | isToLowerCaseKeywords()Returns property ToLowerCaseKeywords | 
|  boolean | isToUpperCaseKeywords()Returns property ToUpperCaseKeywords | 
|  boolean | isVirtualFileSystemSearch()Returns property VirtualFileSystemSearch | 
| protected  void | prepare(DynamoHttpServletRequest pRequest,
        DynamoHttpServletResponse pResponse)Prepare search properties. | 
| protected  java.util.ArrayList | searchFolder(VirtualFile pFolder,
             atg.vfs.RegexVirtualFilenameFilter pRegexFilter,
             java.lang.String pFileType,
             boolean pIncludeSubFolders) | 
|  void | setAdvancedSearchPropertyNames(java.lang.String[] pAdvancedSearchPropertyNames)Sets property AdvancedSearchPropertyNames | 
|  void | setAdvancedSearchPropertyRanges(java.util.HashMap pRanges)Sets property AdvancedSearchPropertyRanges | 
|  void | setAdvancedSearchPropertyValues(java.util.HashMap pValues)Sets property AdvancedSearchPropertyValues | 
|  void | setAllowWildcards(boolean pAllowWildcards)Sets property AllowWildcards. | 
|  void | setAncestorId(java.lang.String pAncestorId)Sets property AncestorId. | 
|  void | setAncestorPropertyName(java.lang.String pAncestorPropertyName)Sets property ancestorPropertyName | 
|  void | setDisplayName(java.lang.String pDisplayName)Sets property displayName | 
|  void | setDoAdvancedSearch(boolean pDoAdvancedSearch)Sets property DoAdvancedSearch | 
|  void | setDoHierarchicalSearch(boolean pDoHierarchicalSearch)Sets property DoHierarchicalSearch | 
|  void | setDoKeywordSearch(boolean pDoKeywordSearch)Sets property DoKeywordSearch | 
|  void | setDoTextSearch(boolean pDoTextSearch)Sets property DoTextSearch | 
|  void | setEncodedPathAndItemType(java.lang.String pEncodedValue)Set a single repository component path and item descriptor name in an encoded string in which the repository component path and item descriptor name are seperated by a colon: /repository/path/name:itemDescriptorName Used in forms to make it easy to specify these values in a choice box. | 
|  void | setFolderPath(java.lang.String pFolderPath)Sets property FolderPath | 
|  void | setIgnoreCase(boolean pIgnoreCase)Set to true to use IGNORECASE in queries. | 
|  void | setIncludeSubFolders(boolean pIncludeSubFolders)Sets property IncludeSubFolders | 
|  void | setKeywordInput(java.lang.String pKeywordInput)Sets property KeywordInput | 
|  void | setKeywords(java.lang.String[] pKeywords)Sets property Keywords | 
|  void | setKeywordSearchPropertyNames(java.lang.String[] pKeywordSearchPropertyNames)Sets property KeywordSearchPropertyNames | 
|  void | setMinScore(java.lang.Integer pMinScore)Sets property MinScore. | 
|  void | setPropertyValuesByType()Sets property PropertyValuesByType. | 
|  void | setSearchStringFormat(java.lang.String pSearchStringFormat)Sets property SearchStringFormat used by Text search. | 
|  void | setTextInput(java.lang.String pTextInput)Sets property TextInput used for Text searches. | 
|  void | setTextSearchPropertyNames(java.lang.String[] pTextSearchPropertyNames)Sets property TextSearchPropertyNames | 
|  void | setToLowerCaseKeywords(boolean pToLowerCaseKeywords)Sets property ToLowerCaseKeywords | 
|  void | setToUpperCaseKeywords(boolean pToUpperCaseKeywords)Sets property ToUpperCaseKeywords | 
|  void | setVirtualFileSystems(VirtualFileSystem[] pVirtualFileSystems)Sets property VirtualFileSystems | 
|  void | setVirtualFileSystemSearch(boolean pVirtualFileSystemSearch)Sets property VirtualFileSystemSearch | 
| protected  void | splitPropertyNames(java.lang.String[] pTypes,
                   java.lang.String[] pSource,
                   java.util.HashMap pDest,
                   java.lang.String pSearchType)Split property names into type and name from type.name | 
| protected  java.lang.String[] | transformKeywords(java.lang.String[] pKeywords)With the supplied keywords perform any modifications that are required to allow it to be used within a keyword query. | 
| Methods inherited from class atg.epub.servlet.BaseSearchFormHandler | 
|---|
| afterSet, beforeGet, clearPreviousQueries, clearSearchResults, conditionallyClearProject, conditionallySetProjectContext, doGetSortProperty, generateSearchResults, getAllowEmptySearch, getAllowRefine, getClearQueries, getClearQueryURL, getCurrentResultPageNum, getEnableFullResultSetSize, getEndCount, getEndIndex, getErrorURL, getExcludedStringPropertyNames, getFullResultSetSize, getItemTypes, getLastSortDirection, getLastSortProperty, getLocale, getMaxResultsPerPage, getMaxRowCount, getMoreResults, getRepositories, getRepositoryFromComponentPath, getResultPageCount, getResultSetSize, getSearchFilters, getSearchResults, getSearchResultsByItemType, getSortDirection, getSortedSearch, getSortProperty, getStartCount, getStartIndex, getSuccessURL, getUnsetProjectContext, getVersioningLayerTools, handleClearQuery, handleClearQuery, handleSearch, handleSearch, handleSortedSearch, handleSortedSearch, isEnableCountQuery, isPrepared, isPreviouslySubmitted, isSortByDisplayName, isStringPropertyExcluded, isUseRequestLocale, prepareSearch, processException, resetMaxRowCount, setAllowEmptySearch, setAllowRefine, setClearQueries, setClearQueryURL, setCurrentResultPageNum, setEnableCountQuery, setEnableFullResultSetSize, setEndIndex, setErrorURL, setExcludedStringPropertyNames, setFullResultSetSize, setItemTypes, setLastSortDirection, setLastSortProperty, setLocale, setMaxResultsPerPage, setMaxRowCount, setMoreResults, setPrepared, setRepositories, setResultSetSize, setSearchFilters, setSortByDisplayName, setSortDirection, setSortedSearch, setSortProperty, setStartIndex, setSuccessURL, setUnsetProjectContext, setUseRequestLocale, unsetProjectContext | 
| Methods inherited from class atg.nucleus.logging.VariableArgumentApplicationLoggingImpl | 
|---|
| vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning | 
| Methods inherited from class java.lang.Object | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
|---|
public static java.lang.String CLASS_VERSION
public static final java.lang.String INVALID_SEARCH_PROPERTY_NAMES
public static final java.lang.String GENERATE_VALUES_BY_TYPE_FAILED
public static final java.lang.String NO_PROPERTY_NAMES_FOR_ITEM
public static final java.lang.String INVALID_KEYWORD_SEARCH_STRING
public static final java.lang.String INVALID_PROP_COMBINATION
public static final java.lang.String UNMATCHED_QUOTES
| Constructor Detail | 
|---|
public SearchFormHandler()
| Method Detail | 
|---|
public void setVirtualFileSystems(VirtualFileSystem[] pVirtualFileSystems)
public VirtualFileSystem[] getVirtualFileSystems()
public void setVirtualFileSystemSearch(boolean pVirtualFileSystemSearch)
public boolean isVirtualFileSystemSearch()
public void setFolderPath(java.lang.String pFolderPath)
public java.lang.String getFolderPath()
public void setIncludeSubFolders(boolean pIncludeSubFolders)
public boolean isIncludeSubFolders()
public java.lang.String getEncodedPathAndItemType()
public void setEncodedPathAndItemType(java.lang.String pEncodedValue)
pEncodedValue - the encoded repository component path and
 item descriptor namepublic void setIgnoreCase(boolean pIgnoreCase)
pIgnoreCase - true to ignore casepublic boolean getIgnoreCase()
public void setDoKeywordSearch(boolean pDoKeywordSearch)
pDoKeywordSearch - the property to store the boolean value of whether
  or not to perform a keyword search.public boolean isDoKeywordSearch()
public void setDoTextSearch(boolean pDoTextSearch)
pDoTextSearch - the property to store the boolean value of whether or
  not to perform a text search.public boolean isDoTextSearch()
public void setDoHierarchicalSearch(boolean pDoHierarchicalSearch)
pDoHierarchicalSearch - the property to store the boolean value of
  whether or not to perform a hierarchical search.public boolean isDoHierarchicalSearch()
public void setDoAdvancedSearch(boolean pDoAdvancedSearch)
pDoAdvancedSearch - the property to store the boolean value of
  whether or not to perform a advanced search.public boolean isDoAdvancedSearch()
public void setKeywordSearchPropertyNames(java.lang.String[] pKeywordSearchPropertyNames)
pKeywordSearchPropertyNames - The property to store the names of all the
  keyword properties. Expects names to be qualified by item-type (i.e.
  "item-type.property-name".public java.lang.String[] getKeywordSearchPropertyNames()
public void setTextSearchPropertyNames(java.lang.String[] pTextSearchPropertyNames)
pTextSearchPropertyNames - the property to store text search property
  names.public java.lang.String[] getTextSearchPropertyNames()
public void setAdvancedSearchPropertyNames(java.lang.String[] pAdvancedSearchPropertyNames)
pAdvancedSearchPropertyNames - the property to store advanced search
  property names.public java.lang.String[] getAdvancedSearchPropertyNames()
public void setAdvancedSearchPropertyRanges(java.util.HashMap pRanges)
Map - of range values (min & max) for Advanced Search property namespublic java.util.HashMap getAdvancedSearchPropertyRanges()
protected boolean isAdvancedSearchPropertyRangesEmpty()
public java.util.HashMap getPropertyValuesByType()
advancedSearchPropertyNames whose type is either enumerated
 or RepositoryItem. The key is the name of the property and the value is a
 Collection of the possible values.
public void setPropertyValuesByType()
public java.util.HashMap getAdvancedSearchPropertyValues()
public void setAdvancedSearchPropertyValues(java.util.HashMap pValues)
pAdvancedSearchPropertyValues - the property to store selected
  property values for advanced searching. The key is the item type and the
  value is another map of property name to search values.protected boolean isAdvancedSearchPropertyValuesEmpty()
public java.lang.String getDisplayName()
public void setDisplayName(java.lang.String pDisplayName)
pDisplayName - the property name to use when an advanced search
  queries a property that is another RepositoryItem.public void setKeywords(java.lang.String[] pKeywords)
pKeywords - the property to store keywords to search for in keyword
  property names.  if not set, the property "keywordInput" will be usedpublic java.lang.String[] getKeywords()
public void setKeywordInput(java.lang.String pKeywordInput)
pKeywordInput - the property to store the input search string. Keyword
  search will use this if keyword property is not set.public java.lang.String getKeywordInput()
public void setAncestorPropertyName(java.lang.String pAncestorPropertyName)
pAncestorPropertyName - the property to store the value of ancestor
  property name.public java.lang.String getAncestorPropertyName()
public void setAncestorId(java.lang.String pAncestorId)
pAncestorId - the property to store the repositoryId of the ancestor
  to search in for Hierarchical searches.public java.lang.String getAncestorId()
public void setTextInput(java.lang.String pTextInput)
pTextInput - the property to store the input search string.public java.lang.String getTextInput()
public void setSearchStringFormat(java.lang.String pSearchStringFormat)
pSearchStringFormat - the property to store any string formatting
  information parameters for searching.public java.lang.String getSearchStringFormat()
public void setAllowWildcards(boolean pAllowWildcards)
pAllowWildcards - a boolean property that determines if Text searching
  should allow the character '*' to be used as a wildcardpublic boolean getAllowWildcards()
public void setMinScore(java.lang.Integer pMinScore)
pMinScore - the property to store the minimum scoring used for text
  searching.public java.lang.Integer getMinScore()
public void setToUpperCaseKeywords(boolean pToUpperCaseKeywords)
pToUpperCaseKeywords - the property to store the boolean value of
  whether or not to convert input string to upper case.public boolean isToUpperCaseKeywords()
public void setToLowerCaseKeywords(boolean pToLowerCaseKeywords)
pToLowerCaseKeywords - the property to store the boolean value of
  whether or not to convert input string to lower case.public boolean isToLowerCaseKeywords()
public boolean beforeSet(DynamoHttpServletRequest request,
                         DynamoHttpServletResponse response)
                  throws DropletFormException
beforeSet in class atg.epub.servlet.BaseSearchFormHandlerDropletFormExceptionprotected java.util.Collection generateResultSet(java.lang.String pItemType)
generateResultSet in class atg.epub.servlet.BaseSearchFormHandlerpItemType - the type of item to search for.
protected boolean areSearchValuesEmpty()
areSearchValuesEmpty in class atg.epub.servlet.BaseSearchFormHandlerprotected VirtualFileSystem getVFSFromComponentPath(java.lang.String pComponentPath)
protected java.util.ArrayList searchFolder(VirtualFile pFolder,
                                           atg.vfs.RegexVirtualFilenameFilter pRegexFilter,
                                           java.lang.String pFileType,
                                           boolean pIncludeSubFolders)
protected Query generateSearchQuery(Repository pRepository,
                                    java.lang.String pItemType,
                                    QueryBuilder pQueryBuilder)
                             throws RepositoryException,
                                    DropletFormException
generateSearchQuery in class atg.epub.servlet.BaseSearchFormHandlerpRepository - the repository to search inpItemType - the type of item to search for.pQueryBuilder - the builder that should be used to construct the query
RepositoryException - if an error occured while forming the query
DropletFormException
protected Query generateKeywordSearchQuery(Repository pRepository,
                                           java.lang.String pItemType,
                                           QueryBuilder pQueryBuilder)
                                    throws RepositoryException,
                                           DropletFormException
keywords
 property is set, this method builds a sub-query for each attribute named in
 the KeywordSearchPropertyNames property. Each sub-query is OR'd
 together to form the total query. If the attribute named is of a Collection
 or array type, then an "includes any" query is formed. Single-value
 attributes use a CONTAINS comparison query.
 If keywords is empty, keywordInput is used to
 build an RQL statement instead.
pRepository - the Repository to search inpItemType - the type of item to search for. Typically corresponds to
 an item descriptor namepQueryBuilder - the builder that should be used to construct the query
RepositoryException - if an error occured while forming the query
DropletFormException
protected Query generateSingleKeywordQuery(Repository pRepository,
                                           java.lang.String pItemType,
                                           QueryBuilder pQueryBuilder,
                                           java.lang.String pPropertyName,
                                           java.lang.String[] pKeywords)
                                    throws RepositoryException
RepositoryExceptionprotected java.lang.String getSingleKeywordSearchOperator(boolean pIsMulti)
protected Query generateSingleKeywordQuery(Repository pRepository,
                                           java.lang.String pItemType,
                                           QueryBuilder pQueryBuilder,
                                           java.lang.String pPropertyName,
                                           java.lang.String pInput)
                                    throws RepositoryException,
                                           DropletFormException
RepositoryException
DropletFormException
protected Query generateTextSearchQuery(java.lang.String pItemType,
                                        QueryBuilder pQueryBuilder,
                                        java.lang.String pInput)
                                 throws RepositoryException
textSearchPropertyNames property. Each sub-query is OR'd
 together to form the total query. The search string format is configured
 with the searchStringFormat property.
pItemType - the type of item to search for.pQueryBuilder - the builder that should be used to construct the querypInput - the search string to use for the full text search
RepositoryException - if an error occured while forming the query
protected Query generateAdvancedSearchQuery(Repository pRepository,
                                            java.lang.String pItemType,
                                            QueryBuilder pQueryBuilder)
                                     throws RepositoryException,
                                            DropletFormException
pRepository - the repository to searchpItemType - the type of item to search for.pQueryBuilder - the builder that should be used to construct the query
RepositoryException - if an error occured while forming the query
DropletFormException
protected Query generateHierarchicalSearchQuery(java.lang.String pItemType,
                                                QueryBuilder pQueryBuilder)
                                         throws RepositoryException
Note: this query assumes that the item type being searched for has a property (as indicated by the value of theancestorPropertyName property) whose value is a collection of all its ancestor groups. If the designated item is contained in this collection, then this query returns true.
pItemType - the type of item to search for. Typically corresponds to
 an item descriptor namepQueryBuilder - the builder that should be used to construct the query
RepositoryException - if an error occured while forming the query
protected java.util.Collection generateSearchValues(java.lang.String pItemType,
                                                    java.lang.String pPropertyName)
pItemType - item of the property to search for possible valuespPropertyName - name of the property to get possible values for
protected void splitPropertyNames(java.lang.String[] pTypes,
                                  java.lang.String[] pSource,
                                  java.util.HashMap pDest,
                                  java.lang.String pSearchType)
protected java.lang.String[] transformKeywords(java.lang.String[] pKeywords)
toLowerCaseKeywords and toUpperCaseKeywords
 properties to determine if String.toLowerCase or String.toUpperCase should
 be invoked.
pKeywords - the words to transform for querying
protected void prepare(DynamoHttpServletRequest pRequest,
                       DynamoHttpServletResponse pResponse)
prepare in class atg.epub.servlet.BaseSearchFormHandler| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||