Sha256: 7a17b0e46fcc5af7e007fc390e742f86067c0457e7265f76d5303d6441c22663

Contents?: true

Size: 1.69 KB

Versions: 2

Compression:

Stored size: 1.69 KB

Contents

package org.embulk.parser.poi_excel.visitor;

import java.util.ArrayList;
import java.util.List;

import org.apache.poi.ss.usermodel.Sheet;
import org.embulk.parser.poi_excel.PoiExcelParserPlugin.ColumnOptionTask;
import org.embulk.parser.poi_excel.PoiExcelParserPlugin.PluginTask;
import org.embulk.spi.Column;
import org.embulk.spi.ColumnConfig;
import org.embulk.spi.PageBuilder;
import org.embulk.spi.SchemaConfig;

public class PoiExcelVisitorValue {
	private final PluginTask task;
	private final Sheet sheet;
	private final PageBuilder pageBuilder;
	private PoiExcelVisitorFactory factory;

	private List<ColumnOptionTask> columnOptions;

	public PoiExcelVisitorValue(PluginTask task, Sheet sheet, PageBuilder pageBuilder) {
		this.task = task;
		this.sheet = sheet;
		this.pageBuilder = pageBuilder;
	}

	public PluginTask getPluginTask() {
		return task;
	}

	public Sheet getSheet() {
		return sheet;
	}

	public PageBuilder getPageBuilder() {
		return pageBuilder;
	}

	public void setVisitorFactory(PoiExcelVisitorFactory factory) {
		this.factory = factory;
	}

	public PoiExcelVisitorFactory getVisitorFactory() {
		return factory;
	}

	public ColumnOptionTask getColumnOption(Column column) {
		return getColumnOptions().get(column.getIndex());
	}

	public List<ColumnOptionTask> getColumnOptions() {
		if (columnOptions == null) {
			SchemaConfig schemaConfig = task.getColumns();
			columnOptions = new ArrayList<>(schemaConfig.getColumnCount());
			for (ColumnConfig c : schemaConfig.getColumns()) {
				ColumnOptionTask option = c.getOption().loadConfig(ColumnOptionTask.class);
				columnOptions.add(option);
			}
		}
		return columnOptions;
	}
}

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
embulk-parser-poi_excel-0.1.1 src/main/java/org/embulk/parser/poi_excel/visitor/PoiExcelVisitorValue.java
embulk-parser-poi_excel-0.1.0 src/main/java/org/embulk/parser/poi_excel/visitor/PoiExcelVisitorValue.java