code: protected Map<String,String> convertParametersTextToMap(HTTPRequest request)
      {
          //init data structure
          Map<String,String> map=new HashMap<String,String>();
  
          //get parameters text
          String parametersText=request.getParametersText();
          
          if(parametersText!=null)
          {
              //split to key/value pairs (key=value)
              String[] keyValuePairs=parametersText.split("&");
              
              //get amount
              int pairsAmount=keyValuePairs.length;
              
              String keyValuePair=null;
              String[] parts=null;
              String key=null;
              String value=null;
              for(int index=0;index<pairsAmount;index++)
              {
                  //get next key/value pair
                  keyValuePair=keyValuePairs[index];
                  
                  //split to key and value
                  parts=keyValuePair.split("=");
                  if(parts.length==2)
                  {
                      //get key
                      key=parts[0];
                      if(key.length()>0)
                      {
                          //decode key
                          key=SpiUtil.urlDecode(key);
  
                          //get value
                          value=parts[1].trim();
  
                          //decode value
                          value=SpiUtil.urlDecode(value);
                          
                          //put in data structure
                          map.put(key,value);
                      }
                  }
              }
          }
          
          return map;
      }
docs: This function converts the provided query string to a map object.
  
  @param   request
  The HTTP request
  @return  The query string broken to key/value