Class DocMaker
- java.lang.Object
-
- org.apache.lucene.benchmark.byTask.feeds.DocMaker
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
- Direct Known Subclasses:
SpatialDocMaker
public class DocMaker extends Object implements Closeable
CreatesDocument
objects. Uses aContentSource
to generateDocData
objects. Supports the following parameters:- content.source - specifies the
ContentSource
class to use (default SingleDocSource). - doc.stored - specifies whether fields should be stored (default false).
- doc.body.stored - specifies whether the body field should be stored (default = doc.stored).
- doc.tokenized - specifies whether fields should be tokenized (default true).
- doc.body.tokenized - specifies whether the body field should be tokenized (default = doc.tokenized).
- doc.body.offsets - specifies whether to add offsets into the postings index for the body field. It is useful for highlighting. (default false)
- doc.tokenized.norms - specifies whether norms should be stored in the index or not. (default false).
- doc.body.tokenized.norms - specifies whether norms should be stored in the index for
the body field. This can be set to true, while
doc.tokenized.norms
is set to false, to allow norms storing just for the body field. (default true). - doc.term.vector - specifies whether term vectors should be stored for fields (default false).
- doc.term.vector.positions - specifies whether term vectors should be stored with positions (default false).
- doc.term.vector.offsets - specifies whether term vectors should be stored with offsets (default false).
- doc.store.body.bytes - specifies whether to store the raw bytes of the document's content in the document (default false).
- doc.reuse.fields - specifies whether Field and Document objects should be reused (default true).
- doc.index.props - specifies whether the properties returned by
- doc.random.id.limit - if specified, docs will be assigned random IDs from 0 to this
limit. This is useful with UpdateDoc for testing performance of IndexWriter.updateDocument.
DocData.getProps()
will be indexed. (default false).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
DocMaker.DocState
Document state, supports reuse of field instances across documents (seereuseFields
parameter).
-
Field Summary
Fields Modifier and Type Field Description static String
BODY_FIELD
protected FieldType
bodyValType
static String
BYTES_FIELD
protected Config
config
static String
DATE_FIELD
static String
DATE_MSEC_FIELD
static String
ID_FIELD
protected boolean
indexProperties
static String
NAME_FIELD
protected boolean
reuseFields
protected ContentSource
source
static String
TIME_SEC_FIELD
static String
TITLE_FIELD
protected FieldType
valType
-
Constructor Summary
Constructors Constructor Description DocMaker()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Closes theDocMaker
.protected DocMaker.DocState
getDocState()
Document
makeDocument()
Creates aDocument
object ready for indexing.Document
makeDocument(int size)
Same asmakeDocument()
, only this method creates a document of the given size input bysize
.void
resetInputs()
Reset inputs so that the test run would behave, input wise, as if it just started.void
setConfig(Config config, ContentSource source)
Set the configuration parameters of this doc maker.
-
-
-
Field Detail
-
BODY_FIELD
public static final String BODY_FIELD
- See Also:
- Constant Field Values
-
TITLE_FIELD
public static final String TITLE_FIELD
- See Also:
- Constant Field Values
-
DATE_FIELD
public static final String DATE_FIELD
- See Also:
- Constant Field Values
-
DATE_MSEC_FIELD
public static final String DATE_MSEC_FIELD
- See Also:
- Constant Field Values
-
TIME_SEC_FIELD
public static final String TIME_SEC_FIELD
- See Also:
- Constant Field Values
-
ID_FIELD
public static final String ID_FIELD
- See Also:
- Constant Field Values
-
BYTES_FIELD
public static final String BYTES_FIELD
- See Also:
- Constant Field Values
-
NAME_FIELD
public static final String NAME_FIELD
- See Also:
- Constant Field Values
-
config
protected Config config
-
valType
protected FieldType valType
-
bodyValType
protected FieldType bodyValType
-
source
protected ContentSource source
-
reuseFields
protected boolean reuseFields
-
indexProperties
protected boolean indexProperties
-
-
Method Detail
-
getDocState
protected DocMaker.DocState getDocState()
-
close
public void close() throws IOException
Closes theDocMaker
. The base implementation closes theContentSource
, and it can be overridden to do more work (but make sure to call super.close()).- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-
makeDocument
public Document makeDocument() throws Exception
Creates aDocument
object ready for indexing. This method uses theContentSource
to get the next document from the source, and creates aDocument
object from the returned fields. IfreuseFields
was set to true, it will reuseDocument
andField
instances.- Throws:
Exception
-
makeDocument
public Document makeDocument(int size) throws Exception
Same asmakeDocument()
, only this method creates a document of the given size input bysize
.- Throws:
Exception
-
resetInputs
public void resetInputs() throws IOException
Reset inputs so that the test run would behave, input wise, as if it just started.- Throws:
IOException
-
setConfig
public void setConfig(Config config, ContentSource source)
Set the configuration parameters of this doc maker.
-
-