public class TransferState extends Object implements TimeEstimator
FileTransfer implementations.
A single instance will be created per invocation of
FileTransfer.transfer(TransferState). Several instance methods are
provided for common reporting actions (See usage in existing
FileTransfer implementations.| Constructor and Description |
|---|
TransferState(File file,
int index,
int total,
omero.grid.ImportProcessPrx proc,
ImportLibrary library,
TimeEstimator estimator,
ChecksumProvider cp,
byte[] buf)
State of the current file transfer.
|
| Modifier and Type | Method and Description |
|---|---|
void |
closeUploader()
Call
StatefulServiceInterfacePrx.close() on the cached prx
instance if non-null and null the instance. |
byte[] |
getBuffer()
(Not thread safe) Get a moderately large buffer for use in
reading/writing data.
|
String |
getChecksum()
Get the digest string for the local file.
|
ChecksumProvider |
getChecksumProvider()
Get the
ChecksumProvider passed to the constructor. |
File |
getFile()
Return the target file passed to the constructor.
|
long |
getLength()
Return the length of the
target file. |
omero.model.OriginalFile |
getOriginalFile()
Find original file as defined by the ID in the
RawFileStorePrx
regardless of group. |
omero.model.OriginalFile |
getRootFile()
Find original file represented by the managed repository that
import is taking place to.
|
omero.api.RawFileStorePrx |
getUploader()
Return the
RawFileStorePrx instance for this index. |
omero.api.RawFileStorePrx |
getUploader(String mode)
Return the
RawFileStorePrx instance for this index setting
the mode if not null. |
long |
getUploadTimeLeft()
|
void |
save()
Calls
RawFileStorePrx.save() and stores the resultant
OriginalFile for future inspection along with the local
checksum. |
void |
start()
Starts the time counting.
|
void |
stop()
Stops the time counting and updates the internal time counter.
|
void |
stop(long uploadedBytes)
Stops the time counting and updates the internal updates the internal
time counter and counter of total number of transmitted bytes.
|
void |
uploadBytes(long offset)
Raise the
ImportEvent.FILE_UPLOAD_BYTES event to all
observers. |
void |
uploadComplete(long offset)
Raise the
ImportEvent.FILE_UPLOAD_COMPLETE event to all
observers. |
void |
uploadStarted()
Raise the
ImportEvent.FILE_UPLOAD_STARTED event to all
observers. |
public TransferState(File file, int index, int total, omero.grid.ImportProcessPrx proc, ImportLibrary library, TimeEstimator estimator, ChecksumProvider cp, byte[] buf) throws IOException, omero.ServerError
file - Source file which is to be transferred.index - Which of the total files to upload this is.total - Total number of files to upload.proc - ImportProcessPrx which is being imported to.library - ImportLibrary to use for notifications.estimator - cp - buf - optional buffer. Need not be used or updated.IOExceptionomero.ServerErrorpublic void save()
throws omero.ServerError
RawFileStorePrx.save() and stores the resultant
OriginalFile for future inspection along with the local
checksum. (The remote checksum is available from the
OriginalFile.omero.ServerErrorpublic byte[] getBuffer()
public String getChecksum()
save() has been called.public ChecksumProvider getChecksumProvider()
ChecksumProvider passed to the constructor.
Since the ChecksumProvider has a number of different usage styles,
TransferState doesn't attempt to delegate but just returns the
instance.public File getFile()
public long getLength()
target file.public omero.model.OriginalFile getOriginalFile()
throws omero.ServerError
RawFileStorePrx
regardless of group.omero.ServerErrorpublic omero.model.OriginalFile getRootFile()
throws omero.ServerError
omero.ServerErrorpublic omero.api.RawFileStorePrx getUploader()
throws omero.ServerError
RawFileStorePrx instance for this index.omero.ServerErrorpublic omero.api.RawFileStorePrx getUploader(String mode) throws omero.ServerError
RawFileStorePrx instance for this index setting
the mode if not null. Valid values include "r" and "rw". If a non-null
prx is available, it will be returned instead.
Every instance which is returned from this method should
eventually have StatefulServiceInterfacePrx.close() called on it.
#close() can be used to facilitate this.omero.ServerErrorpublic void closeUploader()
StatefulServiceInterfacePrx.close() on the cached prx
instance if non-null and null the instance. If
ObjectNotExistException is thrown, the service is
assumed closed. All other exceptions will be printed at WARN.public void uploadStarted()
ImportEvent.FILE_UPLOAD_STARTED event to all
observers.public void uploadBytes(long offset)
ImportEvent.FILE_UPLOAD_BYTES event to all
observers.public void uploadComplete(long offset)
ImportEvent.FILE_UPLOAD_COMPLETE event to all
observers.public void start()
TimeEstimatorstart in interface TimeEstimatorpublic void stop()
TimeEstimatorstop in interface TimeEstimatorpublic void stop(long uploadedBytes)
TimeEstimatorstop in interface TimeEstimatoruploadedBytes - Number of bytes uploaded in a single time frame that is being
sampled.public long getUploadTimeLeft()
TimeEstimatorgetUploadTimeLeft in interface TimeEstimatorstop hasn't been called at least
once before calling this method.
Version: 5.1.4-ice35-b55
Copyright © 2015 The University of Dundee & Open Microscopy Environment. All Rights Reserved.