Skip to content

Commit 86d4d6a

Browse files
committed
Add writer as parameter to allow wrapping with encryption feature.
1 parent 4f9209b commit 86d4d6a

File tree

10 files changed

+18
-23
lines changed

10 files changed

+18
-23
lines changed

irods/src/main/java/ch/cyberduck/core/irods/IRODSDirectoryFeature.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import ch.cyberduck.core.Path;
2121
import ch.cyberduck.core.exception.BackgroundException;
2222
import ch.cyberduck.core.features.Directory;
23+
import ch.cyberduck.core.features.Write;
2324
import ch.cyberduck.core.transfer.TransferStatus;
2425

2526
import org.irods.jargon.core.exception.JargonException;
@@ -35,7 +36,7 @@ public IRODSDirectoryFeature(final IRODSSession session) {
3536
}
3637

3738
@Override
38-
public Path mkdir(final Path folder, final TransferStatus status) throws BackgroundException {
39+
public Path mkdir(final Write<Void> writer, final Path folder, final TransferStatus status) throws BackgroundException {
3940
try {
4041
final IRODSFileSystemAO fs = session.getClient();
4142
final IRODSFile f = fs.getIRODSFileFactory().instanceIRODSFile(folder.getAbsolute());

irods/src/main/java/ch/cyberduck/core/irods/IRODSTouchFeature.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import ch.cyberduck.core.Path;
2121
import ch.cyberduck.core.exception.BackgroundException;
2222
import ch.cyberduck.core.features.Touch;
23+
import ch.cyberduck.core.features.Write;
2324
import ch.cyberduck.core.transfer.TransferStatus;
2425

2526
import org.irods.jargon.core.exception.JargonException;
@@ -35,7 +36,7 @@ public IRODSTouchFeature(final IRODSSession session) {
3536
}
3637

3738
@Override
38-
public Path touch(final Path file, final TransferStatus status) throws BackgroundException {
39+
public Path touch(final Write writer, final Path file, final TransferStatus status) throws BackgroundException {
3940
try {
4041
final IRODSFileSystemAO fs = session.getClient();
4142
final int descriptor = fs.createFile(file.getAbsolute(),

irods/src/test/java/ch/cyberduck/core/irods/IRODSAttributesFinderFeatureTest.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
import ch.cyberduck.core.exception.NotfoundException;
2828
import ch.cyberduck.core.features.Delete;
2929
import ch.cyberduck.core.proxy.DisabledProxyFinder;
30-
import ch.cyberduck.core.proxy.Proxy;
3130
import ch.cyberduck.core.serializer.impl.dd.ProfilePlistReader;
3231
import ch.cyberduck.core.transfer.TransferStatus;
3332
import ch.cyberduck.test.IntegrationTest;
@@ -73,12 +72,12 @@ public void testFind() throws Exception {
7372
session.open(new DisabledProxyFinder(), new DisabledHostKeyCallback(), new DisabledLoginCallback(), new DisabledCancelCallback());
7473
session.login(new DisabledLoginCallback(), new DisabledCancelCallback());
7574

76-
final Path folder = new IRODSDirectoryFeature(session).mkdir(new Path(
75+
final Path folder = new IRODSDirectoryFeature(session).mkdir(new IRODSWriteFeature(session), new Path(
7776
new IRODSHomeFinderService(session).find(), UUID.randomUUID().toString(), EnumSet.of(Path.Type.directory)), new TransferStatus());
7877
final IRODSAttributesFinderFeature f = new IRODSAttributesFinderFeature(session);
7978
final long folderTimestamp = f.find(folder).getModificationDate();
8079
final Path test = new Path(folder, UUID.randomUUID().toString(), EnumSet.of(Path.Type.file));
81-
new IRODSTouchFeature(session).touch(test, new TransferStatus());
80+
new IRODSTouchFeature(session).touch(new IRODSWriteFeature(session), test, new TransferStatus());
8281
assertEquals(folderTimestamp, f.find(folder).getModificationDate());
8382
final PathAttributes attributes = f.find(test);
8483
assertEquals(0L, attributes.getSize());

irods/src/test/java/ch/cyberduck/core/irods/IRODSCopyFeatureTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
import ch.cyberduck.core.features.Delete;
3030
import ch.cyberduck.core.io.DisabledStreamListener;
3131
import ch.cyberduck.core.proxy.DisabledProxyFinder;
32-
import ch.cyberduck.core.proxy.Proxy;
3332
import ch.cyberduck.core.serializer.impl.dd.ProfilePlistReader;
3433
import ch.cyberduck.core.transfer.TransferStatus;
3534
import ch.cyberduck.test.IntegrationTest;
@@ -62,7 +61,7 @@ public void testCopy() throws Exception {
6261
session.open(new DisabledProxyFinder(), new DisabledHostKeyCallback(), new DisabledLoginCallback(), new DisabledCancelCallback());
6362
session.login(new DisabledLoginCallback(), new DisabledCancelCallback());
6463
final Path test = new Path(new IRODSHomeFinderService(session).find(), UUID.randomUUID().toString(), EnumSet.of(Path.Type.file));
65-
new IRODSTouchFeature(session).touch(test, new TransferStatus());
64+
new IRODSTouchFeature(session).touch(new IRODSWriteFeature(session), test, new TransferStatus());
6665
final Path copy = new Path(new IRODSHomeFinderService(session).find(), UUID.randomUUID().toString(), EnumSet.of(Path.Type.file));
6766
new IRODSCopyFeature(session).copy(test, copy, new TransferStatus(), new DisabledConnectionCallback(), new DisabledStreamListener());
6867
assertTrue(new IRODSFindFeature(session).find(test));

irods/src/test/java/ch/cyberduck/core/irods/IRODSDeleteFeatureTest.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import ch.cyberduck.core.exception.NotfoundException;
2929
import ch.cyberduck.core.features.Delete;
3030
import ch.cyberduck.core.proxy.DisabledProxyFinder;
31-
import ch.cyberduck.core.proxy.Proxy;
3231
import ch.cyberduck.core.serializer.impl.dd.ProfilePlistReader;
3332
import ch.cyberduck.core.transfer.TransferStatus;
3433
import ch.cyberduck.test.IntegrationTest;
@@ -62,9 +61,9 @@ public void testDeleteDirectory() throws Exception {
6261
session.login(new DisabledLoginCallback(), new DisabledCancelCallback());
6362

6463
final Path folder = new Path(new IRODSHomeFinderService(session).find(), UUID.randomUUID().toString(), EnumSet.of(Path.Type.directory));
65-
new IRODSDirectoryFeature(session).mkdir(folder, new TransferStatus());
64+
new IRODSDirectoryFeature(session).mkdir(new IRODSWriteFeature(session), folder, new TransferStatus());
6665
final Path file = new Path(folder, "f", EnumSet.of(Path.Type.file));
67-
new IRODSTouchFeature(session).touch(file, new TransferStatus());
66+
new IRODSTouchFeature(session).touch(new IRODSWriteFeature(session), file, new TransferStatus());
6867
assertTrue(new IRODSFindFeature(session).find(folder));
6968
assertTrue(new IRODSFindFeature(session).find(file));
7069
new IRODSDeleteFeature(session).delete(Collections.singletonList(folder), new DisabledLoginCallback(), new Delete.DisabledCallback());

irods/src/test/java/ch/cyberduck/core/irods/IRODSDirectoryFeatureTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
import ch.cyberduck.core.features.Delete;
3030
import ch.cyberduck.core.features.Find;
3131
import ch.cyberduck.core.proxy.DisabledProxyFinder;
32-
import ch.cyberduck.core.proxy.Proxy;
3332
import ch.cyberduck.core.serializer.impl.dd.ProfilePlistReader;
3433
import ch.cyberduck.core.transfer.TransferStatus;
3534
import ch.cyberduck.test.IntegrationTest;
@@ -63,7 +62,7 @@ public void testMakeDirectory() throws Exception {
6362
session.login(new DisabledLoginCallback(), new DisabledCancelCallback());
6463

6564
final Path test = new Path(new IRODSHomeFinderService(session).find(), UUID.randomUUID().toString(), EnumSet.of(Path.Type.directory));
66-
new IRODSDirectoryFeature(session).mkdir(test, new TransferStatus());
65+
new IRODSDirectoryFeature(session).mkdir(new IRODSWriteFeature(session), test, new TransferStatus());
6766
assertTrue(session.getFeature(Find.class).find(test));
6867

6968
session.getFeature(Delete.class).delete(Collections.singletonList(test), new DisabledLoginCallback(), new Delete.DisabledCallback());

irods/src/test/java/ch/cyberduck/core/irods/IRODSFindFeatureTest.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,7 @@
2626
import ch.cyberduck.core.Profile;
2727
import ch.cyberduck.core.ProtocolFactory;
2828
import ch.cyberduck.core.features.Delete;
29-
import ch.cyberduck.core.features.Directory;
3029
import ch.cyberduck.core.proxy.DisabledProxyFinder;
31-
import ch.cyberduck.core.proxy.Proxy;
3230
import ch.cyberduck.core.serializer.impl.dd.ProfilePlistReader;
3331
import ch.cyberduck.core.transfer.TransferStatus;
3432
import ch.cyberduck.test.IntegrationTest;
@@ -62,7 +60,7 @@ public void testFind() throws Exception {
6260
session.login(new DisabledLoginCallback(), new DisabledCancelCallback());
6361

6462
final Path test = new Path(new IRODSHomeFinderService(session).find(), UUID.randomUUID().toString(), EnumSet.of(Path.Type.directory));
65-
session.getFeature(Directory.class).mkdir(test, new TransferStatus());
63+
new IRODSDirectoryFeature(session).mkdir(new IRODSWriteFeature(session), test, new TransferStatus());
6664
assertTrue(new IRODSFindFeature(session).find(test));
6765

6866
session.getFeature(Delete.class).delete(Collections.singletonList(test), new DisabledLoginCallback(), new Delete.DisabledCallback());

irods/src/test/java/ch/cyberduck/core/irods/IRODSMoveFeatureTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,11 @@ public void testMoveDirectory() throws Exception {
6464

6565
final Path source = new Path(new IRODSHomeFinderService(session).find(), new AlphanumericRandomStringService().random(), EnumSet.of(Path.Type.directory));
6666
final Path destination = new Path(new IRODSHomeFinderService(session).find(), new AlphanumericRandomStringService().random(), EnumSet.of(Path.Type.directory));
67-
new IRODSDirectoryFeature(session).mkdir(source, new TransferStatus());
67+
new IRODSDirectoryFeature(session).mkdir(new IRODSWriteFeature(session), source, new TransferStatus());
6868
final String filename = new AlphanumericRandomStringService().random();
69-
new IRODSTouchFeature(session).touch(new Path(source, filename, EnumSet.of(Path.Type.file)), new TransferStatus());
69+
new IRODSTouchFeature(session).touch(new IRODSWriteFeature(session), new Path(source, filename, EnumSet.of(Path.Type.file)), new TransferStatus());
7070
assertTrue(session.getFeature(Find.class).find(new Path(source, filename, EnumSet.of(Path.Type.file))));
71-
new IRODSDirectoryFeature(session).mkdir(destination, new TransferStatus());
71+
new IRODSDirectoryFeature(session).mkdir(new IRODSWriteFeature(session), destination, new TransferStatus());
7272
new IRODSMoveFeature(session).move(source, destination, new TransferStatus().setExists(true), new Delete.DisabledCallback(), new DisabledConnectionCallback());
7373
assertFalse(session.getFeature(Find.class).find(source));
7474
assertFalse(session.getFeature(Find.class).find(new Path(source, filename, EnumSet.of(Path.Type.file))));
@@ -94,8 +94,8 @@ public void testMoveFile() throws Exception {
9494

9595
final Path source = new Path(new IRODSHomeFinderService(session).find(), new AlphanumericRandomStringService().random(), EnumSet.of(Path.Type.file));
9696
final Path destination = new Path(new IRODSHomeFinderService(session).find(), new AlphanumericRandomStringService().random(), EnumSet.of(Path.Type.file));
97-
new IRODSTouchFeature(session).touch(source, new TransferStatus());
98-
new IRODSTouchFeature(session).touch(destination, new TransferStatus());
97+
new IRODSTouchFeature(session).touch(new IRODSWriteFeature(session), source, new TransferStatus());
98+
new IRODSTouchFeature(session).touch(new IRODSWriteFeature(session), destination, new TransferStatus());
9999
new IRODSMoveFeature(session).move(source, destination, new TransferStatus().setExists(true), new Delete.DisabledCallback(), new DisabledConnectionCallback());
100100
assertFalse(session.getFeature(Find.class).find(source));
101101
assertTrue(session.getFeature(Find.class).find(destination));

irods/src/test/java/ch/cyberduck/core/irods/IRODSReadFeatureTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ public void testReadRange() throws Exception {
128128
session.open(new DisabledProxyFinder(), new DisabledHostKeyCallback(), new DisabledLoginCallback(), new DisabledCancelCallback());
129129
session.login(new DisabledLoginCallback(), new DisabledCancelCallback());
130130
final Path test = new Path(new IRODSHomeFinderService(session).find(), UUID.randomUUID().toString(), EnumSet.of(Path.Type.file));
131-
new IRODSTouchFeature(session).touch(test, new TransferStatus());
131+
new IRODSTouchFeature(session).touch(new IRODSWriteFeature(session), test, new TransferStatus());
132132

133133
final Local local = new Local(System.getProperty("java.io.tmpdir"), UUID.randomUUID().toString());
134134
final byte[] content = RandomUtils.nextBytes(2048);

irods/src/test/java/ch/cyberduck/core/irods/IRODSTouchFeatureTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
import ch.cyberduck.core.ProtocolFactory;
2828
import ch.cyberduck.core.features.Delete;
2929
import ch.cyberduck.core.proxy.DisabledProxyFinder;
30-
import ch.cyberduck.core.proxy.Proxy;
3130
import ch.cyberduck.core.serializer.impl.dd.ProfilePlistReader;
3231
import ch.cyberduck.core.transfer.TransferStatus;
3332
import ch.cyberduck.test.IntegrationTest;
@@ -60,7 +59,7 @@ public void testTouch() throws Exception {
6059
session.open(new DisabledProxyFinder(), new DisabledHostKeyCallback(), new DisabledLoginCallback(), new DisabledCancelCallback());
6160
session.login(new DisabledLoginCallback(), new DisabledCancelCallback());
6261
final Path test = new Path(new IRODSHomeFinderService(session).find(), UUID.randomUUID().toString(), EnumSet.of(Path.Type.file));
63-
new IRODSTouchFeature(session).touch(test, new TransferStatus());
62+
new IRODSTouchFeature(session).touch(new IRODSWriteFeature(session), test, new TransferStatus());
6463
assertTrue(new IRODSFindFeature(session).find(test));
6564
new IRODSDeleteFeature(session).delete(Collections.<Path>singletonList(test), new DisabledLoginCallback(), new Delete.DisabledCallback());
6665
assertFalse(new IRODSFindFeature(session).find(test));

0 commit comments

Comments
 (0)