Search in sources :

Example 1 with Column

use of org.pentaho.metadata.model.thin.Column in project data-access by pentaho.

the class ModelerServiceIT method columnsConvertedCorrectly_FromColumnInfos.

@Test
public void columnsConvertedCorrectly_FromColumnInfos() throws Exception {
    final String columnId = "id";
    final String columnTitle = "title";
    ColumnInfo[] columnInfos = new ColumnInfo[] { createColumnInfo(columnId, columnTitle) };
    Column[] columns = modelerService.toColumns(columnInfos);
    assertEquals(1, columns.length);
    Column column = columns[0];
    assertEquals(columnId, column.getId());
    assertEquals(columnTitle, column.getName());
}
Also used : Column(org.pentaho.metadata.model.thin.Column) ColumnInfo(org.pentaho.platform.dataaccess.datasource.wizard.models.ColumnInfo) Matchers.anyString(org.mockito.Matchers.anyString) Test(org.junit.Test)

Example 2 with Column

use of org.pentaho.metadata.model.thin.Column in project data-access by pentaho.

the class ModelerService method toColumns.

Column[] toColumns(ColumnInfo[] columnInfos) {
    Column[] columns = new Column[columnInfos.length];
    for (int i = 0; i < columnInfos.length; i++) {
        ColumnInfo columnInfo = columnInfos[i];
        final String id = columnInfo.getId();
        final String title = columnInfo.getTitle();
        if (id == null || title == null) {
            continue;
        }
        Column column = new Column();
        column.setId(id);
        column.setName(title);
        columns[i] = column;
    }
    return columns;
}
Also used : Column(org.pentaho.metadata.model.thin.Column) ColumnInfo(org.pentaho.platform.dataaccess.datasource.wizard.models.ColumnInfo)

Example 3 with Column

use of org.pentaho.metadata.model.thin.Column in project data-access by pentaho.

the class ModelerService method generateCSVDomain.

public Domain generateCSVDomain(ModelInfo modelInfo) throws Exception {
    initKettle();
    try {
        DatabaseMeta database = getDatabaseMeta();
        final String tableName = modelInfo.getStageTableName();
        final String datasourceName = modelInfo.getDatasourceName();
        Column[] columns = toColumns(modelInfo.getColumns());
        PhysicalTableImporter.ImportStrategy importStrategy = new CsvDatasourceImportStrategy(columns);
        TableModelerSource source = createTableModelerSource(database, tableName, null, datasourceName);
        return source.generateDomain(importStrategy);
    } catch (Exception e) {
        logger.error(e);
        throw new Exception(e.getLocalizedMessage());
    }
}
Also used : PhysicalTableImporter(org.pentaho.metadata.automodel.PhysicalTableImporter) TableModelerSource(org.pentaho.agilebi.modeler.util.TableModelerSource) CsvDatasourceImportStrategy(org.pentaho.metadata.automodel.importing.strategy.CsvDatasourceImportStrategy) Column(org.pentaho.metadata.model.thin.Column) DatabaseMeta(org.pentaho.di.core.database.DatabaseMeta) KettleException(org.pentaho.di.core.exception.KettleException)

Aggregations

Column (org.pentaho.metadata.model.thin.Column)3 ColumnInfo (org.pentaho.platform.dataaccess.datasource.wizard.models.ColumnInfo)2 Test (org.junit.Test)1 Matchers.anyString (org.mockito.Matchers.anyString)1 TableModelerSource (org.pentaho.agilebi.modeler.util.TableModelerSource)1 DatabaseMeta (org.pentaho.di.core.database.DatabaseMeta)1 KettleException (org.pentaho.di.core.exception.KettleException)1 PhysicalTableImporter (org.pentaho.metadata.automodel.PhysicalTableImporter)1 CsvDatasourceImportStrategy (org.pentaho.metadata.automodel.importing.strategy.CsvDatasourceImportStrategy)1