Class ResumableFileDownload
- java.lang.Object
-
- software.amazon.awssdk.transfer.s3.model.ResumableFileDownload
-
- All Implemented Interfaces:
ResumableTransfer
,ToCopyableBuilder<ResumableFileDownload.Builder,ResumableFileDownload>
public final class ResumableFileDownload extends Object implements ResumableTransfer, ToCopyableBuilder<ResumableFileDownload.Builder,ResumableFileDownload>
An opaque token that holds the state and can be used to resume a paused download operation.Serialization: When serializing this token, the following structures will not be preserved/persisted:
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
ResumableFileDownload.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ResumableFileDownload.Builder
builder()
long
bytesTransferred()
Retrieve the number of bytes that have been transferred.DownloadFileRequest
downloadFileRequest()
boolean
equals(Object o)
Instant
fileLastModified()
Last modified time of the file since last pausestatic ResumableFileDownload
fromBytes(SdkBytes bytes)
Deserialize bytes with JSON data into aResumableFileDownload
.static ResumableFileDownload
fromFile(Path path)
Deserialize data at the given path into aResumableFileDownload
.static ResumableFileDownload
fromString(String contents)
Deserialize a string with JSON data into aResumableFileDownload
.int
hashCode()
Optional<Instant>
s3ObjectLastModified()
Last modified time of the S3 object since last pause, orOptional.empty()
if unknownSdkBytes
serializeToBytes()
Returns the serialized JSON data representing this object as anSdkBytes
object.void
serializeToFile(Path path)
Persists this download object to a file in Base64-encoded JSON format.InputStream
serializeToInputStream()
Returns the serialized JSON data representing this object as anInputStream
.void
serializeToOutputStream(OutputStream outputStream)
Writes the serialized JSON data representing this object to an output stream.String
serializeToString()
Returns the serialized JSON data representing this object as a string.ResumableFileDownload.Builder
toBuilder()
String
toString()
OptionalLong
totalSizeInBytes()
The total size of the transfer in bytes orOptionalLong.empty()
if unknown-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
builder
public static ResumableFileDownload.Builder builder()
-
downloadFileRequest
public DownloadFileRequest downloadFileRequest()
- Returns:
- the
DownloadFileRequest
to resume
-
bytesTransferred
public long bytesTransferred()
Retrieve the number of bytes that have been transferred.- Returns:
- the number of bytes
-
s3ObjectLastModified
public Optional<Instant> s3ObjectLastModified()
Last modified time of the S3 object since last pause, orOptional.empty()
if unknown
-
fileLastModified
public Instant fileLastModified()
Last modified time of the file since last pause
-
totalSizeInBytes
public OptionalLong totalSizeInBytes()
The total size of the transfer in bytes orOptionalLong.empty()
if unknown- Returns:
- the optional total size of the transfer.
-
serializeToFile
public void serializeToFile(Path path)
Persists this download object to a file in Base64-encoded JSON format.- Specified by:
serializeToFile
in interfaceResumableTransfer
- Parameters:
path
- The path to the file to which you want to write the serialized download object.
-
serializeToOutputStream
public void serializeToOutputStream(OutputStream outputStream)
Writes the serialized JSON data representing this object to an output stream. Note that theOutputStream
is not closed or flushed after writing.- Specified by:
serializeToOutputStream
in interfaceResumableTransfer
- Parameters:
outputStream
- The output stream to write the serialized object to.
-
serializeToString
public String serializeToString()
Returns the serialized JSON data representing this object as a string.- Specified by:
serializeToString
in interfaceResumableTransfer
-
serializeToBytes
public SdkBytes serializeToBytes()
Returns the serialized JSON data representing this object as anSdkBytes
object.- Specified by:
serializeToBytes
in interfaceResumableTransfer
- Returns:
- the serialized JSON as
SdkBytes
-
serializeToInputStream
public InputStream serializeToInputStream()
Returns the serialized JSON data representing this object as anInputStream
.- Specified by:
serializeToInputStream
in interfaceResumableTransfer
- Returns:
- the serialized JSON input stream
-
fromFile
public static ResumableFileDownload fromFile(Path path)
Deserialize data at the given path into aResumableFileDownload
.- Parameters:
path
- ThePath
to the file with serialized data- Returns:
- the deserialized
ResumableFileDownload
-
fromBytes
public static ResumableFileDownload fromBytes(SdkBytes bytes)
Deserialize bytes with JSON data into aResumableFileDownload
.- Parameters:
bytes
- the serialized data- Returns:
- the deserialized
ResumableFileDownload
-
fromString
public static ResumableFileDownload fromString(String contents)
Deserialize a string with JSON data into aResumableFileDownload
.- Parameters:
contents
- the serialized data- Returns:
- the deserialized
ResumableFileDownload
-
toBuilder
public ResumableFileDownload.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<ResumableFileDownload.Builder,ResumableFileDownload>
-
-