public abstract class AbstractField extends java.lang.Object implements Fieldable
| Modifier and Type | Field and Description |
|---|---|
protected int |
binaryLength |
protected int |
binaryOffset |
protected float |
boost |
protected java.lang.Object |
fieldsData |
protected boolean |
isBinary |
protected boolean |
isCompressed |
protected boolean |
isIndexed |
protected boolean |
isStored |
protected boolean |
isTokenized |
protected boolean |
lazy |
protected java.lang.String |
name |
protected boolean |
omitNorms |
protected boolean |
omitTf |
protected boolean |
storeOffsetWithTermVector |
protected boolean |
storePositionWithTermVector |
protected boolean |
storeTermVector |
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractField() |
protected |
AbstractField(java.lang.String name,
Field.Store store,
Field.Index index,
Field.TermVector termVector) |
| Modifier and Type | Method and Description |
|---|---|
int |
getBinaryLength()
Returns length of byte[] segment that is used as value, if Field is not binary
returned value is undefined
|
int |
getBinaryOffset()
Returns offset into byte[] segment that is used as value, if Field is not binary
returned value is undefined
|
byte[] |
getBinaryValue()
Return the raw byte[] for the binary field.
|
byte[] |
getBinaryValue(byte[] result)
Return the raw byte[] for the binary field.
|
float |
getBoost()
Returns the boost factor for hits for this field.
|
boolean |
getOmitNorms()
True if norms are omitted for this indexed field
|
boolean |
getOmitTf()
True if tf is omitted for this indexed field
|
boolean |
isBinary()
True iff the value of the filed is stored as binary
|
boolean |
isCompressed()
True if the value of the field is stored and compressed within the index
|
boolean |
isIndexed()
True iff the value of the field is to be indexed, so that it may be
searched on.
|
boolean |
isLazy()
Indicates whether a Field is Lazy or not.
|
boolean |
isStored()
True iff the value of the field is to be stored in the index for return
with search hits.
|
boolean |
isStoreOffsetWithTermVector()
True iff terms are stored as term vector together with their offsets
(start and end positon in source text).
|
boolean |
isStorePositionWithTermVector()
True iff terms are stored as term vector together with their token positions.
|
boolean |
isTermVectorStored()
True iff the term or terms used to index this field are stored as a term
vector, available from
IndexReader.getTermFreqVector(int,String). |
boolean |
isTokenized()
True iff the value of the field should be tokenized as text prior to
indexing.
|
java.lang.String |
name()
Returns the name of the field as an interned string.
|
void |
setBoost(float boost)
Sets the boost factor hits on this field.
|
void |
setOmitNorms(boolean omitNorms)
Expert:
If set, omit normalization factors associated with this indexed field.
|
void |
setOmitTf(boolean omitTf)
Expert:
If set, omit tf from postings of this indexed field.
|
protected void |
setStoreTermVector(Field.TermVector termVector) |
java.lang.String |
toString()
Prints a Field for human consumption.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitbinaryValue, readerValue, stringValue, tokenStreamValueprotected java.lang.String name
protected boolean storeTermVector
protected boolean storeOffsetWithTermVector
protected boolean storePositionWithTermVector
protected boolean omitNorms
protected boolean isStored
protected boolean isIndexed
protected boolean isTokenized
protected boolean isBinary
protected boolean isCompressed
protected boolean lazy
protected boolean omitTf
protected float boost
protected java.lang.Object fieldsData
protected int binaryLength
protected int binaryOffset
protected AbstractField()
protected AbstractField(java.lang.String name,
Field.Store store,
Field.Index index,
Field.TermVector termVector)
public void setBoost(float boost)
The boost is multiplied by Document.getBoost() of the document
containing this field. If a document has multiple fields with the same
name, all such values are multiplied together. This product is then
multipled by the value Similarity.lengthNorm(String,int), and
rounded by Similarity.encodeNorm(float) before it is stored in the
index. One should attempt to ensure that this product does not overflow
the range of that encoding.
setBoost in interface FieldableDocument.setBoost(float),
Similarity.lengthNorm(String, int),
Similarity.encodeNorm(float)public float getBoost()
The default value is 1.0.
Note: this value is not stored directly with the document in the index.
Documents returned from IndexReader.document(int) and
Hits.doc(int) may thus not have the same value present as when
this field was indexed.
getBoost in interface FieldablesetBoost(float)public java.lang.String name()
protected void setStoreTermVector(Field.TermVector termVector)
public final boolean isStored()
public final boolean isIndexed()
public final boolean isTokenized()
isTokenized in interface Fieldablepublic final boolean isCompressed()
isCompressed in interface Fieldablepublic final boolean isTermVectorStored()
IndexReader.getTermFreqVector(int,String).
These methods do not provide access to the original content of the field,
only to terms used to index it. If the original content must be
preserved, use the stored attribute instead.isTermVectorStored in interface FieldableIndexReader.getTermFreqVector(int, String)public boolean isStoreOffsetWithTermVector()
isStoreOffsetWithTermVector in interface Fieldablepublic boolean isStorePositionWithTermVector()
isStorePositionWithTermVector in interface Fieldablepublic final boolean isBinary()
public byte[] getBinaryValue()
getBinaryLength() and getBinaryOffset() to know which range of bytes in this
returned array belong to the field.getBinaryValue in interface Fieldablepublic byte[] getBinaryValue(byte[] result)
FieldableFieldable.getBinaryLength() and Fieldable.getBinaryOffset() to know which range of bytes in this
returned array belong to the field.
About reuse: if you pass in the result byte[] and it is
used, likely the underlying implementation will hold
onto this byte[] and return it in future calls to
Fieldable.binaryValue() or Fieldable.getBinaryValue().
So if you subsequently re-use the same byte[] elsewhere
it will alter this Fieldable's value.
getBinaryValue in interface Fieldableresult - User defined buffer that will be used if
possible. If this is null or not large enough, a new
buffer is allocatedpublic int getBinaryLength()
getBinaryLength in interface Fieldablepublic int getBinaryOffset()
getBinaryOffset in interface Fieldablepublic boolean getOmitNorms()
getOmitNorms in interface Fieldablepublic boolean getOmitTf()
public void setOmitNorms(boolean omitNorms)
setOmitNorms in interface Fieldablepublic void setOmitTf(boolean omitTf)
public boolean isLazy()
FieldableFieldable.stringValue() or Fieldable.binaryValue() is only valid as long as the IndexReader that
retrieved the Document is still open.public final java.lang.String toString()
toString in class java.lang.ObjectCopyright © 2000-2014 Apache Software Foundation. All Rights Reserved.