private String computeFilteredPrefixedValue ( String type , String value , String filter , String prefix ) throws MtasConfigException { String localValue = value ; // do magic with filter if ( filter != null ) { String [ ] filters = filter . split ( "," ) ; for ( String item : filters ) { if ( item . trim ( ) . equals ( MAPPING_FILTER_UPPERCASE ) ) { localValue = localValue == null ? null : localValue . toUpperCase ( ) ; } else if ( item . trim ( ) . equals ( MAPPING_FILTER_LOWERCASE ) ) { localValue = localValue == null ? null : localValue . toLowerCase ( ) ; } else if ( item . trim ( ) . equals ( MAPPING_FILTER_ASCII ) ) { if ( localValue != null ) { char [ ] old = localValue . toCharArray ( ) ; char [ ] ascii = new char [ 4 * old . length ] ; ASCIIFoldingFilter . foldToASCII ( old , 0 , ascii , 0 , localValue . length ( ) ) ; localValue = new String ( ascii ) ; } } else if ( item . trim ( ) . matches ( Pattern . quote ( MAPPING_FILTER_SPLIT ) + "\\([0-9\\-]+\\)" ) ) { if ( ! type . equals ( MtasParserMapping . PARSER_TYPE_TEXT_SPLIT ) ) { throw new MtasConfigException ( "split filter not allowed for " + type ) ; } } else { throw new MtasConfigException ( "unknown filter " + item + " for value " + localValue ) ; } } } if ( localValue != null && prefix != null ) { localValue = prefix + localValue ; } return localValue ; }
Compute filtered prefixed value .