當前位置: 首頁>>代碼示例>>Java>>正文


Java Trans.getLogChannel方法代碼示例

本文整理匯總了Java中org.pentaho.di.trans.Trans.getLogChannel方法的典型用法代碼示例。如果您正苦於以下問題:Java Trans.getLogChannel方法的具體用法?Java Trans.getLogChannel怎麽用?Java Trans.getLogChannel使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.pentaho.di.trans.Trans的用法示例。


在下文中一共展示了Trans.getLogChannel方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: injectDataSetIntoStep

import org.pentaho.di.trans.Trans; //導入方法依賴的package包/類
private void injectDataSetIntoStep( final Trans trans, final TransMeta transMeta,
  final String dataSetName, final MetaStoreFactory<DataSet> dataSetFactory,
  final Repository repository, final IMetaStore metaStore, final StepMeta stepMeta, 
  TransUnitTestSetLocation inputLocation ) throws MetaStoreException, KettleException {

  final DataSet dataSet = dataSetFactory.loadElement( dataSetName );
  final DataSetGroup group = dataSet.getGroup();
  final Database database = new Database( trans, group.getDatabaseMeta() );
  final LogChannelInterface log = trans.getLogChannel();
  
  final RowMetaInterface injectRowMeta = DataSetConst.getStepOutputFields(log, transMeta, stepMeta, dataSet, inputLocation);    
  final RowProducer rowProducer = trans.addRowProducer( stepMeta.getName(), 0 );

  // Look for the step into which we'll inject rows...
  //
  StepMetaDataCombi combi = null;
  for ( StepMetaDataCombi step : trans.getSteps() ) {
    if ( step.stepname.equals( stepMeta.getName() ) ) {
      combi = step;
      break;
    }
  }

  if ( combi != null ) {

    log.logBasic( "Injecting data set '" + dataSetName + "' into step '" + stepMeta.getName() + "', fields: "+injectRowMeta.toStringMeta() );
    final List<Object[]> rows = dataSet.getAllRows(log, inputLocation, injectRowMeta);
    
    // Pass rows
    try {
      Runnable runnable = new Runnable() {
        @Override
        public void run() {
          try {
            
            for( Object[] row : rows ) {
              // pass the row with the external names
              //
              rowProducer.putRow( injectRowMeta, row );                
            }
            rowProducer.finished();
            
          } catch ( Exception e ) {
            throw new RuntimeException( "Problem injecting data set '" + dataSetName + "' row into step '" + stepMeta.getName() + "'", e );
          }
        }
      };
      Thread thread = new Thread( runnable );
      thread.start();

    } finally {
      database.disconnect();
    }
  }
}
 
開發者ID:mattcasters,項目名稱:pentaho-pdi-dataset,代碼行數:56,代碼來源:InjectDataSetIntoTransExtensionPoint.java

示例2: DataCleanerKettleFileWriter

import org.pentaho.di.trans.Trans; //導入方法依賴的package包/類
public DataCleanerKettleFileWriter(Trans trans, StepMeta stepMeta) throws Exception {
    this.trans = trans;
    this.transMeta = trans.getTransMeta();
    this.stepMeta = stepMeta;
    this.log = trans.getLogChannel();
}
 
開發者ID:datacleaner,項目名稱:pdi-datacleaner,代碼行數:7,代碼來源:DataCleanerKettleFileWriter.java


注:本文中的org.pentaho.di.trans.Trans.getLogChannel方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。