Search in sources :

Example 6 with DatabaseImpact

use of org.pentaho.di.trans.DatabaseImpact in project pentaho-kettle by pentaho.

the class DatabaseLookupMeta method analyseImpact.

@Override
public void analyseImpact(List<DatabaseImpact> impact, TransMeta transMeta, StepMeta stepinfo, RowMetaInterface prev, String[] input, String[] output, RowMetaInterface info, Repository repository, IMetaStore metaStore) {
    // The keys are read-only...
    for (int i = 0; i < streamKeyField1.length; i++) {
        ValueMetaInterface v = prev.searchValueMeta(streamKeyField1[i]);
        DatabaseImpact ii = new DatabaseImpact(DatabaseImpact.TYPE_IMPACT_READ, transMeta.getName(), stepinfo.getName(), databaseMeta.getDatabaseName(), tablename, tableKeyField[i], streamKeyField1[i], v != null ? v.getOrigin() : "?", "", BaseMessages.getString(PKG, "DatabaseLookupMeta.Impact.Key"));
        impact.add(ii);
    }
    // The Return fields are read-only too...
    for (int i = 0; i < returnValueField.length; i++) {
        DatabaseImpact ii = new DatabaseImpact(DatabaseImpact.TYPE_IMPACT_READ, transMeta.getName(), stepinfo.getName(), databaseMeta.getDatabaseName(), tablename, returnValueField[i], "", "", "", BaseMessages.getString(PKG, "DatabaseLookupMeta.Impact.ReturnValue"));
        impact.add(ii);
    }
}
Also used : DatabaseImpact(org.pentaho.di.trans.DatabaseImpact) ValueMetaInterface(org.pentaho.di.core.row.ValueMetaInterface)

Example 7 with DatabaseImpact

use of org.pentaho.di.trans.DatabaseImpact in project pentaho-kettle by pentaho.

the class MonetDBBulkLoaderMeta method analyseImpact.

public void analyseImpact(List<DatabaseImpact> impact, TransMeta transMeta, StepMeta stepMeta, RowMetaInterface prev, String[] input, String[] output, RowMetaInterface info, Repository repository, IMetaStore metaStore) throws KettleStepException {
    if (prev != null) {
        // Insert dateMask fields : read/write
        for (int i = 0; i < fieldTable.length; i++) {
            ValueMetaInterface v = prev.searchValueMeta(fieldStream[i]);
            DatabaseImpact ii = new DatabaseImpact(DatabaseImpact.TYPE_IMPACT_READ_WRITE, transMeta.getName(), stepMeta.getName(), databaseMeta.getDatabaseName(), transMeta.environmentSubstitute(tableName), fieldTable[i], fieldStream[i], v != null ? v.getOrigin() : "?", "", "Type = " + v.toStringMeta());
            impact.add(ii);
        }
    }
}
Also used : DatabaseImpact(org.pentaho.di.trans.DatabaseImpact) ValueMetaInterface(org.pentaho.di.core.row.ValueMetaInterface)

Example 8 with DatabaseImpact

use of org.pentaho.di.trans.DatabaseImpact in project pentaho-kettle by pentaho.

the class UpdateMeta method analyseImpact.

@Override
public void analyseImpact(List<DatabaseImpact> impact, TransMeta transMeta, StepMeta stepMeta, RowMetaInterface prev, String[] input, String[] output, RowMetaInterface info, Repository repository, IMetaStore metaStore) throws KettleStepException {
    if (prev != null) {
        // Lookup: we do a lookup on the natural keys
        for (int i = 0; i < keyLookup.length; i++) {
            ValueMetaInterface v = prev.searchValueMeta(keyStream[i]);
            DatabaseImpact ii = new DatabaseImpact(DatabaseImpact.TYPE_IMPACT_READ, transMeta.getName(), stepMeta.getName(), databaseMeta.getDatabaseName(), tableName, keyLookup[i], keyStream[i], v != null ? v.getOrigin() : "?", "", "Type = " + v.toStringMeta());
            impact.add(ii);
        }
        // Update fields : read/write
        for (int i = 0; i < updateLookup.length; i++) {
            ValueMetaInterface v = prev.searchValueMeta(updateStream[i]);
            DatabaseImpact ii = new DatabaseImpact(DatabaseImpact.TYPE_IMPACT_UPDATE, transMeta.getName(), stepMeta.getName(), databaseMeta.getDatabaseName(), tableName, updateLookup[i], updateStream[i], v != null ? v.getOrigin() : "?", "", "Type = " + v.toStringMeta());
            impact.add(ii);
        }
    }
}
Also used : DatabaseImpact(org.pentaho.di.trans.DatabaseImpact) ValueMetaInterface(org.pentaho.di.core.row.ValueMetaInterface)

Example 9 with DatabaseImpact

use of org.pentaho.di.trans.DatabaseImpact in project pentaho-kettle by pentaho.

the class PGBulkLoaderMeta method analyseImpact.

public void analyseImpact(List<DatabaseImpact> impact, TransMeta transMeta, StepMeta stepMeta, RowMetaInterface prev, String[] input, String[] output, RowMetaInterface info, Repository repository, IMetaStore metaStore) throws KettleStepException {
    if (prev != null) {
        // Insert dateMask fields : read/write
        for (int i = 0; i < fieldTable.length; i++) {
            ValueMetaInterface v = prev.searchValueMeta(fieldStream[i]);
            DatabaseImpact ii = new DatabaseImpact(DatabaseImpact.TYPE_IMPACT_READ_WRITE, transMeta.getName(), stepMeta.getName(), databaseMeta.getDatabaseName(), transMeta.environmentSubstitute(tableName), fieldTable[i], fieldStream[i], v != null ? v.getOrigin() : "?", "", "Type = " + v.toStringMeta());
            impact.add(ii);
        }
    }
}
Also used : DatabaseImpact(org.pentaho.di.trans.DatabaseImpact) ValueMetaInterface(org.pentaho.di.core.row.ValueMetaInterface)

Example 10 with DatabaseImpact

use of org.pentaho.di.trans.DatabaseImpact in project pentaho-kettle by pentaho.

the class LucidDBBulkLoaderMeta method analyseImpact.

public void analyseImpact(List<DatabaseImpact> impact, TransMeta transMeta, StepMeta stepMeta, RowMetaInterface prev, String[] input, String[] output, RowMetaInterface info, Repository repository, IMetaStore metaStore) throws KettleStepException {
    if (prev != null) {
        // Insert dateMask fields : read/write
        for (int i = 0; i < fieldTable.length; i++) {
            ValueMetaInterface v = prev.searchValueMeta(fieldStream[i]);
            DatabaseImpact ii = new DatabaseImpact(DatabaseImpact.TYPE_IMPACT_READ_WRITE, transMeta.getName(), stepMeta.getName(), databaseMeta.getDatabaseName(), transMeta.environmentSubstitute(tableName), fieldTable[i], fieldStream[i], v != null ? v.getOrigin() : "?", "", "Type = " + v.toStringMeta());
            impact.add(ii);
        }
    }
}
Also used : DatabaseImpact(org.pentaho.di.trans.DatabaseImpact) ValueMetaInterface(org.pentaho.di.core.row.ValueMetaInterface)

Aggregations

DatabaseImpact (org.pentaho.di.trans.DatabaseImpact)21 ValueMetaInterface (org.pentaho.di.core.row.ValueMetaInterface)19 RowMetaInterface (org.pentaho.di.core.row.RowMetaInterface)4 ArrayList (java.util.ArrayList)1 MessageBox (org.eclipse.swt.widgets.MessageBox)1 RowMetaAndData (org.pentaho.di.core.RowMetaAndData)1 KettleExtensionPoint (org.pentaho.di.core.extension.KettleExtensionPoint)1 Point (org.pentaho.di.core.gui.Point)1 RowMeta (org.pentaho.di.core.row.RowMeta)1 PreviewRowsDialog (org.pentaho.di.ui.core.dialog.PreviewRowsDialog)1 TransGraph (org.pentaho.di.ui.spoon.trans.TransGraph)1