public class LineDocSource extends ContentSource
ContentSource
reading one line at a time as a
Document
from a single file. This saves IO
cost (over DirContentSource) of recursing through a directory and opening a
new file for every document.RuntimeException
will be thrown. In general, you should use this
content source for files that were created with WriteLineDocTask
.LineDocSource.HeaderLineParser
if a header line exists which differs
from WriteLineDocTask.DEFAULT_FIELDS
and to LineDocSource.SimpleLineParser
otherwise.
Modifier and Type | Class and Description |
---|---|
static class |
LineDocSource.HeaderLineParser
LineDocSource.LineParser which sets field names and order by
the header - any header - of the lines file. |
static class |
LineDocSource.LineParser
Reader of a single input line into
DocData . |
static class |
LineDocSource.SimpleLineParser
LineDocSource.LineParser which ignores the header passed to its constructor
and assumes simply that field names and their order are the same
as in WriteLineDocTask.DEFAULT_FIELDS |
encoding, forever, logStep, verbose
Constructor and Description |
---|
LineDocSource() |
Modifier and Type | Method and Description |
---|---|
void |
close()
Called when reading from this content source is no longer required.
|
DocData |
getNextDocData(DocData docData)
Returns the next
DocData from the content source. |
void |
resetInputs()
Resets the input for this content source, so that the test would behave as
if it was just started, input-wise.
|
void |
setConfig(Config config)
Sets the
Config for this content source. |
addBytes, addItem, collectFiles, getBytesCount, getConfig, getItemsCount, getTotalBytesCount, getTotalItemsCount, printStatistics, shouldLog
public void close() throws IOException
ContentItemsSource
close
in interface Closeable
close
in class ContentItemsSource
IOException
public DocData getNextDocData(DocData docData) throws NoMoreDataException, IOException
ContentSource
DocData
from the content source.
Implementations must account for multi-threading, as multiple threads
can call this method simultaneously.getNextDocData
in class ContentSource
NoMoreDataException
IOException
public void resetInputs() throws IOException
ContentItemsSource
NOTE: the default implementation resets the number of bytes and items generated since the last reset, so it's important to call super.resetInputs in case you override this method.
resetInputs
in class ContentItemsSource
IOException
public void setConfig(Config config)
ContentItemsSource
Config
for this content source. If you override this
method, you must call super.setConfig.setConfig
in class ContentItemsSource