Delete unused.

This commit is contained in:
David Kocher
2025-08-26 20:49:52 +02:00
parent a443e67219
commit b58423d7dd
28 changed files with 24 additions and 100 deletions
@@ -23,7 +23,6 @@ import ch.cyberduck.core.DisabledProgressListener;
import ch.cyberduck.core.Path;
import ch.cyberduck.core.PathCache;
import ch.cyberduck.core.azure.AbstractAzureTest;
import ch.cyberduck.core.azure.AzureDeleteFeature;
import ch.cyberduck.core.azure.AzureDirectoryFeature;
import ch.cyberduck.core.azure.AzureFindFeature;
import ch.cyberduck.core.azure.AzureReadFeature;
@@ -82,7 +81,7 @@ public class CopyWorkerTest extends AbstractAzureTest {
session.withRegistry(registry);
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new AzureDeleteFeature(session), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(StreamCancelation.noop, StreamProgress.noop).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new AzureWriteFeature(session), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final CopyWorker worker = new CopyWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session, registry), PathCache.empty(), new DisabledProgressListener(), new DisabledConnectionCallback());
@@ -118,7 +118,7 @@ public class B2LargeUploadServiceTest extends AbstractB2Test {
final byte[] content = RandomUtils.nextBytes(length);
writeStatus.setLength(content.length);
final B2VersionIdProvider fileid = new B2VersionIdProvider(session);
final CryptoBulkFeature<Map<TransferItem, TransferStatus>> bulk = new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new B2DeleteFeature(session, fileid), cryptomator);
final CryptoBulkFeature<Map<TransferItem, TransferStatus>> bulk = new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator);
bulk.pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(test), writeStatus), new DisabledConnectionCallback());
final CryptoUploadFeature service = new CryptoUploadFeature<>(session,
new B2LargeUploadService(session, fileid, new B2WriteFeature(session, fileid), 5000000L, 5),
@@ -23,7 +23,6 @@ import ch.cyberduck.core.DisabledProgressListener;
import ch.cyberduck.core.Path;
import ch.cyberduck.core.PathCache;
import ch.cyberduck.core.b2.AbstractB2Test;
import ch.cyberduck.core.b2.B2DeleteFeature;
import ch.cyberduck.core.b2.B2DirectoryFeature;
import ch.cyberduck.core.b2.B2FindFeature;
import ch.cyberduck.core.b2.B2ReadFeature;
@@ -83,7 +82,7 @@ public class CopyWorkerTest extends AbstractB2Test {
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
final B2VersionIdProvider fileid = new B2VersionIdProvider(session);
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new B2DeleteFeature(session, fileid), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new B2WriteFeature(session, fileid), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final CopyWorker worker = new CopyWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session, registry), PathCache.empty(), new DisabledProgressListener(), new DisabledConnectionCallback());
@@ -88,7 +88,7 @@ public class BoxThresholdUploadServiceTest extends AbstractBoxTest {
final FileHeader header = cryptomator.getFileHeaderCryptor().create();
writeStatus.setHeader(cryptomator.getFileHeaderCryptor().encryptHeader(header));
writeStatus.setLength(content.length);
final CryptoBulkFeature<Map<TransferItem, TransferStatus>> bulk = new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new BoxDeleteFeature(session, fileid), cryptomator);
final CryptoBulkFeature<Map<TransferItem, TransferStatus>> bulk = new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator);
bulk.pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(test), writeStatus), new DisabledConnectionCallback());
final BytecountStreamListener count = new BytecountStreamListener();
final CryptoUploadFeature feature = new CryptoUploadFeature<>(session,
@@ -46,6 +46,4 @@ public interface Bulk<R> {
* @param callback Callback to user
*/
void post(Transfer.Type type, Map<TransferItem, TransferStatus> files, ConnectionCallback callback) throws BackgroundException;
Bulk<R> withDelete(Delete delete);
}
@@ -18,7 +18,6 @@ package ch.cyberduck.core.shared;
import ch.cyberduck.core.ConnectionCallback;
import ch.cyberduck.core.exception.BackgroundException;
import ch.cyberduck.core.features.Bulk;
import ch.cyberduck.core.features.Delete;
import ch.cyberduck.core.transfer.Transfer;
import ch.cyberduck.core.transfer.TransferItem;
import ch.cyberduck.core.transfer.TransferStatus;
@@ -31,11 +30,6 @@ public class DisabledBulkFeature implements Bulk<Map<TransferItem, TransferStatu
return null;
}
@Override
public Bulk<Map<TransferItem, TransferStatus>> withDelete(final Delete delete) {
return this;
}
@Override
public void post(final Transfer.Type type, final Map<TransferItem, TransferStatus> files, final ConnectionCallback callback) throws BackgroundException {
//
@@ -19,7 +19,6 @@ import ch.cyberduck.core.ConnectionCallback;
import ch.cyberduck.core.Session;
import ch.cyberduck.core.exception.BackgroundException;
import ch.cyberduck.core.features.Bulk;
import ch.cyberduck.core.features.Delete;
import ch.cyberduck.core.transfer.Transfer;
import ch.cyberduck.core.transfer.TransferItem;
import ch.cyberduck.core.transfer.TransferStatus;
@@ -49,12 +48,6 @@ public class VaultRegistryBulkFeature<R> implements Bulk<R> {
return null;
}
@Override
public Bulk<R> withDelete(final Delete delete) {
proxy.withDelete(delete);
return this;
}
@Override
public void post(final Transfer.Type type, final Map<TransferItem, TransferStatus> files, final ConnectionCallback callback) throws BackgroundException {
for(Map.Entry<TransferItem, TransferStatus> file : files.entrySet()) {
@@ -696,7 +696,7 @@ public class CryptoVault implements Vault {
return (T) new CryptoCompressFeature(session, (Compress) delegate, this);
}
if(type == Bulk.class) {
return (T) new CryptoBulkFeature(session, (Bulk) delegate, session._getFeature(Delete.class), this);
return (T) new CryptoBulkFeature(session, (Bulk) delegate, this);
}
if(type == UnixPermission.class) {
return (T) new CryptoUnixPermission(session, (UnixPermission) delegate, this);
@@ -26,7 +26,6 @@ import ch.cyberduck.core.cryptomator.random.RandomNonceGenerator;
import ch.cyberduck.core.cryptomator.random.RotatingNonceGenerator;
import ch.cyberduck.core.exception.BackgroundException;
import ch.cyberduck.core.features.Bulk;
import ch.cyberduck.core.features.Delete;
import ch.cyberduck.core.transfer.Transfer;
import ch.cyberduck.core.transfer.TransferItem;
import ch.cyberduck.core.transfer.TransferStatus;
@@ -48,9 +47,9 @@ public class CryptoBulkFeature<R> implements Bulk<R> {
private final Bulk<R> delegate;
private final CryptoVault cryptomator;
public CryptoBulkFeature(final Session<?> session, final Bulk<R> delegate, final Delete delete, final CryptoVault cryptomator) {
public CryptoBulkFeature(final Session<?> session, final Bulk<R> delegate, final CryptoVault cryptomator) {
this.session = session;
this.delegate = delegate.withDelete(cryptomator.getFeature(session, Delete.class, delete));
this.delegate = delegate;
this.cryptomator = cryptomator;
}
@@ -103,12 +102,6 @@ public class CryptoBulkFeature<R> implements Bulk<R> {
return delegate.pre(type, encrypted, callback);
}
@Override
public Bulk<R> withDelete(final Delete delete) {
delegate.withDelete(cryptomator.getFeature(session, Delete.class, delete));
return this;
}
@Override
public void post(final Transfer.Type type, final Map<TransferItem, TransferStatus> files, final ConnectionCallback callback) throws BackgroundException {
final Map<TransferItem, TransferStatus> encrypted = new HashMap<>(files.size());
@@ -20,12 +20,10 @@ import ch.cyberduck.core.DisabledConnectionCallback;
import ch.cyberduck.core.Host;
import ch.cyberduck.core.Local;
import ch.cyberduck.core.NullSession;
import ch.cyberduck.core.PasswordCallback;
import ch.cyberduck.core.Path;
import ch.cyberduck.core.TestProtocol;
import ch.cyberduck.core.cryptomator.CryptoVault;
import ch.cyberduck.core.features.Bulk;
import ch.cyberduck.core.features.Delete;
import ch.cyberduck.core.features.Directory;
import ch.cyberduck.core.transfer.Transfer;
import ch.cyberduck.core.transfer.TransferItem;
@@ -75,17 +73,6 @@ public class CryptoBulkFeatureTest {
public void post(final Transfer.Type type, final Map<TransferItem, TransferStatus> files, final ConnectionCallback callback) {
//
}
@Override
public Bulk<Map<TransferItem, TransferStatus>> withDelete(final Delete delete) {
return this;
}
}, new Delete() {
@Override
public void delete(final Map<Path, TransferStatus> files, final PasswordCallback prompt, final Callback callback) {
throw new UnsupportedOperationException();
}
}, cryptomator);
final HashMap<TransferItem, TransferStatus> files = new HashMap<>();
final Path directory = new Path("/vault/directory", EnumSet.of(Path.Type.directory));
@@ -143,17 +130,6 @@ public class CryptoBulkFeatureTest {
public void post(final Transfer.Type type, final Map<TransferItem, TransferStatus> files, final ConnectionCallback callback) {
//
}
@Override
public Bulk<Map<TransferItem, TransferStatus>> withDelete(final Delete delete) {
return this;
}
}, new Delete() {
@Override
public void delete(final Map<Path, TransferStatus> files, final PasswordCallback prompt, final Callback callback) {
throw new UnsupportedOperationException();
}
}, cryptomator);
final HashMap<TransferItem, TransferStatus> files = new HashMap<>();
final Path directory = new Path("/vault/directory", EnumSet.of(Path.Type.directory));
@@ -20,7 +20,6 @@ import ch.cyberduck.core.Path;
import ch.cyberduck.core.PathContainerService;
import ch.cyberduck.core.exception.BackgroundException;
import ch.cyberduck.core.features.Bulk;
import ch.cyberduck.core.features.Delete;
import ch.cyberduck.core.features.Scheduler;
import ch.cyberduck.core.preferences.HostPreferencesFactory;
import ch.cyberduck.core.transfer.Transfer;
@@ -108,9 +107,4 @@ public class SDSEncryptionBulkFeature implements Bulk<Void> {
}
}
}
@Override
public Bulk<Void> withDelete(final Delete delete) {
return this;
}
}
@@ -27,7 +27,6 @@ import ch.cyberduck.core.cryptomator.features.CryptoBulkFeature;
import ch.cyberduck.core.cryptomator.features.CryptoReadFeature;
import ch.cyberduck.core.cryptomator.features.CryptoTouchFeature;
import ch.cyberduck.core.cryptomator.features.CryptoWriteFeature;
import ch.cyberduck.core.dropbox.DropboxDeleteFeature;
import ch.cyberduck.core.dropbox.DropboxDirectoryFeature;
import ch.cyberduck.core.dropbox.DropboxFindFeature;
import ch.cyberduck.core.dropbox.DropboxReadFeature;
@@ -82,7 +81,7 @@ public class CopyWorkerTest extends AbstractDropboxTest {
session.withRegistry(registry);
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new DropboxDeleteFeature(session), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new DropboxWriteFeature(session), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final CopyWorker worker = new CopyWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session, registry), PathCache.empty(), new DisabledProgressListener(), new DisabledConnectionCallback());
@@ -122,7 +122,7 @@ public class EueThresholdUploadServiceTest extends AbstractEueSessionTest {
final FileHeader header = cryptomator.getFileHeaderCryptor().create();
writeStatus.setHeader(cryptomator.getFileHeaderCryptor().encryptHeader(header));
writeStatus.setLength(content.length);
final CryptoBulkFeature<Map<TransferItem, TransferStatus>> bulk = new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new EueDeleteFeature(session, fileid), cryptomator);
final CryptoBulkFeature<Map<TransferItem, TransferStatus>> bulk = new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator);
bulk.pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(test), writeStatus), new DisabledConnectionCallback());
final BytecountStreamListener count = new BytecountStreamListener();
final CryptoUploadFeature feature = new CryptoUploadFeature<>(session,
@@ -121,7 +121,7 @@ public class EueUploadServiceTest extends AbstractEueSessionTest {
final FileHeader header = cryptomator.getFileHeaderCryptor().create();
writeStatus.setHeader(cryptomator.getFileHeaderCryptor().encryptHeader(header));
writeStatus.setLength(content.length);
final CryptoBulkFeature<Map<TransferItem, TransferStatus>> bulk = new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new EueDeleteFeature(session, fileid), cryptomator);
final CryptoBulkFeature<Map<TransferItem, TransferStatus>> bulk = new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator);
bulk.pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(test), writeStatus), new DisabledConnectionCallback());
final BytecountStreamListener count = new BytecountStreamListener();
final CryptoUploadFeature feature = new CryptoUploadFeature<>(session,
@@ -33,7 +33,6 @@ import ch.cyberduck.core.cryptomator.features.CryptoWriteFeature;
import ch.cyberduck.core.features.Directory;
import ch.cyberduck.core.features.Find;
import ch.cyberduck.core.ftp.AbstractFTPTest;
import ch.cyberduck.core.ftp.FTPDeleteFeature;
import ch.cyberduck.core.ftp.FTPDirectoryFeature;
import ch.cyberduck.core.ftp.FTPReadFeature;
import ch.cyberduck.core.ftp.FTPSession;
@@ -87,7 +86,7 @@ public class CopyWorkerTest extends AbstractFTPTest {
session.withRegistry(registry);
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new FTPDeleteFeature(session), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new FTPWriteFeature(session), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final FTPSession copySession = new FTPSession(new Host(session.getHost()).withCredentials(new Credentials("test", "test")));
@@ -29,7 +29,6 @@ import ch.cyberduck.core.cryptomator.features.CryptoWriteFeature;
import ch.cyberduck.core.features.Directory;
import ch.cyberduck.core.features.Find;
import ch.cyberduck.core.googledrive.AbstractDriveTest;
import ch.cyberduck.core.googledrive.DriveDeleteFeature;
import ch.cyberduck.core.googledrive.DriveDirectoryFeature;
import ch.cyberduck.core.googledrive.DriveFileIdProvider;
import ch.cyberduck.core.googledrive.DriveFindFeature;
@@ -84,7 +83,7 @@ public class CopyWorkerTest extends AbstractDriveTest {
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
final DriveFileIdProvider fileid = new DriveFileIdProvider(session);
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new DriveDeleteFeature(session, fileid), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new DriveWriteFeature(session, fileid), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final CopyWorker worker = new CopyWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session, registry), PathCache.empty(), new DisabledProgressListener(), new DisabledConnectionCallback());
@@ -87,7 +87,7 @@ public class MoveWorkerTest extends AbstractDriveTest {
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
final DriveFileIdProvider fileid = new DriveFileIdProvider(session);
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new DriveDeleteFeature(session, fileid), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new DriveWriteFeature(session, fileid), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final MoveWorker worker = new MoveWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session), PathCache.empty(), new DisabledProgressListener(), new DisabledLoginCallback());
@@ -33,7 +33,6 @@ import ch.cyberduck.core.io.StreamCopier;
import ch.cyberduck.core.onedrive.AbstractOneDriveTest;
import ch.cyberduck.core.onedrive.OneDriveHomeFinderService;
import ch.cyberduck.core.onedrive.features.GraphAttributesFinderFeature;
import ch.cyberduck.core.onedrive.features.GraphDeleteFeature;
import ch.cyberduck.core.onedrive.features.GraphDirectoryFeature;
import ch.cyberduck.core.onedrive.features.GraphFindFeature;
import ch.cyberduck.core.onedrive.features.GraphReadFeature;
@@ -83,7 +82,7 @@ public class CopyWorkerTest extends AbstractOneDriveTest {
session.withRegistry(registry);
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new GraphDeleteFeature(session, fileid), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new GraphWriteFeature(session, fileid), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final CopyWorker worker = new CopyWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session, registry), PathCache.empty(), new DisabledProgressListener(), new DisabledConnectionCallback());
@@ -85,7 +85,7 @@ public class MoveWorkerTest extends AbstractOneDriveTest {
session.withRegistry(new DefaultVaultRegistry(new DisabledPasswordCallback(), cryptomator));
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new GraphDeleteFeature(session, fileid), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new GraphWriteFeature(session, fileid), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final MoveWorker worker = new MoveWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session), PathCache.empty(), new DisabledProgressListener(), new DisabledLoginCallback());
@@ -30,7 +30,6 @@ import ch.cyberduck.core.features.Directory;
import ch.cyberduck.core.features.Find;
import ch.cyberduck.core.io.StreamCopier;
import ch.cyberduck.core.openstack.AbstractSwiftTest;
import ch.cyberduck.core.openstack.SwiftDeleteFeature;
import ch.cyberduck.core.openstack.SwiftDirectoryFeature;
import ch.cyberduck.core.openstack.SwiftFindFeature;
import ch.cyberduck.core.openstack.SwiftReadFeature;
@@ -82,7 +81,7 @@ public class CopyWorkerTest extends AbstractSwiftTest {
session.withRegistry(registry);
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new SwiftDeleteFeature(session), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new SwiftWriteFeature(session, new SwiftRegionService(session)), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final CopyWorker worker = new CopyWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session, registry), PathCache.empty(), new DisabledProgressListener(), new DisabledConnectionCallback());
@@ -23,7 +23,6 @@ import ch.cyberduck.core.exception.BackgroundException;
import ch.cyberduck.core.exception.InteroperabilityException;
import ch.cyberduck.core.exception.NotfoundException;
import ch.cyberduck.core.features.Bulk;
import ch.cyberduck.core.features.Delete;
import ch.cyberduck.core.features.TransferAcceleration;
import ch.cyberduck.core.preferences.HostPreferencesFactory;
import ch.cyberduck.core.transfer.Transfer;
@@ -65,11 +64,6 @@ public class S3BulkTransferAccelerationFeature implements Bulk<Void> {
this.configure(files, callback, false);
}
@Override
public Bulk<Void> withDelete(final Delete delete) {
return this;
}
private void configure(final Map<TransferItem, TransferStatus> files, final ConnectionCallback callback, final boolean enabled) throws BackgroundException {
final Set<Path> buckets = new HashSet<>();
for(TransferItem file : files.keySet()) {
@@ -32,7 +32,6 @@ import ch.cyberduck.core.io.StreamCopier;
import ch.cyberduck.core.pool.SessionPool;
import ch.cyberduck.core.s3.AbstractS3Test;
import ch.cyberduck.core.s3.S3AccessControlListFeature;
import ch.cyberduck.core.s3.S3DefaultDeleteFeature;
import ch.cyberduck.core.s3.S3DirectoryFeature;
import ch.cyberduck.core.s3.S3FindFeature;
import ch.cyberduck.core.s3.S3MultipartWriteFeature;
@@ -83,7 +82,7 @@ public class CopyWorkerTest extends AbstractS3Test {
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
final S3AccessControlListFeature acl = new S3AccessControlListFeature(session);
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new S3DefaultDeleteFeature(session, acl), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new S3MultipartWriteFeature(session, acl), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final CopyWorker worker = new CopyWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session, registry), PathCache.empty(), new DisabledProgressListener(), new DisabledConnectionCallback());
@@ -87,7 +87,7 @@ public class MoveWorkerTest extends AbstractS3Test {
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
final S3AccessControlListFeature acl = new S3AccessControlListFeature(session);
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new S3DefaultDeleteFeature(session, acl), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new S3MultipartWriteFeature(session, acl), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final MoveWorker worker = new MoveWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session), PathCache.empty(), new DisabledProgressListener(), new DisabledLoginCallback());
@@ -151,7 +151,7 @@ public class S3MultipartUploadServiceTest extends AbstractS3Test {
final TransferStatus writeStatus = new TransferStatus();
final byte[] content = RandomUtils.nextBytes(6 * 1024 * 1024);
writeStatus.setLength(content.length);
final CryptoBulkFeature<Map<TransferItem, TransferStatus>> bulk = new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new S3DefaultDeleteFeature(session, new S3AccessControlListFeature(session)), cryptomator);
final CryptoBulkFeature<Map<TransferItem, TransferStatus>> bulk = new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator);
bulk.pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(test), writeStatus), new DisabledConnectionCallback());
final S3AccessControlListFeature acl = new S3AccessControlListFeature(session);
final CryptoUploadFeature m = new CryptoUploadFeature<>(session,
@@ -75,7 +75,6 @@ public class SpectraBulkService implements Bulk<Set<UUID>> {
private static final Logger log = LogManager.getLogger(SpectraBulkService.class);
private final SpectraSession session;
private Delete delete;
private final PathContainerService containerService;
private static final String REQUEST_PARAMETER_JOBID_IDENTIFIER = "job";
@@ -83,16 +82,9 @@ public class SpectraBulkService implements Bulk<Set<UUID>> {
public SpectraBulkService(final SpectraSession session) {
this.session = session;
this.delete = new SpectraDeleteFeature(session);
this.containerService = new S3PathContainerService(session.getHost());
}
@Override
public Bulk<Set<UUID>> withDelete(final Delete delete) {
this.delete = delete;
return this;
}
@Override
public void post(final Transfer.Type type, final Map<TransferItem, TransferStatus> files, final ConnectionCallback callback) {
//
@@ -123,7 +115,7 @@ public class SpectraBulkService implements Bulk<Set<UUID>> {
case upload:
if(status.isExists()) {
log.warn("Delete existing file {}", file);
delete.delete(Collections.singletonMap(file, status), callback, new Delete.DisabledCallback());
session.getFeature(Delete.class).delete(Collections.singletonMap(file, status), callback, new Delete.DisabledCallback());
}
break;
}
@@ -33,7 +33,6 @@ import ch.cyberduck.core.io.StreamCopier;
import ch.cyberduck.core.pool.SessionPool;
import ch.cyberduck.core.sftp.AbstractSFTPTest;
import ch.cyberduck.core.sftp.SFTPAttributesFinderFeature;
import ch.cyberduck.core.sftp.SFTPDeleteFeature;
import ch.cyberduck.core.sftp.SFTPDirectoryFeature;
import ch.cyberduck.core.sftp.SFTPFindFeature;
import ch.cyberduck.core.sftp.SFTPHomeDirectoryService;
@@ -84,7 +83,7 @@ public class CopyWorkerTest extends AbstractSFTPTest {
session.withRegistry(registry);
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new SFTPDeleteFeature(session), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new SFTPWriteFeature(session), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
assertEquals(content.length, cryptomator.getFeature(session, AttributesFinder.class, new SFTPAttributesFinderFeature(session)).find(source).getSize());
@@ -86,7 +86,7 @@ public class MoveWorkerTest extends AbstractSFTPTest {
session.withRegistry(new DefaultVaultRegistry(new DisabledPasswordCallback(), cryptomator));
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new SFTPDeleteFeature(session), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new SFTPWriteFeature(session), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final MoveWorker worker = new MoveWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session), PathCache.empty(), new DisabledProgressListener(), new DisabledLoginCallback());
@@ -27,7 +27,6 @@ import ch.cyberduck.core.cryptomator.features.CryptoReadFeature;
import ch.cyberduck.core.cryptomator.features.CryptoTouchFeature;
import ch.cyberduck.core.cryptomator.features.CryptoWriteFeature;
import ch.cyberduck.core.dav.AbstractDAVTest;
import ch.cyberduck.core.dav.DAVDeleteFeature;
import ch.cyberduck.core.dav.DAVDirectoryFeature;
import ch.cyberduck.core.dav.DAVFindFeature;
import ch.cyberduck.core.dav.DAVReadFeature;
@@ -81,7 +80,7 @@ public class CopyWorkerTest extends AbstractDAVTest {
session.withRegistry(registry);
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus();
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new DAVDeleteFeature(session), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(source), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new DAVWriteFeature(session), cryptomator).write(source, status.setLength(content.length), new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(source));
final CopyWorker worker = new CopyWorker(Collections.singletonMap(source, target), new SessionPool.SingleSessionPool(session, registry), PathCache.empty(), new DisabledProgressListener(), new DisabledConnectionCallback());
@@ -244,7 +243,7 @@ public class CopyWorkerTest extends AbstractDAVTest {
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(encryptedFolder));
final byte[] content = RandomUtils.nextBytes(40500);
final TransferStatus status = new TransferStatus().setLength(content.length);
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), new DAVDeleteFeature(session), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(encryptedFile), status), new DisabledConnectionCallback());
new CryptoBulkFeature<>(session, new DisabledBulkFeature(), cryptomator).pre(Transfer.Type.upload, Collections.singletonMap(new TransferItem(encryptedFile), status), new DisabledConnectionCallback());
new StreamCopier(new TransferStatus(), new TransferStatus()).transfer(new ByteArrayInputStream(content), new CryptoWriteFeature<>(session, new DAVWriteFeature(session), cryptomator).write(encryptedFile, status, new DisabledConnectionCallback()));
assertTrue(cryptomator.getFeature(session, Find.class, new DefaultFindFeature(session)).find(encryptedFile));
// move file outside vault