本文整理汇总了Java中org.pentaho.di.core.row.ValueMetaInterface.getStorageMetadata方法的典型用法代码示例。如果您正苦于以下问题:Java ValueMetaInterface.getStorageMetadata方法的具体用法?Java ValueMetaInterface.getStorageMetadata怎么用?Java ValueMetaInterface.getStorageMetadata使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.pentaho.di.core.row.ValueMetaInterface
的用法示例。
在下文中一共展示了ValueMetaInterface.getStorageMetadata方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: processRow
import org.pentaho.di.core.row.ValueMetaInterface; //导入方法依赖的package包/类
public boolean processRow( StepMetaInterface smi, StepDataInterface sdi ) throws KettleException {
Object[] r = getRow(); // get row, set busy!
// no more input to be expected...
if ( r == null ) {
// This is an input step, so if there are no incoming rows, we should still execute
if ( !first ) {
setOutputDone();
return false;
}
}
if ( first ) {
first = false;
}
RowMetaInterface outputRowMeta = new RowMeta();
meta.getFields( outputRowMeta, getStepname(), null, null, this, repository, metaStore );
Object[] outputRow = new Object[outputRowMeta.size()];
// Fetch the field values using the given paths
try {
List<ZooKeeperField> fields = meta.getFields();
if ( fields != null ) {
int i = 0;
for ( ZooKeeperField field : fields ) {
Stat dataStat = new Stat();
byte[] bytes = zk.getData( field.getPath(), false, dataStat );
if ( bytes != null ) {
// Get data as string and convert it to the specified type
ValueMetaInterface type = field.getType();
if(type.getStorageMetadata() == null) {
type.setStorageMetadata( new ValueMetaString("data") );
}
outputRow[i] = type.convertBinaryStringToNativeType( bytes );
}
i++;
incrementLinesInput();
}
}
} catch ( Exception e ) {
throw new KettleException( e );
}
putRow( outputRowMeta, outputRow ); // copy row to possible alternate rowset(s).
if ( checkFeedback( getLinesRead() ) ) {
if ( log.isBasic() ) {
logBasic( BaseMessages.getString( PKG, "ZooKeeperInput.Log.LineNumber" ) + getLinesRead() );
}
}
return true;
}