Package com.yahoo.prelude.query
Class WeightedSetItem
java.lang.Object
com.yahoo.prelude.query.Item
com.yahoo.prelude.query.SimpleTaggableItem
com.yahoo.prelude.query.WeightedSetItem
- All Implemented Interfaces:
TaggableItem
,Cloneable
- Direct Known Subclasses:
DotProductItem
,WandItem
A term which contains a weighted set.
When using a weighted set to search a field, all tokens present in
the searched field will be reverse matched against the weighted
set. This means that using a weighted set to search a single-value
attribute field will have similar semantics to using a normal term
to search a weighted set field. The low-level matching information
resulting from matching a document with a weighted set term will
contain the weights of all the matched tokens in descending
order. Each matched weight will be represented as a standard
occurrence on position 0 in element 0.
-
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
ConstructorDescriptionWeightedSetItem
(String indexName) Creates an empty weighted set; note you must provide an index name up frontWeightedSetItem
(String indexName, Map<Object, Integer> map) -
Method Summary
Modifier and TypeMethodDescriptionaddToken
(long value, int weight) Adds a token with weight 1.Adds a weighted token.protected void
appendBodyString
(StringBuilder buffer) Override to append the item body in the canonical query language of this item.clone()
Returns a deep copy of this itemvoid
int
encode
(ByteBuffer buffer) protected void
encodeThis
(ByteBuffer buffer) boolean
Returns whether this item is of the same class and contains the same state as the given item.Return the enumerated type of this item.getName()
Returns the name of this itemint
int
getTokenWeight
(Object token) int
hashCode()
removeToken
(String token) void
setIndexName
(String index) Sets the index name of this itemMethods inherited from class com.yahoo.prelude.query.SimpleTaggableItem
getConnectedItem, getConnectivity, getSignificance, getUniqueID, hasExplicitSignificance, hasUniqueID, setConnectivity, setExplicitSignificance, setSignificance, setUniqueID
Methods inherited from class com.yahoo.prelude.query.Item
addAnnotation, appendHeadingString, 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, setWeight, shouldParenthesize, toString, usePositionData
-
Constructor Details
-
WeightedSetItem
Creates an empty weighted set; note you must provide an index name up front -
WeightedSetItem
-
-
Method Details
-
addToken
-
addToken
Adds a weighted token. If this token is already in the set, the maximum weight is kept. The weight must be 1 or more; negative values (and zero) are not allowed.- Returns:
- the weight of the added token (might be the old value, if kept)
-
addToken
Adds a token with weight 1. -
getTokenWeight
-
removeToken
-
getNumTokens
public int getNumTokens() -
getTokens
-
setIndexName
Description copied from class:Item
Sets the index name of this item- Specified by:
setIndexName
in classItem
-
getIndexName
-
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 -
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.- Specified by:
appendBodyString
in classItem
-
disclose
-
encode
-
encodeThis
- Overrides:
encodeThis
in classItem
-
getTermCount
public int getTermCount()- Specified by:
getTermCount
in classItem
-
clone
Description copied from class:Item
Returns a deep copy of this item -
equals
Description copied from class:Item
Returns whether this item is of the same class and contains the same state as the given item. -
hashCode
public int hashCode()
-