/** * Build an empty row based on the meta-data... * * @return */ private Object[] buildEmptyRow() { Object[] rowData = RowDataUtil.allocateRowData( data.outputRowMeta.size() ); return rowData; }
/** * Add a single value to a row of data * * @param rowData * The original row of data * @param the * length of the row data or of it's longer, the location of the new extra value in the returned data row * @param extra * The extra value to add * @return a new Array containing all elements, including the extra one */ public static Object[] addValueData( Object[] rowData, int length, Object extra ) { Object[] result = resizeArray( rowData, length + 1 ); result[length] = extra; return result; }
private Object[] buildResult( Object[] r ) throws KettleValueException { Object[] result = null; if ( r != null || meta.isAlwaysGivingBackOneRow() ) { result = RowDataUtil.allocateRowData( data.groupnrs.length ); if ( r != null ) { for ( int i = 0; i < data.groupnrs.length; i++ ) { result[ i ] = r[ data.groupnrs[ i ] ]; } } result = RowDataUtil.addRowData( result, data.groupnrs.length, getAggregateResult() ); } return result; }
public Object[] createOutputRow( Object[] inputRow, int outputRowSize ) { if ( meta.isClearingResultFields() ) { return RowDataUtil.allocateRowData( outputRowSize ); } else { return RowDataUtil.createResizedCopy( inputRow, outputRowSize ); } } }
private Object[] getOneRow() throws KettleException { if ( !openNextFile() ) { return null; } // Build an empty row based on the meta-data Object[] r; try { // Create new row or clone if ( meta.isFileField() ) { r = data.readrow.clone(); r = RowDataUtil.resizeArray( r, data.outputRowMeta.size() ); } else { r = RowDataUtil.allocateRowData( data.outputRowMeta.size() ); } if ( meta.isSmartCount() && data.foundData ) { // We have data right the last separator, // we need to update the row count data.rownr++; } r[data.totalpreviousfields] = data.rownr; if ( meta.includeCountFiles() ) { r[data.totalpreviousfields + 1] = data.filenr; } incrementLinesInput(); } catch ( Exception e ) { throw new KettleException( "Unable to read row from file", e ); } return r; }
metastructureRow = RowDataUtil.allocateRowData( data.outputRowMeta.size() ); RowDataUtil.addValueData( metastructureRow, 0, v_position.convertDataCompatible( v_position, new Long( i + 1 ) ) ); metastructureRow = RowDataUtil.addValueData( metastructureRow, 1, v.getName() ); metastructureRow = RowDataUtil.addValueData( metastructureRow, 2, v.getComments() ); metastructureRow = RowDataUtil.addValueData( metastructureRow, 3, v.getTypeDesc() ); RowDataUtil.addValueData( metastructureRow, 4, v_length.convertDataCompatible( v_length, new Long( v .getLength() ) ) ); RowDataUtil.addValueData( metastructureRow, 5, v_precision.convertDataCompatible( v_precision, new Long( v.getPrecision() ) ) ); metastructureRow = RowDataUtil.addValueData( metastructureRow, 6, v.getOrigin() ); RowDataUtil.addValueData( metastructureRow, 7, v_rowCount.convertDataCompatible( v_rowCount, new Long( data.rowCount ) ) );
data.one_dummy = RowDataUtil.allocateRowData( data.oneMeta.size() + data.twoMeta.size() ); for ( Iterator<Object[]> twoIter = data.twos.iterator(); twoIter.hasNext() && !isStopped(); ) { Object[] two = twoIter.next(); Object[] oneBig = RowDataUtil.createResizedCopy( one, data.oneMeta.size() + data.twoMeta.size() ); Object[] combi = RowDataUtil.addRowData( oneBig, data.oneMeta.size(), two ); putRow( data.outputRowMeta, combi ); Object[] outputRowData = RowDataUtil.addRowData( data.one, data.oneMeta.size(), data.two ); putRow( data.outputRowMeta, outputRowData ); Object[] outputRowData = RowDataUtil.createResizedCopy( data.one_dummy, data.outputRowMeta.size() ); outputRowData = RowDataUtil.addRowData( outputRowData, data.oneMeta.size(), data.two ); putRow( data.outputRowMeta, outputRowData ); data.two = getRowFrom( data.twoRowSet ); Object[] outputRowData = RowDataUtil.createResizedCopy( data.one, data.outputRowMeta.size() ); outputRowData = RowDataUtil.addRowData( outputRowData, data.oneMeta.size(), data.two_dummy ); putRow( data.outputRowMeta, outputRowData ); data.one = getRowFrom( data.oneRowSet ); Object[] outputRowData = RowDataUtil.createResizedCopy( data.one, data.outputRowMeta.size() ); outputRowData = RowDataUtil.addRowData( outputRowData, data.oneMeta.size(), data.two_dummy ); putRow( data.outputRowMeta, outputRowData ); data.one = getRowFrom( data.oneRowSet ); Object[] outputRowData = RowDataUtil.createResizedCopy( data.one, data.outputRowMeta.size() ); outputRowData = RowDataUtil.addRowData( outputRowData, data.oneMeta.size(), data.two_dummy ); putRow( data.outputRowMeta, outputRowData );
private Object[] addCounter( RowMetaInterface outputRowMeta, Object[] r, long count ) { if ( meta.isCountRows() ) { Object[] outputRow = RowDataUtil.addValueData( r, outputRowMeta.size() - 1, new Long( count ) ); return outputRow; } else { return r; // nothing to do } }
public Object[] getRow( Object[] baseOutputRow, Object[] rawPartRow, JsonInputData data ) throws KettleException { if ( rawPartRow == null ) { return null; } for ( int i = 0; i < rawPartRow.length; i++ ) { int outIdx = data.totalpreviousfields + i; Object val = getValue( data.outputRowMeta.getValueMeta( outIdx ), data.convertRowMeta.getValueMeta( outIdx ), rawPartRow[i] ); rawPartRow[i] = val; if ( val == null && data.repeatedFields.get( i ) && data.previousRow != null ) { rawPartRow[i] = data.previousRow[outIdx]; } } data.previousRow = RowDataUtil.addRowData( baseOutputRow, data.totalpreviousfields, rawPartRow ); return data.previousRow; }
outputRowData = RowDataUtil.addRowData( data.readrow, data.totalPreviousFields, outputRowData ); } else { outputRowData = RowDataUtil.resizeArray( outputRowData, data.totalOutStreamFields );
while ( row != null ) { int size = data.inputRowMeta.size(); row = RowDataUtil.addRowData( row, size, data.groupResult ); size += data.groupResult.length; lineNr++; row = RowDataUtil.addValueData( row, size, lineNrValue ); size++;
public static Object[] createRowCopy( ScriptEngine actualContext, Bindings actualObject, Object[] ArgList, Object FunctionContext ) { if ( ArgList.length == 1 ) { try { int newSize = (int) Math.round( (Double) ArgList[0] ); Object scmO = actualObject.get( "row" ); Object[] row = (Object[]) scmO; // TODO AKRETION ensure return RowDataUtil.createResizedCopy( row, newSize ); } catch ( Exception e ) { throw new RuntimeException( "Unable to create a row copy: " + Const.CR + e.toString() ); } } else { throw new RuntimeException( "The function call createRowCopy requires a single arguments : the new size of the row" ); } }
KettleFileNotFoundException { Object[] calcData = RowDataUtil.resizeArray( r, data.getCalcRowMeta().size() ); return RowDataUtil.removeItems( calcData, data.getTempIndexes() );
kettleReportBuilder.render(); Object[] outputRowData = RowDataUtil.allocateRowData( data.outputRowMeta.size() ); int outputIndex = 0; outputRowData[outputIndex++] = targetFilename; Object[] outputRow = RowDataUtil.resizeArray( row, data.outputRowMeta.size() ); int outputIndex = getInputRowMeta().size();
private Object[] createNewRow( Object[] inputRowData ) { return inputRowData == null ? RowDataUtil.allocateRowData( data.outputRowMeta.size() ) : RowDataUtil .createResizedCopy( inputRowData, data.outputRowMeta.size() ); }
public void addValue( ValueMetaInterface valueMeta, Object valueData ) { if ( valueMeta.isInteger() && ( valueData instanceof ObjectId ) ) { valueData = new LongObjectId( (ObjectId) valueData ).longValue(); } data = RowDataUtil.addValueData( data, rowMeta.size(), valueData ); rowMeta.addValueMeta( valueMeta ); }
public void mergeRowMetaAndData( RowMetaAndData rowMetaAndData, String originStepName ) { int originalMetaSize = rowMeta.size(); rowMeta.mergeRowMeta( rowMetaAndData.getRowMeta(), originStepName ); data = RowDataUtil.addRowData( data, originalMetaSize, rowMetaAndData.getData() ); } }
int size = data.inputRowMeta.size(); row = RowDataUtil.addRowData( row, size, data.groupResult ); size += data.groupResult.length; row = RowDataUtil.addValueData( row, size, lineNrValue ); size++;
public static Object[] createRowCopy( Context actualContext, Scriptable actualObject, Object[] ArgList, Function FunctionContext ) { if ( ArgList.length == 1 ) { try { int newSize = (int) Math.round( Context.toNumber( ArgList[0] ) ); Object scmO = actualObject.get( "row", actualObject ); Object[] row = (Object[]) Context.jsToJava( scmO, ( new Object[] {} ).getClass() ); return RowDataUtil.createResizedCopy( row, newSize ); } catch ( Exception e ) { throw Context.reportRuntimeError( "Unable to create a row copy: " + Const.CR + e.toString() ); } } else { throw Context .reportRuntimeError( "The function call createRowCopy requires a single arguments : the new size of the row" ); } }
/** * Build an empty row based on the meta-data... * * @return */ private Object[] buildEmptyRow() { Object[] rowData = RowDataUtil.allocateRowData( data.outputRowMeta.size() ); return rowData; }