docs: public String createSignatureBaseString(String requestMethod, String baseUrl, Map<String, String> parameters) {
          if (requestMethod == null || (!requestMethod.equalsIgnoreCase("GET") && !requestMethod.equalsIgnoreCase("POST"))) {
              if (tc.isDebugEnabled()) {
                  Tr.debug(tc, "Request method was not an expected value (GET or POST) so defaulting to POST");
              }
              requestMethod = "POST";
          }
  
          String cleanedUrl = removeQueryAndFragment(baseUrl);
          String parameterString = createParameterStringForSignature(parameters);
  
          StringBuilder signatureBaseString = new StringBuilder();
          signatureBaseString.append(requestMethod.toUpperCase());
          signatureBaseString.append("&");
          signatureBaseString.append(Utils.percentEncode(cleanedUrl));
          signatureBaseString.append("&");
          signatureBaseString.append(Utils.percentEncode(parameterString));
  
          return signatureBaseString.toString();
      }