com.univocity.api.entity.html.processor.BatchedColumnProcessor Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of univocity-html-parser-api Show documentation
Show all versions of univocity-html-parser-api Show documentation
Univocity HTML Parser Public API
The newest version!
/*
* Copyright (c) 2013 Univocity Software Pty Ltd. All rights reserved.
* This file is subject to the terms and conditions defined in file
* 'LICENSE.txt', which is part of this source code package.
*/
package com.univocity.api.entity.html.processor;
import com.univocity.api.entity.html.*;
import com.univocity.parsers.common.processor.core.*;
/**
* A {@link RowProcessor} implementation that stores values of columns in batches. Use this implementation in favor of {@link ColumnProcessor}
* when processing large inputs to avoid running out of memory.
*
* Values parsed in each row will be split into columns of Strings. Each column has its own list of values.
*
* During the execution of the process, the {@link #batchProcessed(int)} method will be invoked after a given number of rows has been processed.
* The user can access the lists with values parsed for all columns using the methods {@link #getColumnValuesAsList()},
* {@link #getColumnValuesAsMapOfIndexes()} and {@link #getColumnValuesAsMapOfNames()}.
* After {@link #batchProcessed(int)} is invoked, all values will be discarded and the next batch of column values will be accumulated.
* This process will repeat until there's no more rows in the input.
*
* @author Univocity Software Pty Ltd - [email protected]
* @see HtmlParser
* @see RowProcessor
* @see AbstractBatchedColumnProcessor
* @see HtmlEntitySettings
*/
public abstract class BatchedColumnProcessor extends AbstractBatchedColumnProcessor implements RowProcessor {
/**
* Constructs a batched column processor configured to invoke the {@link #batchesProcessed} method after a given number of rows has been processed.
*
* @param rowsPerBatch the number of rows to process in each batch.
*/
public BatchedColumnProcessor(int rowsPerBatch) {
super(rowsPerBatch);
}
}