code: public String createParameterStringForSignature(Map<String, String> parameters) {
          if (parameters == null) {
              if (tc.isDebugEnabled()) {
                  Tr.debug(tc, "Null parameters object provided; returning empty string");
              }
              return "";
          }
  
          Map<String, String> encodedParams = new HashMap<String, String>();
  
          // Step 1: Percent encode every key and value that will be signed
          for (Entry<String, String> entry : parameters.entrySet()) {
              String encodedKey = Utils.percentEncode(entry.getKey());
              String encodedValue = Utils.percentEncode(entry.getValue());
              encodedParams.put(encodedKey, encodedValue);
          }
  
          // Step 2: Sort the list of parameters alphabetically by encoded key
          List<String> encodedKeysList = new ArrayList<String>();
          encodedKeysList.addAll(encodedParams.keySet());
          Collections.sort(encodedKeysList);
  
          StringBuilder paramString = new StringBuilder();
  
          // Step 3: Go through each key/value pair
          for (int i = 0; i < encodedKeysList.size(); i++) {
              String key = encodedKeysList.get(i);
              String value = encodedParams.get(key);
  
              // Steps 4-6: Append encoded key, "=" character, and encoded value to the output string
              paramString.append(key).append("=").append(value);
  
              if (i < (encodedKeysList.size() - 1)) {
                  // Step 7: If more key/value pairs remain, append "&" character to the output string
                  paramString.append("&");
              }
          }
  
          return paramString.toString();
      }
docs: Per {@link https://dev.twitter.com/oauth/overview/creating-signatures}, the parameter string for signatures must be built
  the following way:
  1. Percent encode every key and value that will be signed.
  2. Sort the list of parameters alphabetically by encoded key.
  3. For each key/value pair:
  4. Append the encoded key to the output string.
  5. Append the '=' character to the output string.
  6. Append the encoded value to the output string.
  7. If there are more key/value pairs remaining, append a '&' character to the output string.
  
  @param parameters
  @return