public class Get extends Task
Modifier and Type | Class and Description |
---|---|
protected static class |
Get.Base64Converter
Provide this for Backward Compatibility.
|
static interface |
Get.DownloadProgress
Interface implemented for reporting
progess of downloading.
|
static class |
Get.NullProgress
do nothing with progress info
|
static class |
Get.VerboseProgress
verbose progress system prints to some output stream
|
description, location, project
Constructor and Description |
---|
Get() |
Modifier and Type | Method and Description |
---|---|
void |
add(FileNameMapper fileNameMapper)
Add a nested filenamemapper.
|
void |
add(ResourceCollection rc)
Adds URLs to get.
|
Mapper |
createMapper()
Define the mapper to map source to destination files.
|
boolean |
doGet(int logLevel,
Get.DownloadProgress progress)
Deprecated.
only gets the first configured resource
|
boolean |
doGet(java.net.URL source,
java.io.File dest,
int logLevel,
Get.DownloadProgress progress)
make a get request, with the supplied progress and logging info.
|
void |
execute()
Does the work.
|
void |
setDest(java.io.File dest)
Where to copy the source file.
|
void |
setHttpUseCaches(boolean httpUseCache)
HTTP connections only - control caching on the
HttpUrlConnection: httpConnection.setUseCaches(); if false, do
not allow caching on the HttpUrlConnection.
|
void |
setIgnoreErrors(boolean v)
If true, log errors but do not treat as fatal.
|
void |
setMaxTime(long maxTime)
The time in seconds the download is allowed to take before
being terminated.
|
void |
setPassword(java.lang.String p)
password for the basic authentication.
|
void |
setRetries(int r)
The number of retries to attempt upon error, defaults to 3.
|
void |
setSkipExisting(boolean s)
Skip files that already exist locally.
|
void |
setSrc(java.net.URL u)
Set an URL to get.
|
void |
setUsername(java.lang.String u)
Username for basic auth.
|
void |
setUseTimestamp(boolean v)
If true, conditionally download a file based on the timestamp
of the local copy.
|
void |
setVerbose(boolean v)
If true, show verbose progress information.
|
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
public void execute() throws BuildException
execute
in class Task
BuildException
- Thrown in unrecoverable error.public boolean doGet(int logLevel, Get.DownloadProgress progress) throws java.io.IOException
logLevel
- level to log at, see Project.log(String, int)
progress
- progress callback; null for no-callbacksignoreErrors
is true, as
when false all failures raise BuildExceptions.java.io.IOException
- for network troubleBuildException
- for argument errors, or other trouble when ignoreErrors
is false.public boolean doGet(java.net.URL source, java.io.File dest, int logLevel, Get.DownloadProgress progress) throws java.io.IOException
source
- the URL to getdest
- the target filelogLevel
- level to log at, see Project.log(String, int)
progress
- progress callback; null for no-callbacksignoreErrors
is true, as
when false all failures raise BuildExceptions.java.io.IOException
- for network troubleBuildException
- for argument errors, or other trouble when ignoreErrors
is false.public void setSrc(java.net.URL u)
u
- URL for the file.public void add(ResourceCollection rc)
public void setDest(java.io.File dest)
dest
- Path to file.public void setVerbose(boolean v)
v
- if "true" then be verbosepublic void setIgnoreErrors(boolean v)
v
- if "true" then don't report download errors up to antpublic void setUseTimestamp(boolean v)
In this situation, the if-modified-since header is set so that the file is only fetched if it is newer than the local file (or there is no local file) This flag is only valid on HTTP connections, it is ignored in other cases. When the flag is set, the local copy of the downloaded file will also have its timestamp set to the remote file time.
Note that remote files of date 1/1/1970 (GMT) are treated as 'no timestamp', and web servers often serve files with a timestamp in the future by replacing their timestamp with that of the current time. Also, inter-computer clock differences can cause no end of grief.
v
- "true" to enable file time fetchingpublic void setUsername(java.lang.String u)
u
- username for authenticationpublic void setPassword(java.lang.String p)
p
- password for authenticationpublic void setMaxTime(long maxTime)
public void setRetries(int r)
r
- retry countpublic void setSkipExisting(boolean s)
s
- "true" to skip existing destination filespublic void setHttpUseCaches(boolean httpUseCache)
Defaults to true (allow caching, which is also the HttpUrlConnection default value.
public Mapper createMapper() throws BuildException
BuildException
- if more than one mapper is defined.public void add(FileNameMapper fileNameMapper)
fileNameMapper
- the mapper to add.