Class FieldQueryNode
- java.lang.Object
-
- org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
-
- org.apache.lucene.queryparser.flexible.core.nodes.FieldQueryNode
-
- All Implemented Interfaces:
Cloneable
,FieldableNode
,FieldValuePairQueryNode<CharSequence>
,QueryNode
,TextableQueryNode
,ValueQueryNode<CharSequence>
- Direct Known Subclasses:
FuzzyQueryNode
,QuotedFieldQueryNode
,WildcardQueryNode
public class FieldQueryNode extends QueryNodeImpl implements FieldValuePairQueryNode<CharSequence>, TextableQueryNode
AFieldQueryNode
represents a element that contains field/text tuple
-
-
Field Summary
Fields Modifier and Type Field Description protected int
begin
The term's begin position.protected int
end
The term's end position.protected CharSequence
field
The term's fieldprotected int
positionIncrement
The term's position increment.protected CharSequence
text
The term's text.-
Fields inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
PLAINTEXT_FIELD_NAME, toQueryStringIgnoreFields
-
-
Constructor Summary
Constructors Constructor Description FieldQueryNode(CharSequence field, CharSequence text, int begin, int end)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FieldQueryNode
cloneTree()
Recursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() methodint
getBegin()
int
getEnd()
CharSequence
getField()
Returns the field associated to the node and every node under it.String
getFieldAsString()
returns null if the field was not specified in the query stringint
getPositionIncrement()
protected CharSequence
getTermEscaped(EscapeQuerySyntax escaper)
protected CharSequence
getTermEscapeQuoted(EscapeQuerySyntax escaper)
CharSequence
getText()
Returns the term.String
getTextAsString()
CharSequence
getValue()
void
setBegin(int begin)
void
setEnd(int end)
void
setField(CharSequence field)
Associates the node to a field.void
setPositionIncrement(int pi)
void
setText(CharSequence text)
void
setValue(CharSequence value)
CharSequence
toQueryString(EscapeQuerySyntax escaper)
convert to a query string understood by the query parserString
toString()
Every implementation of this class should return pseudo xml like this:-
Methods inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
add, add, allocate, clone, containsTag, getChildren, getParent, getTag, getTagMap, isDefaultField, isLeaf, isRoot, removeChildren, removeFromParent, set, setLeaf, setTag, unsetTag
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.lucene.queryparser.flexible.core.nodes.QueryNode
add, add, containsTag, getChildren, getParent, getTag, getTagMap, isLeaf, removeChildren, removeFromParent, set, setTag, unsetTag
-
-
-
-
Field Detail
-
field
protected CharSequence field
The term's field
-
text
protected CharSequence text
The term's text.
-
begin
protected int begin
The term's begin position.
-
end
protected int end
The term's end position.
-
positionIncrement
protected int positionIncrement
The term's position increment.
-
-
Constructor Detail
-
FieldQueryNode
public FieldQueryNode(CharSequence field, CharSequence text, int begin, int end)
- Parameters:
field
- - field nametext
- - valuebegin
- - position in the query stringend
- - position in the query string
-
-
Method Detail
-
getTermEscaped
protected CharSequence getTermEscaped(EscapeQuerySyntax escaper)
-
getTermEscapeQuoted
protected CharSequence getTermEscapeQuoted(EscapeQuerySyntax escaper)
-
toQueryString
public CharSequence toQueryString(EscapeQuerySyntax escaper)
Description copied from interface:QueryNode
convert to a query string understood by the query parser- Specified by:
toQueryString
in interfaceQueryNode
-
toString
public String toString()
Description copied from class:QueryNodeImpl
Every implementation of this class should return pseudo xml like this:For FieldQueryNode: <field start='1' end='2' field='subject' text='foo'/>
- Specified by:
toString
in interfaceQueryNode
- Overrides:
toString
in classQueryNodeImpl
- See Also:
QueryNode.toString()
-
getTextAsString
public String getTextAsString()
- Returns:
- the term
-
getFieldAsString
public String getFieldAsString()
returns null if the field was not specified in the query string- Returns:
- the field
-
getBegin
public int getBegin()
-
setBegin
public void setBegin(int begin)
-
getEnd
public int getEnd()
-
setEnd
public void setEnd(int end)
-
getField
public CharSequence getField()
Description copied from interface:FieldableNode
Returns the field associated to the node and every node under it.- Specified by:
getField
in interfaceFieldableNode
- Returns:
- the field name
-
setField
public void setField(CharSequence field)
Description copied from interface:FieldableNode
Associates the node to a field.- Specified by:
setField
in interfaceFieldableNode
- Parameters:
field
- the field name
-
getPositionIncrement
public int getPositionIncrement()
-
setPositionIncrement
public void setPositionIncrement(int pi)
-
getText
public CharSequence getText()
Returns the term.- Specified by:
getText
in interfaceTextableQueryNode
- Returns:
- The "original" form of the term.
-
setText
public void setText(CharSequence text)
- Specified by:
setText
in interfaceTextableQueryNode
- Parameters:
text
- the text to set
-
cloneTree
public FieldQueryNode cloneTree() throws CloneNotSupportedException
Description copied from interface:QueryNode
Recursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() method- Specified by:
cloneTree
in interfaceQueryNode
- Overrides:
cloneTree
in classQueryNodeImpl
- Returns:
- the cloned tree
- Throws:
CloneNotSupportedException
-
getValue
public CharSequence getValue()
- Specified by:
getValue
in interfaceValueQueryNode<CharSequence>
-
setValue
public void setValue(CharSequence value)
- Specified by:
setValue
in interfaceValueQueryNode<CharSequence>
-
-