public PresignedUrlDownload download(final PresignedUrlDownloadRequest request, final File destFile) {

        return download(request, destFile, new PresignedUrlDownloadConfig());
    }
Schedules a new transfer to download data from Amazon S3 using presigned url
and save it to the specified file. This method is non-blocking and returns immediately
(i.e. before the data has been fully downloaded).
<p>
Use the returned {@link PresignedUrlDownload} object to query the progress of the transfer,
add listeners for progress events, and wait for the download to complete.
</p>
<p>
Note: The result of the operation doesn't support pause and resume functionality.
</p>
@param request The request containing all the parameters for the download.
@param destFile  The file to download the object data to.

@return A new {@link PresignedUrlDownload} object to check the state of the download,
        listen for progress notifications, and otherwise manage the download.
aws-java-sdk-s3/src/main/java/com/amazonaws/services/s3/transfer/TransferManager.java