Search in sources :

Example 71 with Result

use of org.talend.components.api.component.runtime.Result in project components by Talend.

the class SalesforceBulkQueryReader method getReturnValues.

@Override
public Map<String, Object> getReturnValues() {
    Result result = new Result();
    result.totalCount = dataCount;
    return result.toMap();
}
Also used : BulkResult(org.talend.components.salesforce.runtime.BulkResult) Result(org.talend.components.api.component.runtime.Result)

Example 72 with Result

use of org.talend.components.api.component.runtime.Result in project components by Talend.

the class SnowflakeReader method start.

@Override
public boolean start() throws IOException {
    if (null == factory.getSchema()) {
        factory.setSchema(getSchema());
    }
    result = new Result();
    try {
        statement = getConnection().createStatement();
        resultSet = statement.executeQuery(getQueryString());
        return haveNext();
    } catch (Exception e) {
        throw new IOException(i18nMessages.getMessage("error.processQuery", getQueryString()), e);
    }
}
Also used : IOException(java.io.IOException) ComponentException(org.talend.components.api.exception.ComponentException) IOException(java.io.IOException) SQLException(java.sql.SQLException) NoSuchElementException(java.util.NoSuchElementException) Result(org.talend.components.api.component.runtime.Result)

Example 73 with Result

use of org.talend.components.api.component.runtime.Result in project components by Talend.

the class SnowflakeRuntimeIT method populateOutput.

protected SnowflakeConnectionTableProperties populateOutput(int count) throws Throwable {
    TSnowflakeOutputProperties props = (TSnowflakeOutputProperties) getComponentService().getComponentProperties(TSnowflakeOutputDefinition.COMPONENT_NAME);
    setupProps(props.getConnectionProperties());
    checkAndSetupTable(props);
    props.outputAction.setStoredValue(TSnowflakeOutputProperties.OutputAction.INSERT);
    props.afterOutputAction();
    long time = System.currentTimeMillis();
    LOGGER.info("Start loading: " + count + " rows");
    Result result = makeAndWriteRows(makeWriter(props), count);
    assertEquals(count, result.getSuccessCount());
    assertEquals(0, result.getRejectCount());
    long elapsed = System.currentTimeMillis() - time;
    LOGGER.info("time (ms): " + elapsed + " rows/sec: " + ((float) count / (float) (elapsed / 1000)));
    return props;
}
Also used : TSnowflakeOutputProperties(org.talend.components.snowflake.tsnowflakeoutput.TSnowflakeOutputProperties) ValidationResult(org.talend.daikon.properties.ValidationResult) Result(org.talend.components.api.component.runtime.Result)

Example 74 with Result

use of org.talend.components.api.component.runtime.Result in project components by Talend.

the class SnowflakeWritersTestIT method testOutputFeedback.

@Test
public void testOutputFeedback() throws Throwable {
    TSnowflakeOutputProperties props = (TSnowflakeOutputProperties) getComponentService().getComponentProperties(TSnowflakeOutputDefinition.COMPONENT_NAME);
    setupProps(props.getConnectionProperties());
    setupTableWithStaticValues(props);
    props.outputAction.setStoredValue(TSnowflakeOutputProperties.OutputAction.INSERT);
    DefaultComponentRuntimeContainerImpl container = new DefaultComponentRuntimeContainerImpl();
    // Initialize the Sink, WriteOperation and Writer
    SnowflakeSink sfSink = new SnowflakeSink();
    sfSink.initialize(container, props);
    sfSink.validate(container);
    SnowflakeWriteOperation sfWriteOp = sfSink.createWriteOperation();
    sfWriteOp.initialize(container);
    SnowflakeWriter sfWriter = sfSink.createWriteOperation().createWriter(container);
    sfWriter.open("uid1");
    List<IndexedRecord> rows = makeRows(2);
    IndexedRecord r = rows.get(0);
    r.put(0, "badId");
    r.put(2, "badBoolean");
    r.put(4, "badDate");
    r.put(5, "badTime");
    r.put(6, "badTimestamp");
    sfWriter.write(r);
    sfWriter.write(rows.get(1));
    Result wr1 = sfWriter.close();
    // The rejected writes would come in here
    Iterable<IndexedRecord> rejected = sfWriter.getRejectedWrites();
    Iterator<IndexedRecord> it = rejected.iterator();
    IndexedRecord rej;
    rej = it.next();
    // row
    assertEquals("1", rej.get(1));
    // character
    assertEquals("1", rej.get(3));
    assertThat((String) rej.get(4), containsString("Numeric value 'badId'"));
    // byte offset
    assertEquals("0", rej.get(5));
    // line
    assertEquals("1", rej.get(6));
    // code
    assertEquals("100038", rej.get(8));
    rej = it.next();
    // row
    assertEquals("1", rej.get(1));
    // character
    assertEquals("13", rej.get(3));
    assertThat((String) rej.get(4), containsString("Boolean value 'badBoolean'"));
    // byte offset
    assertEquals("12", rej.get(5));
    // line
    assertEquals("1", rej.get(6));
    // code
    assertEquals("100037", rej.get(8));
    rej = it.next();
    // row
    assertEquals("1", rej.get(1));
    // character
    assertEquals("32", rej.get(3));
    assertThat((String) rej.get(4), containsString("Date 'badDate'"));
    // byte offset
    assertEquals("31", rej.get(5));
    // line
    assertEquals("1", rej.get(6));
    // code
    assertEquals("100040", rej.get(8));
    rej = it.next();
    // row
    assertEquals("1", rej.get(1));
    // character
    assertEquals("40", rej.get(3));
    assertThat((String) rej.get(4), containsString("Time 'badTime'"));
    // byte offset
    assertEquals("39", rej.get(5));
    // line
    assertEquals("1", rej.get(6));
    // code
    assertEquals("100108", rej.get(8));
    rej = it.next();
    // row
    assertEquals("1", rej.get(1));
    // character
    assertEquals("48", rej.get(3));
    assertThat((String) rej.get(4), containsString("Timestamp 'badTimestamp'"));
    // byte offset
    assertEquals("47", rej.get(5));
    // line
    assertEquals("1", rej.get(6));
    // code
    assertEquals("100035", rej.get(8));
    assertFalse(it.hasNext());
    assertEquals(1, wr1.getSuccessCount());
    assertEquals(1, wr1.getRejectCount());
    assertEquals(2, wr1.getTotalCount());
    sfWriteOp.finalize(Arrays.asList(wr1), container);
}
Also used : TSnowflakeOutputProperties(org.talend.components.snowflake.tsnowflakeoutput.TSnowflakeOutputProperties) SnowflakeWriteOperation(org.talend.components.snowflake.runtime.SnowflakeWriteOperation) IndexedRecord(org.apache.avro.generic.IndexedRecord) DefaultComponentRuntimeContainerImpl(org.talend.components.api.container.DefaultComponentRuntimeContainerImpl) SnowflakeWriter(org.talend.components.snowflake.runtime.SnowflakeWriter) SnowflakeSink(org.talend.components.snowflake.runtime.SnowflakeSink) ValidationResult(org.talend.daikon.properties.ValidationResult) Result(org.talend.components.api.component.runtime.Result) Test(org.junit.Test)

Example 75 with Result

use of org.talend.components.api.component.runtime.Result in project components by Talend.

the class SnowflakeWritersTestIT method createSnowflakeOutputWriter.

public Writer<Result> createSnowflakeOutputWriter(TSnowflakeOutputProperties props) {
    SnowflakeSink SnowflakeSink = new SnowflakeSink();
    SnowflakeSink.initialize(container, props);
    SnowflakeWriteOperation writeOperation = SnowflakeSink.createWriteOperation();
    Writer<Result> writer = writeOperation.createWriter(container);
    return writer;
}
Also used : SnowflakeWriteOperation(org.talend.components.snowflake.runtime.SnowflakeWriteOperation) SnowflakeSink(org.talend.components.snowflake.runtime.SnowflakeSink) ValidationResult(org.talend.daikon.properties.ValidationResult) Result(org.talend.components.api.component.runtime.Result)

Aggregations

Result (org.talend.components.api.component.runtime.Result)76 Test (org.junit.Test)42 IndexedRecord (org.apache.avro.generic.IndexedRecord)31 ArrayList (java.util.ArrayList)22 Schema (org.apache.avro.Schema)17 TSalesforceOutputProperties (org.talend.components.salesforce.tsalesforceoutput.TSalesforceOutputProperties)13 ComponentDefinition (org.talend.components.api.component.ComponentDefinition)11 TSalesforceOutputDefinition (org.talend.components.salesforce.tsalesforceoutput.TSalesforceOutputDefinition)11 IOException (java.io.IOException)10 DefaultComponentRuntimeContainerImpl (org.talend.components.api.container.DefaultComponentRuntimeContainerImpl)8 NetSuiteDatasetRuntime (org.talend.components.netsuite.NetSuiteDatasetRuntime)8 NetSuiteSink (org.talend.components.netsuite.NetSuiteSink)8 NetSuiteOutputWriter (org.talend.components.netsuite.output.NetSuiteOutputWriter)8 NetSuiteWriteOperation (org.talend.components.netsuite.output.NetSuiteWriteOperation)8 ValidationResult (org.talend.daikon.properties.ValidationResult)7 NetSuitePortType (com.netsuite.webservices.v2016_2.platform.NetSuitePortType)6 SQLException (java.sql.SQLException)6 List (java.util.List)6 NetSuiteRuntimeImpl (org.talend.components.netsuite.v2016_2.NetSuiteRuntimeImpl)6 NetSuiteSinkImpl (org.talend.components.netsuite.v2016_2.NetSuiteSinkImpl)6