@Override public int compare( StringEvaluationResult r1, StringEvaluationResult r2 ) { Integer length1 = r1.getConversionMeta().getConversionMask() == null ? 0 : r1 .getConversionMeta().getConversionMask().length(); Integer length2 = r2.getConversionMeta().getConversionMask() == null ? 0 : r2 .getConversionMeta().getConversionMask().length(); return length2.compareTo( length1 ); } };
@Override public int compare( StringEvaluationResult r1, StringEvaluationResult r2 ) { Integer length1 = r1.getConversionMeta().getConversionMask() == null ? 0 : r1 .getConversionMeta().getConversionMask().length(); Integer length2 = r2.getConversionMeta().getConversionMask() == null ? 0 : r2 .getConversionMeta().getConversionMask().length(); return length1.compareTo( length2 ); } };
private boolean containsDate() { for ( StringEvaluationResult result : evaluationResults ) { if ( result.getConversionMeta().isDate() && result.getNrSuccesses() > 0 ) { return true; } } return false; }
private boolean containsNumber() { for ( StringEvaluationResult result : evaluationResults ) { if ( result.getConversionMeta().isNumber() && result.getNrSuccesses() > 0 ) { return true; } } return false; }
private boolean containsInteger() { for ( StringEvaluationResult result : evaluationResults ) { if ( result.getConversionMeta().isInteger() && result.getNrSuccesses() > 0 ) { return true; } } return false; }
ValueMetaInterface stringMetaClone = null; for ( StringEvaluationResult cmm : all ) { if ( cmm.getConversionMeta().isBoolean() ) { } else if ( cmm.getConversionMeta().isDate() ) { String dateFormat = cmm.getConversionMeta().getConversionMask(); if ( !DateDetector.isValidDateFormatToStringDate( dateFormat, value, "en_US" ) ) { evaluationResults.remove( cmm ); Object object = DateDetector.getDateFromStringByFormat( value, dateFormat ); cmm.incrementSuccesses(); if ( cmm.getMin() == null || cmm.getConversionMeta().compare( cmm.getMin(), object ) > 0 ) { cmm.setMin( object ); if ( cmm.getMax() == null || cmm.getConversionMeta().compare( cmm.getMax(), object ) < 0 ) { cmm.setMax( object ); if ( cmm.getConversionMeta().isNumeric() ) { boolean stop = false; int nrDots = 0; boolean currencySymbolMatch = !String.valueOf( c ).equals( cmm.getConversionMeta().getCurrencySymbol() ) && c != '(' && c != ')'; if ( ( c == '.' && cmm.getConversionMeta().isInteger() ) || ( c == ',' && cmm.getConversionMeta().isInteger() ) ) { evaluationResults.remove( cmm ); stop = true;
for ( Iterator<StringEvaluationResult> iterator = evaluationResults.iterator(); iterator.hasNext(); ) { StringEvaluationResult result = iterator.next(); if ( maxPrecision == 0 && result.getConversionMeta().isNumber() ) { } else if ( maxPrecision > 0 && result.getConversionMeta().isInteger() ) { for ( Iterator<StringEvaluationResult> iterator = evaluationResults.iterator(); iterator.hasNext(); ) { StringEvaluationResult result = iterator.next(); if ( result.getConversionMeta().isInteger() ) { iterator.remove(); ValueMetaInterface conversionMeta = result.getConversionMeta(); if ( conversionMeta.isNumber() && conversionMeta.getCurrencySymbol() == null ) { conversionMeta.setPrecision( maxPrecision );
ValueMetaInterface conversionMeta = result.getConversionMeta(); field.setType( conversionMeta.getType() ); field.setTrimType( conversionMeta.getTrimType() ); String mask = seResult.getConversionMeta().getConversionMask(); .getConversionMeta().getTrimType() ) ); message.append( BaseMessages.getString( PKG, "TextFileCSVImportProgressDialog.Info.NumberMinValue", seResult.getMin() ) );
ValueMetaInterface conversionMeta = result.getConversionMeta(); field.setType( conversionMeta.getType() ); field.setTrimType( conversionMeta.getTrimType() ); String mask = seResult.getConversionMeta().getConversionMask(); message.append( BaseMessages .getString( PKG, "TextFileCSVImportProgressDialog.Info.TrimType", seResult .getConversionMeta().getTrimType() ) ); message.append( BaseMessages.getString( PKG, "TextFileCSVImportProgressDialog.Info.NumberMinValue", seResult.getMin() ) );
protected void assumeColumnDetails( ColumnInfo profile, List<String> samples ) { StringEvaluator eval = new StringEvaluator( false, NUMBER_FORMATS, ColumnInfo.DATE_FORMATS ); for ( String sample : samples ) { eval.evaluateString( sample ); } StringEvaluationResult result = eval.getAdvicedResult(); ValueMetaInterface meta = result.getConversionMeta(); int type = meta.getType(); String mask = meta.getConversionMask(); int size; int precision = meta.getPrecision(); profile.setFormat( mask ); profile.setPrecision( precision > 0 ? precision : 0 ); profile.setDataType( convertDataType( type ) ); if ( meta.isString() ) { // pad the string lengths size = meta.getLength() + ( meta.getLength() / 2 ); } else if ( meta.isInteger() ) { size = meta.getLength(); } else { size = precision > 0 ? meta.getLength() : 0; } profile.setLength( size ); }