final class BasicRepositoryConnector extends java.lang.Object implements RepositoryConnector
Modifier and Type | Class and Description |
---|---|
private static class |
BasicRepositoryConnector.DirectExecutor |
(package private) class |
BasicRepositoryConnector.GetTaskRunner |
(package private) class |
BasicRepositoryConnector.PeekTaskRunner |
(package private) class |
BasicRepositoryConnector.PutTaskRunner |
(package private) class |
BasicRepositoryConnector.TaskRunner |
Modifier and Type | Field and Description |
---|---|
private ChecksumPolicyProvider |
checksumPolicyProvider |
private boolean |
closed |
private static java.lang.String |
CONFIG_PROP_RESUME |
private static java.lang.String |
CONFIG_PROP_RESUME_THRESHOLD |
private static java.lang.String |
CONFIG_PROP_SMART_CHECKSUMS |
private static java.lang.String |
CONFIG_PROP_THREADS |
private java.util.concurrent.Executor |
executor |
private FileProcessor |
fileProcessor |
private RepositoryLayout |
layout |
private Logger |
logger |
private int |
maxThreads |
private PartialFile.Factory |
partialFileFactory |
private boolean |
persistedChecksums |
private RemoteRepository |
repository |
private RepositorySystemSession |
session |
private boolean |
smartChecksums |
private Transporter |
transporter |
Constructor and Description |
---|
BasicRepositoryConnector(RepositorySystemSession session,
RemoteRepository repository,
TransporterProvider transporterProvider,
RepositoryLayoutProvider layoutProvider,
ChecksumPolicyProvider checksumPolicyProvider,
FileProcessor fileProcessor,
Logger logger) |
Modifier and Type | Method and Description |
---|---|
void |
close()
Closes this connector and frees any network resources associated with it.
|
protected void |
finalize() |
void |
get(java.util.Collection<? extends ArtifactDownload> artifactDownloads,
java.util.Collection<? extends MetadataDownload> metadataDownloads)
Performs the specified downloads.
|
private java.util.concurrent.Executor |
getExecutor(java.util.Collection<?> artifacts,
java.util.Collection<?> metadatas) |
private ChecksumPolicy |
newChecksumPolicy(java.lang.String policy,
TransferResource resource) |
private TransferEvent.Builder |
newEventBuilder(TransferResource resource,
boolean upload,
boolean peek) |
private TransferResource |
newTransferResource(java.net.URI path,
java.io.File file,
RequestTrace trace) |
void |
put(java.util.Collection<? extends ArtifactUpload> artifactUploads,
java.util.Collection<? extends MetadataUpload> metadataUploads)
Performs the specified uploads.
|
private static <T> java.util.Collection<T> |
safe(java.util.Collection<T> items) |
java.lang.String |
toString() |
private static final java.lang.String CONFIG_PROP_THREADS
private static final java.lang.String CONFIG_PROP_RESUME
private static final java.lang.String CONFIG_PROP_RESUME_THRESHOLD
private static final java.lang.String CONFIG_PROP_SMART_CHECKSUMS
private final Logger logger
private final FileProcessor fileProcessor
private final RemoteRepository repository
private final RepositorySystemSession session
private final Transporter transporter
private final RepositoryLayout layout
private final ChecksumPolicyProvider checksumPolicyProvider
private final PartialFile.Factory partialFileFactory
private final int maxThreads
private final boolean smartChecksums
private final boolean persistedChecksums
private java.util.concurrent.Executor executor
private boolean closed
BasicRepositoryConnector(RepositorySystemSession session, RemoteRepository repository, TransporterProvider transporterProvider, RepositoryLayoutProvider layoutProvider, ChecksumPolicyProvider checksumPolicyProvider, FileProcessor fileProcessor, Logger logger) throws NoRepositoryConnectorException
NoRepositoryConnectorException
private java.util.concurrent.Executor getExecutor(java.util.Collection<?> artifacts, java.util.Collection<?> metadatas)
protected void finalize() throws java.lang.Throwable
finalize
in class java.lang.Object
java.lang.Throwable
public void close()
RepositoryConnector
IllegalStateException
or similar. Closing
an already closed connector is harmless and has no effect.close
in interface java.io.Closeable
close
in interface java.lang.AutoCloseable
close
in interface RepositoryConnector
public void get(java.util.Collection<? extends ArtifactDownload> artifactDownloads, java.util.Collection<? extends MetadataDownload> metadataDownloads)
RepositoryConnector
ArtifactTransfer.getException()
and
MetadataTransfer.getException()
, respectively. If reasonable, a connector should continue to process the
remaining downloads after an error to retrieve as many items as possible. The connector may perform the transfers
concurrently and in any order.get
in interface RepositoryConnector
artifactDownloads
- The artifact downloads to perform, may be null
or empty.metadataDownloads
- The metadata downloads to perform, may be null
or empty.public void put(java.util.Collection<? extends ArtifactUpload> artifactUploads, java.util.Collection<? extends MetadataUpload> metadataUploads)
RepositoryConnector
ArtifactTransfer.getException()
and
MetadataTransfer.getException()
, respectively. The connector may perform the transfers concurrently and in
any order.put
in interface RepositoryConnector
artifactUploads
- The artifact uploads to perform, may be null
or empty.metadataUploads
- The metadata uploads to perform, may be null
or empty.private static <T> java.util.Collection<T> safe(java.util.Collection<T> items)
private TransferResource newTransferResource(java.net.URI path, java.io.File file, RequestTrace trace)
private TransferEvent.Builder newEventBuilder(TransferResource resource, boolean upload, boolean peek)
private ChecksumPolicy newChecksumPolicy(java.lang.String policy, TransferResource resource)
public java.lang.String toString()
toString
in class java.lang.Object