diff --git a/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/EingangStubReceiverStreamObserver.java b/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/EingangStubReceiverStreamObserver.java
index fd810664ebf489d0c6376f4384ccc595ba56cea1..ec9080a75ba390bad07cbbd7ec9befbc6c635b0b 100644
--- a/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/EingangStubReceiverStreamObserver.java
+++ b/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/EingangStubReceiverStreamObserver.java
@@ -33,7 +33,6 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
-import java.util.Optional;
 import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.TimeUnit;
@@ -170,13 +169,22 @@ class EingangStubReceiverStreamObserver implements StreamObserver<GrpcRouteForwa
 	void handleEndOfFile() {
 		closeOutputPipe();
 		var completedIncomingFile = currentFile.toBuilder().file(getSavedFileContent()).build();
-		Optional.ofNullable(groupName)
-				.map(group -> attachments.computeIfAbsent(group, s -> new ArrayList<>()))
-				.orElse(representations)
-				.add(completedIncomingFile);
+		if (Objects.isNull(groupName)) {
+			addAsRepresentation(completedIncomingFile);
+		} else {
+			addAsAttachment(completedIncomingFile);
+		}
 		resetFileReceiving();
 	}
 
+	private void addAsRepresentation(IncomingFile completedIncomingFile) {
+		representations.add(completedIncomingFile);
+	}
+
+	private void addAsAttachment(IncomingFile completedIncomingFile) {
+		attachments.computeIfAbsent(groupName, s -> new ArrayList<>()).add(completedIncomingFile);
+	}
+
 	File getSavedFileContent() {
 		try {
 			return receivingFileContent.get(TIMEOUT_MINUTES, TimeUnit.MINUTES);