Search in sources :

Example 6 with Row

use of org.openforis.collect.relational.data.Row in project collect by openforis.

the class DataTableDataExtractor method extractRow.

private Row extractRow(Node<?> source) {
    List<Column<?>> columns = table.getColumns();
    Row row = new Row(table);
    for (int i = 0; i < columns.size(); i++) {
        Column<?> col = columns.get(i);
        Object val = extractColumnValue(source, col);
        row.setValue(i, val);
    }
    return row;
}
Also used : CodeValueFKColumn(org.openforis.collect.relational.model.CodeValueFKColumn) DataColumn(org.openforis.collect.relational.model.DataColumn) DataPrimaryKeyColumn(org.openforis.collect.relational.model.DataPrimaryKeyColumn) Column(org.openforis.collect.relational.model.Column) CoordinateLatLonColumn(org.openforis.collect.relational.model.CoordinateLatLonColumn) DataAncestorFKColumn(org.openforis.collect.relational.model.DataAncestorFKColumn) Row(org.openforis.collect.relational.data.Row)

Example 7 with Row

use of org.openforis.collect.relational.data.Row in project collect by openforis.

the class RDBPrintTask method writeBatchInsert.

protected void writeBatchInsert(Table<?> table, DataExtractor extractor) throws IOException {
    if (extractor.hasNext()) {
        writer.write("INSERT INTO ");
        writer.write(getQualifiedName(table));
        writer.write('(');
        writer.write(StringUtils.join(doubleQuote(getColumnNames(table)), ", "));
        writer.write(')');
        writer.write(" VALUES ");
        writer.write('\n');
        while (extractor.hasNext()) {
            if (!isRunning()) {
                return;
            }
            Row row = extractor.next();
            writer.write('\t');
            writer.write('(');
            List<String> stringValues = getStringValues(row);
            writer.write(StringUtils.join(stringValues, ", "));
            writer.write(')');
            if (extractor.hasNext()) {
                writer.write(',');
                writer.write('\n');
            }
        }
        writer.write(';');
        writer.write('\n');
    }
}
Also used : Row(org.openforis.collect.relational.data.Row)

Example 8 with Row

use of org.openforis.collect.relational.data.Row in project collect by openforis.

the class SqlWriter method writeBatchInsert.

protected void writeBatchInsert(Table<?> table, DataExtractor extractor) throws IOException {
    if (extractor.hasNext()) {
        writer.write("INSERT INTO ");
        writer.write(getQualifiedName(table));
        writer.write('(');
        writer.write(StringUtils.join(doubleQuote(getColumnNames(table)), ", "));
        writer.write(')');
        writer.write(" VALUES ");
        writer.write('\n');
        while (extractor.hasNext()) {
            Row row = extractor.next();
            writer.write('\t');
            writer.write('(');
            List<String> stringValues = getStringValues(row);
            writer.write(StringUtils.join(stringValues, ", "));
            writer.write(')');
            if (extractor.hasNext()) {
                writer.write(',');
                writer.write('\n');
            }
        }
        writer.write(';');
        writer.write('\n');
    }
}
Also used : Row(org.openforis.collect.relational.data.Row)

Aggregations

Row (org.openforis.collect.relational.data.Row)8 Column (org.openforis.collect.relational.model.Column)3 CodeLabelColumn (org.openforis.collect.relational.model.CodeLabelColumn)2 CodeListCodeColumn (org.openforis.collect.relational.model.CodeListCodeColumn)2 CodeListDescriptionColumn (org.openforis.collect.relational.model.CodeListDescriptionColumn)2 CodeParentKeyColumn (org.openforis.collect.relational.model.CodeParentKeyColumn)2 CodePrimaryKeyColumn (org.openforis.collect.relational.model.CodePrimaryKeyColumn)2 CodeValueFKColumn (org.openforis.collect.relational.model.CodeValueFKColumn)1 CoordinateLatLonColumn (org.openforis.collect.relational.model.CoordinateLatLonColumn)1 DataAncestorFKColumn (org.openforis.collect.relational.model.DataAncestorFKColumn)1 DataColumn (org.openforis.collect.relational.model.DataColumn)1 DataPrimaryKeyColumn (org.openforis.collect.relational.model.DataPrimaryKeyColumn)1 DataTable (org.openforis.collect.relational.model.DataTable)1 CodeListItem (org.openforis.idm.metamodel.CodeListItem)1 PersistedCodeListItem (org.openforis.idm.metamodel.PersistedCodeListItem)1 Node (org.openforis.idm.model.Node)1 Path (org.openforis.idm.path.Path)1