public List<RowMetaInterface> getRecommendedIndexes() { List<RowMetaInterface> indexes = new ArrayList<RowMetaInterface>(); LogTableField keyField = getKeyField(); if ( keyField.isEnabled() ) { RowMetaInterface batchIndex = new RowMeta(); ValueMetaInterface keyMeta = new ValueMetaBase( keyField.getFieldName(), keyField.getDataType() ); keyMeta.setLength( keyField.getLength() ); batchIndex.addValueMeta( keyMeta ); indexes.add( batchIndex ); } return indexes; } }
LogTableField keyField = getKeyField(); ValueMetaInterface keyMeta = new ValueMetaBase( keyField.getFieldName(), keyField.getDataType() ); keyMeta.setLength( keyField.getLength() ); batchIndex.addValueMeta( keyMeta ); LogTableField errorsField = findField( ID.ERRORS ); if ( errorsField != null ) { ValueMetaInterface valueMeta = new ValueMetaBase( errorsField.getFieldName(), errorsField.getDataType() ); valueMeta.setLength( errorsField.getLength() ); lookupIndex.addValueMeta( valueMeta ); ValueMetaInterface valueMeta = new ValueMetaBase( statusField.getFieldName(), statusField.getDataType() ); valueMeta.setLength( statusField.getLength() ); lookupIndex.addValueMeta( valueMeta ); ValueMetaInterface valueMeta = new ValueMetaBase( transNameField.getFieldName(), transNameField.getDataType() ); valueMeta.setLength( transNameField.getLength() ); lookupIndex.addValueMeta( valueMeta );
LogTableField keyField = getKeyField(); ValueMetaInterface keyMeta = new ValueMetaBase( keyField.getFieldName(), keyField.getDataType() ); keyMeta.setLength( keyField.getLength() ); batchIndex.addValueMeta( keyMeta ); LogTableField errorsField = findField( ID.ERRORS ); if ( errorsField != null ) { ValueMetaInterface valueMeta = new ValueMetaBase( errorsField.getFieldName(), errorsField.getDataType() ); valueMeta.setLength( errorsField.getLength() ); lookupIndex.addValueMeta( valueMeta ); ValueMetaInterface valueMeta = new ValueMetaBase( statusField.getFieldName(), statusField.getDataType() ); valueMeta.setLength( statusField.getLength() ); lookupIndex.addValueMeta( valueMeta ); ValueMetaInterface valueMeta = new ValueMetaBase( transNameField.getFieldName(), transNameField.getDataType() ); valueMeta.setLength( transNameField.getLength() ); lookupIndex.addValueMeta( valueMeta );
/** * Test for PDI-13987 * @throws Exception */ @Test public void testFastDumpDisableStreamEncodeTest() throws Exception { textFileOutput = new TextFileOutputTestHandler( stepMockHelper.stepMeta, stepMockHelper.stepDataInterface, 0, stepMockHelper.transMeta, stepMockHelper.trans ); textFileOutput.meta = stepMockHelper.processRowsStepMetaInterface; String testString = "ÖÜä"; String inputEncode = "UTF-8"; String outputEncode = "Windows-1252"; Object[] rows = {testString.getBytes( inputEncode )}; ValueMetaBase valueMetaInterface = new ValueMetaBase( "test", ValueMetaInterface.TYPE_STRING ); valueMetaInterface.setStringEncoding( inputEncode ); valueMetaInterface.setStorageType( ValueMetaInterface.STORAGE_TYPE_BINARY_STRING ); valueMetaInterface.setStorageMetadata( new ValueMetaString() ); TextFileOutputData data = new TextFileOutputData(); data.binarySeparator = " ".getBytes(); data.binaryEnclosure = "\"".getBytes(); data.binaryNewline = "\n".getBytes(); textFileOutput.data = data; RowMeta rowMeta = new RowMeta(); rowMeta.addValueMeta( valueMetaInterface ); Mockito.doReturn( outputEncode ).when( stepMockHelper.processRowsStepMetaInterface ).getEncoding(); textFileOutput.data.writer = Mockito.mock( BufferedOutputStream.class ); textFileOutput.writeRow( rowMeta, rows ); Mockito.verify( textFileOutput.data.writer, Mockito.times( 1 ) ).write( testString.getBytes( outputEncode ) ); }
storageMetadata = new ValueMetaBase( inputStream );
Node storageValueMetaNode = XMLHandler.getSubNode( storageMetaNode, XML_META_TAG ); if ( storageValueMetaNode != null ) { storageMetadata = new ValueMetaBase( storageValueMetaNode );
@Test( expected = KettleStepException.class ) public void nullFieldName() throws KettleStepException { BaseStep baseStep = new BaseStep( mockHelper.stepMeta, mockHelper.stepDataInterface, 0, mockHelper.transMeta, mockHelper.trans ); baseStep.setRowHandler( rowHandler ); RowMetaInterface rowMeta = new RowMeta(); rowMeta.addValueMeta( new ValueMetaBase( null, ValueMetaInterface.TYPE_INTEGER ) ); baseStep.putRow( rowMeta, new Object[] { 0 } ); }
@Test( expected = KettleStepException.class ) public void emptyFieldName() throws KettleStepException { BaseStep baseStep = new BaseStep( mockHelper.stepMeta, mockHelper.stepDataInterface, 0, mockHelper.transMeta, mockHelper.trans ); baseStep.setRowHandler( rowHandler ); RowMetaInterface rowMeta = new RowMeta(); rowMeta.addValueMeta( new ValueMetaBase( "", ValueMetaInterface.TYPE_INTEGER ) ); baseStep.putRow( rowMeta, new Object[] { 0 } ); }
@Test( expected = KettleStepException.class ) public void blankFieldName() throws KettleStepException { BaseStep baseStep = new BaseStep( mockHelper.stepMeta, mockHelper.stepDataInterface, 0, mockHelper.transMeta, mockHelper.trans ); baseStep.setRowHandler( rowHandler ); RowMetaInterface rowMeta = new RowMeta(); rowMeta.addValueMeta( new ValueMetaBase( " ", ValueMetaInterface.TYPE_INTEGER ) ); baseStep.putRow( rowMeta, new Object[] { 0 } ); }
@Test public void notEmptyFieldName() throws KettleStepException { BaseStep baseStep = new BaseStep( mockHelper.stepMeta, mockHelper.stepDataInterface, 0, mockHelper.transMeta, mockHelper.trans ); baseStep.setRowHandler( rowHandler ); RowMetaInterface rowMeta = new RowMeta(); rowMeta.addValueMeta( new ValueMetaBase( "name", ValueMetaInterface.TYPE_INTEGER ) ); baseStep.putRow( rowMeta, new Object[] { 0 } ); }
@Test public void testGetFields_OutputValueRenames_WillRenameOutputIfValueMetaExist() throws KettleStepException { ValueMetaInterface valueMeta1 = new ValueMetaBase( "valueMeta1" ); ValueMetaInterface valueMeta2 = new ValueMetaBase( "valueMeta2" ); RowMetaInterface rowMeta = new RowMeta(); rowMeta.addValueMeta( valueMeta1 ); rowMeta.addValueMeta( valueMeta2 ); List<MappingValueRename> outputValueRenames = new ArrayList<MappingValueRename>(); outputValueRenames.add( new MappingValueRename( "valueMeta2", "valueMeta1" ) ); MappingOutputMeta meta = new MappingOutputMeta(); meta.setOutputValueRenames( outputValueRenames ); meta.getFields( rowMeta, null, info, nextStep, space, repository, metaStore ); //we must not add additional field assertEquals( 2, rowMeta.getValueMetaList().size() ); //we must not keep the first value meta since we want to rename second assertEquals( valueMeta1, rowMeta.getValueMeta( 0 ) ); //the second value meta must be other than we want to rename since we already have value meta with such name assertFalse( "valueMeta1".equals( rowMeta.getValueMeta( 1 ).getName() ) ); //the second value meta must be other than we want to rename since we already have value meta with such name. //It must be renamed according the rules from the #RowMeta assertTrue( "valueMeta1_1".equals( rowMeta.getValueMeta( 1 ).getName() ) ); }