Package com.yahoo.prelude.query
Class PhraseSegmentItem
- All Implemented Interfaces:
BlockItem
,HasIndexItem
,IndexedItem
,TaggableItem
,Cloneable
A term which contains a fixed length phrase, a collection of word terms,
resulting from a single segmentation operation.
- Author:
- Steinar Knutsen
-
Nested Class Summary
Nested classes/interfaces inherited from class com.yahoo.prelude.query.Item
Item.ItemCreator, Item.ItemType
-
Field Summary
Fields inherited from class com.yahoo.prelude.query.Item
connectedBacklink, connectedItem, connectivity, DEFAULT_WEIGHT, explicitSignificance, significance, uniqueID
-
Constructor Summary
ConstructorDescriptionPhraseSegmentItem
(AndSegmentItem andSegment) Creates a phrase containing the same words and state (as pertinent) as the given SegmentAndItem.PhraseSegmentItem
(String rawWord, boolean isFromQuery, boolean stemmed) PhraseSegmentItem
(String rawWord, String current, boolean isFromQuery, boolean stemmed) Creates a phrase segment from stringsPhraseSegmentItem
(String rawWord, String current, boolean isFromQuery, boolean stemmed, Substring substring) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds subitem.protected void
appendBodyString
(StringBuilder buffer) Override to append the item body in the canonical query language of this item.protected void
appendHeadingString
(StringBuilder buffer) Segment phrase items uses a empty heading instead of "SPHRASE "void
int
encode
(ByteBuffer buffer) int
encodeContent
(ByteBuffer buffer) protected void
encodeThis
(ByteBuffer buffer) Encodes just this item, not its regular subitems, to the given buffer.boolean
Returns whether this item is of the same class and contains the same state as the given item.Returns the single child of this, if this can be omitted without changes to recall semantics.Return the searchable term contents of this item.Return the enumerated type of this item.getName()
Returns the name of this itemgetWordItem
(int index) Returns a subitem as a word itemint
hashCode()
boolean
void
setExplicit
(boolean explicit) void
setIndexName
(String index) Sets the name of the index to searchvoid
setWeight
(int weight) Sets the relative importance of this termprotected boolean
Returns false, no parenthezes for phrasesMethods inherited from class com.yahoo.prelude.query.IndexedSegmentItem
appendIndexString, getIndexName
Methods inherited from class com.yahoo.prelude.query.TaggableSegmentItem
getConnectedItem, getConnectivity, getSignificance, getUniqueID, hasExplicitSignificance, hasUniqueID, setConnectivity, setExplicitSignificance, setSignificance, setUniqueID
Methods inherited from class com.yahoo.prelude.query.SegmentItem
addItem, clone, getNormalized, getNumWords, getOrigin, getRawWord, getSegmentingRule, isFromQuery, isFromUser, isLocked, isStemmed, isWords, lock, removeItem, removeItem, setFromUser, setSegmentingRule, stringValue
Methods inherited from class com.yahoo.prelude.query.CompositeItem
acceptsItemsOfType, adding, encodingArity, ensureNotInSubtree, getItem, getItemCount, getItemIndex, getItemIterator, getTermCount, items, setItem
Methods inherited from class com.yahoo.prelude.query.Item
addAnnotation, getAnnotation, getBytes, getCode, getCreator, getLabel, getLanguage, getParent, getWeight, hasAnnotation, hasConnectivityBackLink, isFilter, isFromSpecialToken, isProtected, isRanked, isRoot, putBytes, putString, setCreator, setFilter, setFromSpecialToken, setHasUniqueID, setLabel, setLanguage, setParent, setPositionData, setProtected, setRanked, toString, usePositionData
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.yahoo.prelude.query.HasIndexItem
getNumWords
-
Constructor Details
-
PhraseSegmentItem
Creates a phrase containing the same words and state (as pertinent) as the given SegmentAndItem. -
PhraseSegmentItem
-
PhraseSegmentItem
Creates a phrase segment from strings- Parameters:
rawWord
- the raw text as received in the requestcurrent
- the normalized form of the raw text, or the raw text repeated if no normalized form is knownisFromQuery
- whether this originates in the requeststemmed
- whether this is stemmed
-
PhraseSegmentItem
-
-
Method Details
-
getItemType
Description copied from class:Item
Return the enumerated type of this item.- Specified by:
getItemType
in classItem
-
getName
Description copied from class:Item
Returns the name of this item -
setIndexName
Description copied from class:IndexedSegmentItem
Sets the name of the index to search- Specified by:
setIndexName
in interfaceIndexedItem
- Overrides:
setIndexName
in classIndexedSegmentItem
-
setWeight
public void setWeight(int weight) Description copied from class:Item
Sets the relative importance of this term -
addItem
Adds subitem. The word will have its index name set to the index name of this phrase. If the item is a word, it will simply be added, if the item is a phrase, each of the words of the phrase will be added.- Overrides:
addItem
in classSegmentItem
- Throws:
IllegalArgumentException
- if the given item is not a WordItem or PhraseItem
-
extractSingleChild
Description copied from class:CompositeItem
Returns the single child of this, if this can be omitted without changes to recall semantics.- Overrides:
extractSingleChild
in classCompositeItem
-
getWordItem
Returns a subitem as a word item- Parameters:
index
- the (0-base) index of the item to return- Throws:
IndexOutOfBoundsException
- if there is no subitem at index
-
encodeThis
Description copied from class:CompositeItem
Encodes just this item, not its regular subitems, to the given buffer.- Overrides:
encodeThis
in classIndexedSegmentItem
-
encode
- Overrides:
encode
in classCompositeItem
-
encodeContent
-
shouldParenthesize
protected boolean shouldParenthesize()Returns false, no parenthezes for phrases- Overrides:
shouldParenthesize
in classCompositeItem
-
appendHeadingString
Segment phrase items uses a empty heading instead of "SPHRASE "- Overrides:
appendHeadingString
in classItem
-
appendBodyString
Description copied from class:Item
Override to append the item body in the canonical query language of this item. An item is usually represented by the string([itemName] [body])
The body must be appended appended by this method.- Overrides:
appendBodyString
in classCompositeItem
-
getIndexedString
Description copied from interface:IndexedItem
Return the searchable term contents of this item.- Specified by:
getIndexedString
in interfaceIndexedItem
- Specified by:
getIndexedString
in classIndexedSegmentItem
- Returns:
- a string representation of what is presumably stored in an index which will match this item
-
isExplicit
public boolean isExplicit() -
setExplicit
public void setExplicit(boolean explicit) -
disclose
- Overrides:
disclose
in classIndexedSegmentItem
-
equals
Description copied from class:CompositeItem
Returns whether this item is of the same class and contains the same state as the given item.- Overrides:
equals
in classIndexedSegmentItem
-
hashCode
public int hashCode()- Overrides:
hashCode
in classIndexedSegmentItem
-