Class ApacheHttpDownloader
- java.lang.Object
-
- org.spongepowered.gradle.vanilla.resolver.apache.ApacheHttpDownloader
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.spongepowered.gradle.vanilla.resolver.Downloader
public final class ApacheHttpDownloader extends java.lang.Object implements java.lang.AutoCloseable, org.spongepowered.gradle.vanilla.resolver.Downloader
-
-
Field Summary
Fields Modifier and Type Field Description static longCACHE_TIMEOUT_SECONDS
-
Constructor Summary
Constructors Constructor Description ApacheHttpDownloader(java.util.concurrent.Executor asyncExecutor, java.nio.file.Path baseDirectory, org.spongepowered.gradle.vanilla.resolver.Downloader.ResolveMode resolveMode)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.nio.file.PathbaseDir()org.apache.hc.client5.http.impl.async.CloseableHttpAsyncClientclient()voidclose()java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<java.nio.file.Path>>download(java.net.URL source, java.lang.String destination)java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<java.nio.file.Path>>downloadAndValidate(java.net.URL source, java.lang.String destination, org.spongepowered.gradle.vanilla.resolver.HashAlgorithm algorithm, java.lang.String hash)java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<byte[]>>readBytes(java.net.URL source, java.lang.String relativePath)java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<byte[]>>readBytesAndValidate(java.net.URL source, java.lang.String relativePath, org.spongepowered.gradle.vanilla.resolver.HashAlgorithm algorithm, java.lang.String hash)java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<java.lang.String>>readString(java.net.URL source, java.lang.String relativePath)java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<java.lang.String>>readStringAndValidate(java.net.URL source, java.lang.String relativePath, org.spongepowered.gradle.vanilla.resolver.HashAlgorithm algorithm, java.lang.String hash)static ApacheHttpDownloaderuncached(java.util.concurrent.Executor asyncExecutor)Create a downloader that does not cache.org.spongepowered.gradle.vanilla.resolver.DownloaderwithBaseDir(java.nio.file.Path override)
-
-
-
Field Detail
-
CACHE_TIMEOUT_SECONDS
public static final long CACHE_TIMEOUT_SECONDS
- See Also:
- Constant Field Values
-
-
Method Detail
-
uncached
public static ApacheHttpDownloader uncached(java.util.concurrent.Executor asyncExecutor)
Create a downloader that does not cache.The downloader's
resolveModeis alwaysDownloader.ResolveMode.REMOTE_ONLY.- Parameters:
asyncExecutor- the executor to execute on.- Returns:
- a new downloader
-
client
public org.apache.hc.client5.http.impl.async.CloseableHttpAsyncClient client()
-
baseDir
public java.nio.file.Path baseDir()
- Specified by:
baseDirin interfaceorg.spongepowered.gradle.vanilla.resolver.Downloader
-
withBaseDir
public org.spongepowered.gradle.vanilla.resolver.Downloader withBaseDir(java.nio.file.Path override)
- Specified by:
withBaseDirin interfaceorg.spongepowered.gradle.vanilla.resolver.Downloader
-
readString
public java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<java.lang.String>> readString(java.net.URL source, java.lang.String relativePath)- Specified by:
readStringin interfaceorg.spongepowered.gradle.vanilla.resolver.Downloader
-
readStringAndValidate
public java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<java.lang.String>> readStringAndValidate(java.net.URL source, java.lang.String relativePath, org.spongepowered.gradle.vanilla.resolver.HashAlgorithm algorithm, java.lang.String hash)- Specified by:
readStringAndValidatein interfaceorg.spongepowered.gradle.vanilla.resolver.Downloader
-
readBytes
public java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<byte[]>> readBytes(java.net.URL source, java.lang.String relativePath)- Specified by:
readBytesin interfaceorg.spongepowered.gradle.vanilla.resolver.Downloader
-
readBytesAndValidate
public java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<byte[]>> readBytesAndValidate(java.net.URL source, java.lang.String relativePath, org.spongepowered.gradle.vanilla.resolver.HashAlgorithm algorithm, java.lang.String hash)- Specified by:
readBytesAndValidatein interfaceorg.spongepowered.gradle.vanilla.resolver.Downloader
-
download
public java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<java.nio.file.Path>> download(java.net.URL source, java.lang.String destination)- Specified by:
downloadin interfaceorg.spongepowered.gradle.vanilla.resolver.Downloader
-
downloadAndValidate
public java.util.concurrent.CompletableFuture<org.spongepowered.gradle.vanilla.resolver.ResolutionResult<java.nio.file.Path>> downloadAndValidate(java.net.URL source, java.lang.String destination, org.spongepowered.gradle.vanilla.resolver.HashAlgorithm algorithm, java.lang.String hash)- Specified by:
downloadAndValidatein interfaceorg.spongepowered.gradle.vanilla.resolver.Downloader
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfaceorg.spongepowered.gradle.vanilla.resolver.Downloader
-
-