public class CopyWriter extends Object implements Restorable<CopyWriter>
CopyWriter
object allows to copy both blob's data and
information. To override source blob's information supply a BlobInfo
to the CopyRequest
using either Storage.CopyRequest.Builder.setTarget(BlobInfo,
Storage.BlobTargetOption...)
or Storage.CopyRequest.Builder.setTarget(BlobInfo,
Iterable)
.
This class holds the result of a copy request. If source and destination blobs share the same
location and storage class the copy is completed in one RPC call otherwise one or more copyChunk()
calls are necessary to complete the copy. In addition, getResult()
can be used to automatically complete the copy and return information on the newly created blob.
Modifier and Type | Method and Description |
---|---|
RestorableState<CopyWriter> |
capture()
Captures the state of this object.
|
void |
copyChunk()
Copies the next chunk of the blob.
|
long |
getBlobSize()
Returns the size of the blob being copied.
|
Blob |
getResult()
Returns the updated information for the written blob.
|
long |
getTotalBytesCopied()
Returns the number of bytes copied.
|
boolean |
isDone()
Returns
true if blob copy has finished, false otherwise. |
public Blob getResult()
isDone()
is false
will block until all pending chunks are copied.
This method has the same effect of doing:
while (!copyWriter.isDone()) {
copyWriter.copyChunk();
}
StorageException
- upon failurepublic long getBlobSize()
public boolean isDone()
true
if blob copy has finished, false
otherwise.public long getTotalBytesCopied()
public void copyChunk()
isDone()
returns false
).StorageException
- upon failurepublic RestorableState<CopyWriter> capture()
Restorable
capture
in interface Restorable<CopyWriter>
RestorableState
instance that contains the state for this object and can
restore it afterwards.Copyright © 2019 Google LLC. All rights reserved.