question: private static Map < String , SortedSet < String > > parseQuerystring ( String queryString ) { Map < String , SortedSet < String > > map = new TreeMap < String , SortedSet < String > > ( ) ; if ( ( queryString == null ) || ( queryString . equals ( EMPTY_STRING ) ) ) { return map ; } String [ ] params = new String [ 20 ] ; if ( queryString . contains ( AMP ) ) params = queryString . split ( AMP ) ; else if ( queryString . length ( ) > 0 ) params = new String [ ] { queryString } ; if ( params != null ) { for ( String param : params ) { try { String [ ] keyValuePair = param . split ( EQUALS , 0 ) ; String name = URLDecoder . decode ( keyValuePair [ 0 ] , UTF_8 ) ; if ( name == "" ) { continue ; } String value = keyValuePair . length > 1 ? URLDecoder . decode ( keyValuePair [ 1 ] , UTF_8 ) : EMPTY_STRING ; if ( map . containsKey ( name ) ) { SortedSet < String > tempSet = map . get ( name ) ; tempSet . add ( value ) ; } else { SortedSet < String > tmpSet = new TreeSet < String > ( ) ; tmpSet . add ( value ) ; map . put ( name , tmpSet ) ; } } catch ( UnsupportedEncodingException e ) { throw new MCApiRuntimeException ( e ) ; } } } return map ; }
target:  Parse a querystring into a map of key/value pairs.