org.etlunit.io.file.DataFileSchema Maven / Gradle / Ivy
package org.etlunit.io.file;
import java.util.List;
import java.util.Map;
public interface DataFileSchema
{
Column getColumn(String name);
interface Column
{
enum basic_type
{
string,
numeric,
integer
}
basic_type getBasicType();
void setBasicType(basic_type type);
boolean validateText(String text);
String getId();
void setOffset(int offset);
int getOffset();
boolean hasType();
String getType();
void setType(String type);
void setLength(int length);
int getLength();
}
public enum format_type
{
delimited,
fixed
}
String getId();
DataFileSchema createSubViewIncludingColumns(List columns, String id, format_type format);
DataFileSchema createSubViewIncludingColumns(List columns, String id);
DataFileSchema createSubViewExcludingColumns(List columns, String id, format_type format);
DataFileSchema createSubViewExcludingColumns(List columns, String id);
String toJsonString();
void setColumnDelimiter(String delimiter);
void setRowDelimiter(String delimiter);
void setNullToken(String token);
void setFormatType(DataFileSchema.format_type type);
String getColumnDelimiter();
String getRowDelimiter();
String getNullToken();
DataFileSchema.format_type getFormatType();
Map validateAndSplitLine(String line);
Column createColumn(String id);
void addColumn(Column column);
void addKeyColumn(String name);
void addOrderColumn(String name);
void setKeyColumns(List names);
void setOrderColumns(List names);
List getColumns();
List getColumnNames();
List getOrderColumns();
List getOrderColumnNames();
List getKeyColumns();
List getKeyColumnNames();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy