baseStep.setStopped( false ); baseStep.setRepartitioning( StepPartitioningMeta.PARTITIONING_METHOD_SPECIAL ); baseStep.setOutputRowSets( outputRowSets );
@Test public void outputRowMetasAreNotSharedAmongSeveralStreams() throws Exception { RowSet rs1 = new SingleRowRowSet(); RowSet rs2 = new SingleRowRowSet(); when( mockHelper.trans.isRunning() ).thenReturn( true ); BaseStep baseStep = new BaseStep( mockHelper.stepMeta, mockHelper.stepDataInterface, 0, mockHelper.transMeta, mockHelper.trans ); baseStep.setStopped( false ); baseStep.setRepartitioning( StepPartitioningMeta.PARTITIONING_METHOD_NONE ); baseStep.setOutputRowSets( Arrays.asList( rs1, rs2 ) ); for ( RowSet rowSet : baseStep.getOutputRowSets() ) { assertNull( "RowMeta should be null, since no calls were done", rowSet.getRowMeta() ); } RowMetaInterface rowMeta = new RowMeta(); rowMeta.addValueMeta( new ValueMetaString( "string" ) ); rowMeta.addValueMeta( new ValueMetaInteger( "integer" ) ); baseStep.putRow( rowMeta, new Object[] { "a", 1 } ); RowMetaInterface meta1 = rs1.getRowMeta(); RowMetaInterface meta2 = rs2.getRowMeta(); assertNotNull( meta1 ); assertNotNull( meta2 ); // content is same for ( ValueMetaInterface meta : meta1.getValueMetaList() ) { assertTrue( meta.getName(), meta2.exists( meta ) ); } // whereas instances differ assertFalse( meta1 == meta2 ); }
@Override public void setStopped( boolean stopped ) { if ( isStopped() && stopped == true ) { return; } super.setStopped( stopped ); if ( stopped && !m_meta.getAvroInField() ) { try { logBasic( BaseMessages.getString( AvroInputMeta.PKG, "AvroInput.Message.ClosingFile" ) ); m_data.close(); } catch ( IOException ex ) { logError( ex.getMessage(), ex ); } } } }
@Override public void setStopped( boolean stopped ) { if ( isStopped() && stopped == true ) { return; } super.setStopped( stopped ); if ( stopped && m_hbAdmin != null ) { logBasic( BaseMessages.getString( HBaseInputMeta.PKG, "HBaseInput.ClosingConnection" ) ); try { m_hbAdmin.close(); } catch ( IOException ex ) { logError( BaseMessages.getString( HBaseInputMeta.PKG, "HBaseInput.Error.ProblemClosingConnection1", ex ) ); } } } }
return; super.setStopped( stopped );