if ( f.getPosition() != prevEnd ) { // gap BaseFileField field = new BaseFileField( "Dummy" + dummynr, prevEnd, f.getPosition() - prevEnd ); field.setIgnored( true ); // don't include in result by default. fields.add( field ); dummynr++; BaseFileField field = new BaseFileField( f.getName(), f.getPosition(), f.getLength() ); field.setType( f.getType() ); field.setIgnored( false ); field.setFormat( f.getFormat() ); field.setPrecision( f.getPrecision() ); field.setTrimType( f.getTrimType() ); field.setDecimalSymbol( f.getDecimalSymbol() ); field.setGroupSymbol( f.getGroupSymbol() ); field.setCurrencySymbol( f.getCurrencySymbol() ); field.setRepeated( f.isRepeated() ); field.setNullString( f.getNullString() ); prevEnd = field.getPosition() + field.getLength(); BaseFileField field = new BaseFileField( "Field1", 0, maxsize ); fields.add( field ); } else { int pos = f.getPosition(); int len = f.getLength(); if ( pos + len < maxsize ) {
if ( !field.isIgnored() && field.getLength() > 0 ) { TableItem item = new TableItem( wFields.table, SWT.NONE ); item.setText( 1, field.getName() ); item.setText( 2, "" + field.getTypeDesc() ); item.setText( 3, "" + field.getFormat() ); item.setText( 4, "" + field.getPosition() ); item.setText( 5, field.getLength() < 0 ? "" : "" + field.getLength() ); item.setText( 6, field.getPrecision() < 0 ? "" : "" + field.getPrecision() ); item.setText( 7, "" + field.getCurrencySymbol() ); item.setText( 8, "" + field.getDecimalSymbol() ); item.setText( 9, "" + field.getGroupSymbol() ); item.setText( 10, "" + field.getNullString() ); item.setText( 11, "" + field.getIfNullValue() ); item.setText( 12, "" + field.getTrimTypeDesc() ); item.setText( 13, field.isRepeated() ? BaseMessages.getString( PKG, "System.Combo.Yes" ) : BaseMessages .getString( PKG, "System.Combo.No" ) );
@Override public boolean validateTestObject( BaseFileField testObject, Object actual ) { if ( !( actual instanceof BaseFileField ) ) { return false; } BaseFileField another = (BaseFileField) actual; return new EqualsBuilder() .append( testObject.getName(), another.getName() ) .append( testObject.getLength(), another.getLength() ) .append( testObject.getPosition(), another.getPosition() ) .isEquals(); } }
BaseFileField field = (BaseFileField) fields.get( idx ); String name = field.getName(); int from = field.getPosition(); int length = field.getLength(); String type = field.getTypeDesc(); boolean ignore = field.isIgnored(); String format = field.getFormat(); String trimtype = field.getTrimTypeDesc(); int precision = field.getPrecision(); String currency = field.getCurrencySymbol(); String decimal = field.getDecimalSymbol(); String group = field.getGroupSymbol(); boolean repeat = field.isRepeated(); String nullif = field.getNullString();
BaseFileField field = new BaseFileField(); field.setName( item.getText( 1 ) ); field.setType( ValueMetaFactory.getIdForValueMeta( item.getText( 2 ) ) ); field.setFormat( item.getText( 3 ) ); field.setPosition( Const.toInt( item.getText( 4 ), -1 ) ); field.setLength( Const.toInt( item.getText( 5 ), -1 ) ); field.setPrecision( Const.toInt( item.getText( 6 ), -1 ) ); field.setCurrencySymbol( item.getText( 7 ) ); field.setDecimalSymbol( item.getText( 8 ) ); field.setGroupSymbol( item.getText( 9 ) ); field.setNullString( item.getText( 10 ) ); field.setIfNullValue( item.getText( 11 ) ); field.setTrimType( ValueMetaString.getTrimTypeByDesc( item.getText( 12 ) ) ); field.setRepeated( BaseMessages.getString( PKG, "System.Combo.Yes" ).equalsIgnoreCase( item.getText( 13 ) ) );
field.setName( meta.inputFields[i].getName() ); field.setType( meta.inputFields[i].getType() ); field.setFormat( "" ); field.setLength( -1 ); field.setPrecision( -1 ); field.setCurrencySymbol( dfs.getCurrencySymbol() ); field.setDecimalSymbol( "" + dfs.getDecimalSeparator() ); field.setGroupSymbol( "" + dfs.getGroupingSeparator() ); field.setNullString( "-" ); field.setTrimType( ValueMetaInterface.TRIM_TYPE_NONE ); strinfo.inputFields[i].setType( ValueMetaInterface.TYPE_STRING ); field.setType( ValueMetaInterface.TYPE_STRING ); field.setLength( evaluator.getMaxLength() ); } else { StringEvaluationResult result = evaluator.getAdvicedResult(); field.setType( conversionMeta.getType() ); field.setTrimType( conversionMeta.getTrimType() ); field.setFormat( conversionMeta.getConversionMask() ); field.setDecimalSymbol( conversionMeta.getDecimalSymbol() ); field.setGroupSymbol( conversionMeta.getGroupingSymbol() ); field.setLength( conversionMeta.getLength() ); field.setPrecision( conversionMeta.getPrecision() ); .getName() ) ); message.append( BaseMessages.getString( PKG, "TextFileCSVImportProgressDialog.Info.FieldType", field .getTypeDesc() ) );
BaseFileField field = inputFields[i]; int type = field.getType(); if ( type == ValueMetaInterface.TYPE_NONE ) { type = ValueMetaInterface.TYPE_STRING; ValueMetaInterface v = ValueMetaFactory.createValueMeta( field.getName(), type ); v.setLength( field.getLength() ); v.setPrecision( field.getPrecision() ); v.setOrigin( name ); v.setConversionMask( field.getFormat() ); v.setDecimalSymbol( field.getDecimalSymbol() ); v.setGroupingSymbol( field.getGroupSymbol() ); v.setCurrencySymbol( field.getCurrencySymbol() ); v.setDateFormatLenient( content.dateFormatLenient ); v.setDateFormatLocale( content.dateFormatLocale ); v.setTrimType( field.getTrimType() );
@Override public TextFileInputFieldInterface createNewInstance( String newFieldname, int x, int newlength ) { return new BaseFileField( newFieldname, x, newlength ); } }
String nullif = fieldnr < nrfields ? f.getNullString() : ""; String ifnull = fieldnr < nrfields ? f.getIfNullValue() : ""; int trim_type = fieldnr < nrfields ? f.getTrimType() : ValueMetaInterface.TRIM_TYPE_NONE;
if ( field.getPosition() + field.getLength() <= length ) { strings.add( line.substring( field.getPosition(), field.getPosition() + field.getLength() ) ); } else { if ( field.getPosition() < length ) { strings.add( line.substring( field.getPosition() ) ); } else { strings.add( "" );
@Test public void testTextFileInputRoundTrip() { // TextFileInputMeta is one of the most complex, including arrays under @InjectionDeep. TextFileInputMeta fileInputMeta = new TextFileInputMeta(); fileInputMeta.inputFields = new BaseFileField[] { new BaseFileField( "foo", 0, 10 ), new BaseFileField( "bar", 0, 10 ) }; fileInputMeta.inputFiles = new BaseFileInputFiles(); final String[] fileNames = { "file1.txt", "file2.tsv" }; fileInputMeta.inputFiles.fileName = fileNames; TextFileInputMeta rehydratedMeta = new TextFileInputMeta(); StepMetaProps props = StepMetaProps.from( fileInputMeta ); MetaXmlSerializer.deserialize( MetaXmlSerializer.serialize( props ) ) .to( rehydratedMeta ); assertThat( rehydratedMeta.inputFields[ 0 ].getName(), equalTo( "foo" ) ); assertThat( rehydratedMeta.inputFields[ 1 ].getName(), equalTo( "bar" ) ); assertThat( rehydratedMeta.inputFiles.fileName, equalTo( fileNames ) ); }
public int compare( Object obj ) { BaseFileField field = (BaseFileField) obj; return position - field.getPosition(); }
public String get() { return meta.inputFields[0].getName(); } } );
public String get() { return meta.inputFields[0].getCurrencySymbol(); } } );
public String get() { return meta.inputFields[0].getGroupSymbol(); } } );
public String get() { return meta.inputFields[0].getIfNullValue(); } } );
public int get() { return meta.inputFields[0].getLength(); } } );
public String get() { return meta.inputFields[0].getFormat(); } } );
public String get() { return meta.inputFields[0].getDecimalSymbol(); } } );
public String get() { return meta.inputFields[0].getNullString(); } } );