Package pro.gravit.launcher
Class AsyncDownloader
- java.lang.Object
-
- pro.gravit.launcher.AsyncDownloader
-
public class AsyncDownloader extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceAsyncDownloader.Callbackstatic classAsyncDownloader.SizedFile
-
Field Summary
Fields Modifier and Type Field Description AsyncDownloader.Callbackcallbackstatic AsyncDownloader.CallbackIGNORE
-
Constructor Summary
Constructors Constructor Description AsyncDownloader()AsyncDownloader(AsyncDownloader.Callback callback)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddownloadFile(java.net.URL url, java.nio.file.Path target)voiddownloadFile(java.net.URL url, java.nio.file.Path target, long size)voiddownloadListInOneThread(java.util.List<AsyncDownloader.SizedFile> files, java.lang.String baseURL, java.nio.file.Path targetDir)voiddownloadListInOneThreadSimple(java.util.List<AsyncDownloader.SizedFile> files, java.lang.String baseURL, java.nio.file.Path targetDir)java.util.concurrent.CompletableFuture[]runDownloadList(java.util.List<java.util.List<AsyncDownloader.SizedFile>> files, java.lang.String baseURL, java.nio.file.Path targetDir, java.util.concurrent.Executor executor)java.util.concurrent.CompletableFuture[]runDownloadListSimple(java.util.List<java.util.List<AsyncDownloader.SizedFile>> files, java.lang.String baseURL, java.nio.file.Path targetDir, java.util.concurrent.Executor executor)java.util.List<java.util.List<AsyncDownloader.SizedFile>>sortFiles(java.util.List<AsyncDownloader.SizedFile> files, int threads)voidtransfer(java.io.InputStream input, java.nio.file.Path file, long size)
-
-
-
Field Detail
-
IGNORE
public static final AsyncDownloader.Callback IGNORE
-
callback
public final AsyncDownloader.Callback callback
-
-
Constructor Detail
-
AsyncDownloader
public AsyncDownloader(AsyncDownloader.Callback callback)
-
AsyncDownloader
public AsyncDownloader()
-
-
Method Detail
-
downloadFile
public void downloadFile(java.net.URL url, java.nio.file.Path target, long size) throws java.io.IOException- Throws:
java.io.IOException
-
downloadFile
public void downloadFile(java.net.URL url, java.nio.file.Path target) throws java.io.IOException- Throws:
java.io.IOException
-
downloadListInOneThread
public void downloadListInOneThread(java.util.List<AsyncDownloader.SizedFile> files, java.lang.String baseURL, java.nio.file.Path targetDir) throws java.net.URISyntaxException, java.io.IOException
- Throws:
java.net.URISyntaxExceptionjava.io.IOException
-
downloadListInOneThreadSimple
public void downloadListInOneThreadSimple(java.util.List<AsyncDownloader.SizedFile> files, java.lang.String baseURL, java.nio.file.Path targetDir) throws java.net.URISyntaxException, java.io.IOException
- Throws:
java.net.URISyntaxExceptionjava.io.IOException
-
sortFiles
public java.util.List<java.util.List<AsyncDownloader.SizedFile>> sortFiles(java.util.List<AsyncDownloader.SizedFile> files, int threads)
-
runDownloadList
public java.util.concurrent.CompletableFuture[] runDownloadList(java.util.List<java.util.List<AsyncDownloader.SizedFile>> files, java.lang.String baseURL, java.nio.file.Path targetDir, java.util.concurrent.Executor executor)
-
runDownloadListSimple
public java.util.concurrent.CompletableFuture[] runDownloadListSimple(java.util.List<java.util.List<AsyncDownloader.SizedFile>> files, java.lang.String baseURL, java.nio.file.Path targetDir, java.util.concurrent.Executor executor)
-
transfer
public void transfer(java.io.InputStream input, java.nio.file.Path file, long size) throws java.io.IOException- Throws:
java.io.IOException
-
-