public class BatchAttributeGenerator extends java.lang.Object implements Commandable, Options
Note: Order of entries is not guaranteed to be preserved for parallel evaluation.
How to Use This Class
There are two major use cases for this class
Usage: <batch size> <output method>
[<output options...>]
batch size: Number of entries to compute at once
output method: Name of BaseDatasetOutput
method used for output
output options: Any options for the output method
| Modifier and Type | Field and Description |
|---|---|
protected Dataset |
AttributeComputer
Dataset used to generate attributes
|
protected int |
BatchSize
Number of entries to evaluate at a single time
|
protected BaseDatasetOutput |
Outputter
Tool used to output data
|
| Constructor and Description |
|---|
BatchAttributeGenerator()
Create an batch writer using the default settings: comma-delimited file,
batch size of 10000 entries
|
BatchAttributeGenerator(BaseDatasetOutput outputter,
int batchSize)
Create a batch evaluator with a specified output method and batch size
|
| Modifier and Type | Method and Description |
|---|---|
protected java.util.List<BaseEntry> |
getBatch()
Get a batch of entries.
|
void |
output(Dataset data,
java.io.File file)
Compute attributes and write entries to a file
|
void |
output(Dataset template,
java.util.Iterator<BaseEntry> iterator,
java.io.OutputStream out)
Compute attributes and write entries to an output stream in batches
|
void |
output(Dataset data,
java.io.OutputStream out)
Compute attributes and write entries to an output stream in batches
|
java.lang.String |
printUsage()
Print out required format for options.
|
java.lang.Object |
runCommand(java.util.List<java.lang.Object> Command)
Process some command described by a list of Objects.
|
void |
setBatchSize(int size)
Define maximum number of entries to compute at a single time
|
protected void |
setEntryIterator(java.util.Iterator<BaseEntry> iterator)
Set the iterator over entries being processed
|
void |
setOptions(java.util.List<java.lang.Object> Options)
Set any options for this object.
|
void |
setOutputter(BaseDatasetOutput output)
Define tool used to output data
|
protected void |
writeEntries(Dataset toWrite,
java.io.OutputStream output)
Write entries to output stream
|
protected BaseDatasetOutput Outputter
protected int BatchSize
protected Dataset AttributeComputer
public BatchAttributeGenerator()
public BatchAttributeGenerator(BaseDatasetOutput outputter, int batchSize)
outputter - Output method (default: DelimitedOutput)batchSize - Batch size (default: 10000)public void setOptions(java.util.List<java.lang.Object> Options)
throws java.lang.Exception
OptionssetOptions in interface OptionsOptions - Array of options as Objects - can be nulljava.lang.Exception - if problem with inputspublic java.lang.String printUsage()
OptionsprintUsage in interface Optionspublic void setOutputter(BaseDatasetOutput output)
output - Output methodpublic void setBatchSize(int size)
size - Desired batch sizeprotected void setEntryIterator(java.util.Iterator<BaseEntry> iterator)
iterator - Iteratorpublic void output(Dataset data, java.io.File file) throws java.io.IOException
data - Dataset to be writtenfile - Path to output filejava.io.IOExceptionpublic void output(Dataset data, java.io.OutputStream out)
data - Dataset to be writtenout - Output stream for datapublic void output(Dataset template, java.util.Iterator<BaseEntry> iterator, java.io.OutputStream out)
template - Dataset used to generate attributesiterator - Iterator over entries to be printedout - Output stream for dataprotected java.util.List<BaseEntry> getBatch()
protected void writeEntries(Dataset toWrite, java.io.OutputStream output)
toWrite - Entries to be writtenoutput - Desired output streampublic java.lang.Object runCommand(java.util.List<java.lang.Object> Command)
throws java.lang.Exception
CommandablerunCommand in interface CommandableCommand - Command as a list of objectsjava.lang.Exception - If something goes wrong