docs: protected String makeRequest(String endpoint, final boolean executeAsPost, final boolean executeAsDelete,
        final List<BinaryAttachment> binaryAttachments, Parameter... parameters) {
      verifyParameterLegality(parameters);
  
      if (executeAsDelete && isHttpDeleteFallback()) {
        parameters = parametersWithAdditionalParameter(Parameter.with(METHOD_PARAM_NAME, "delete"), parameters);
      }
  
      if (!endpoint.startsWith("/")) {
        endpoint = "/" + endpoint;
      }
  
      final String fullEndpoint =
          createEndpointForApiCall(endpoint, binaryAttachments != null && !binaryAttachments.isEmpty());
      final String parameterString = toParameterString(parameters);
  
      return makeRequestAndProcessResponse(new Requestor() {
        /**
         * @see com.restfb.DefaultFacebookClient.Requestor#makeRequest()
         */
        @Override
        public Response makeRequest() throws IOException {
          if (executeAsDelete && !isHttpDeleteFallback()) {
            return webRequestor.executeDelete(fullEndpoint + "?" + parameterString);
          }
  
          if (executeAsPost) {
            return webRequestor.executePost(fullEndpoint, parameterString, binaryAttachments);
          }
  
          return webRequestor.executeGet(fullEndpoint + "?" + parameterString);
        }
      });
    }