code: public <R> Request<T> setRequestData(R requestData, Converter<R, NetworkRequest>
              converterToRequest)
              throws IOException {
          checkIfActive();
          Utils.checkNotNull(requestData, "networkRequest cannot be null");
          Utils.checkNotNull(converterToRequest, "converterToRequest cannot be null");
          try {
              this.networkRequest = converterToRequest.convert(requestData);
          } catch (IOException e) {
              throw e;
          } catch (Exception e) {
              //check if someone didnt wrap IOException
              if (e.getCause() instanceof IOException) {
                  throw (IOException) e.getCause();
              } else { //else wrap it in IOEx
                  throw new IOException(e);
              }
          }
          return this;
      }
docs: Set data to send which will be converted to {@link NetworkRequest}
  This will overwrite all previous http body and headers defined
  
  @param requestData
  @param converterToRequest
  @return