diff --git a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/data_transfer/Synchronization.java b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/data_transfer/Synchronization.java
index f227e35010161ed882b35ee01a3d868c4d429583..bc4c971ac05fccd2c14a2b4a37b6a3c6e4d169fd 100644
--- a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/data_transfer/Synchronization.java
+++ b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/data_transfer/Synchronization.java
@@ -5,7 +5,6 @@ import java.nio.file.DirectoryStream;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.util.Arrays;
-import java.util.Map;
 import java.util.Queue;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.LinkedBlockingQueue;
@@ -23,10 +22,6 @@ public class Synchronization {
 	
 	private Supplier<HaaSFileTransfer> fileTransferSupplier;
 	
-	private Supplier<Iterable<String>> changedFilesSupplier;
-	
-	private Map<String,String> propertiesHolder;
-	
 	private Path workingDirectory;
 	
 	private Queue<Path> toUpload = new LinkedBlockingQueue<>();
@@ -78,7 +73,7 @@ public class Synchronization {
 	}
 
 	private UploadingFile createUploadingFile(Path p) {
-		// TODO Auto-generated method stub
+		
 		return null;
 	}
 }
diff --git a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/data_transfer/UploadingFileImpl.java b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/data_transfer/UploadingFileImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..0cd502892c413af060844af2e7a52918073658db
--- /dev/null
+++ b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/data_transfer/UploadingFileImpl.java
@@ -0,0 +1,39 @@
+package cz.it4i.fiji.haas.data_transfer;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.nio.file.Files;
+import java.nio.file.Path;
+
+import cz.it4i.fiji.haas_java_client.HaaSClient.UploadingFile;
+
+public class UploadingFileImpl implements UploadingFile{
+
+	private final Path path;
+	
+	public UploadingFileImpl(Path path) {
+		this.path = path;
+	}
+
+	@Override
+	public InputStream getInputStream() throws IOException {
+		return Files.newInputStream(path);
+	}
+
+	@Override
+	public String getName() {
+		return path.getFileName().toString();
+	}
+
+	@Override
+	public long getLength() throws IOException {
+		return Files.size(path);
+	}
+
+	@Override
+	public long getLastTime() {
+		// TODO Auto-generated method stub
+		return 0;
+	}
+
+}
diff --git a/haas-java-client/src/main/java/cz/it4i/fiji/haas_java_client/HaaSClient.java b/haas-java-client/src/main/java/cz/it4i/fiji/haas_java_client/HaaSClient.java
index c2aa23c2afad67cbec975cf18d453a7c4bdff3f0..098b34b7aebb132c6d74b759fceb86ad1a880f7a 100644
--- a/haas-java-client/src/main/java/cz/it4i/fiji/haas_java_client/HaaSClient.java
+++ b/haas-java-client/src/main/java/cz/it4i/fiji/haas_java_client/HaaSClient.java
@@ -103,11 +103,11 @@ public class HaaSClient {
 	}
 
 	public interface UploadingFile {
-		InputStream getInputStream();
+		InputStream getInputStream() throws IOException;
 
 		String getName();
 
-		long getLength();
+		long getLength() throws IOException;
 
 		long getLastTime();
 	}
diff --git a/haas-java-client/src/main/java/cz/it4i/fiji/haas_java_client/HaaSFileTransferImp.java b/haas-java-client/src/main/java/cz/it4i/fiji/haas_java_client/HaaSFileTransferImp.java
index 5cbaf90c68a5b762795ae6b58365bcfdf7948ab1..d103a5c60ab1cf37f669ba1df03f8c4cf41f54e2 100644
--- a/haas-java-client/src/main/java/cz/it4i/fiji/haas_java_client/HaaSFileTransferImp.java
+++ b/haas-java-client/src/main/java/cz/it4i/fiji/haas_java_client/HaaSFileTransferImp.java
@@ -41,8 +41,13 @@ class HaaSFileTransferImp implements HaaSFileTransfer {
 
 	@Override
 	public void upload(Iterable<UploadingFile> files) {
-		List<Long> totalSizes = StreamSupport.stream(files.spliterator(), false).map(f -> f.getLength())
-				.collect(Collectors.toList());
+		List<Long> totalSizes = StreamSupport.stream(files.spliterator(), false).map(f -> {
+			try {
+				return f.getLength();
+			} catch (IOException e1) {
+				throw new RuntimeException(e1);
+			}
+		}).collect(Collectors.toList());
 		long totalSize = totalSizes.stream().mapToLong(l -> l.longValue()).sum();
 		TransferFileProgressForHaaSClient progress = new TransferFileProgressForHaaSClient(totalSize, notifier);
 		int index = 0;