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;
    }
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 ) { if ( e . getCause ( ) instanceof IOException ) { throw ( IOException ) e . getCause ( ) ; } else { throw new IOException ( e ) ; } } return this ; }
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