diff --git a/goofy-client/libs/binary-file/src/lib/binary-file-container/binary-file-container.component.spec.ts b/goofy-client/libs/binary-file/src/lib/binary-file-container/binary-file-container.component.spec.ts
index a3740fd67c0d2737bbd846bfe38574b51184d7fb..3fbfbf83bf7d58d9f7ccb4df6993b39ae99db838 100644
--- a/goofy-client/libs/binary-file/src/lib/binary-file-container/binary-file-container.component.spec.ts
+++ b/goofy-client/libs/binary-file/src/lib/binary-file-container/binary-file-container.component.spec.ts
@@ -3,7 +3,7 @@ import { BinaryFileService, OzgFileResource } from '@goofy-client/binary-file-sh
 import { OzgFileContainerComponent } from '@goofy-client/ozg-file';
 import { createEmptyStateResource, createStateResource, HasLinkPipe, StateResource } from '@goofy-client/tech-shared';
 import { mock } from '@goofy-client/test-utils';
-import { createOzgFileResource } from 'libs/ozg-file-shared/test/ozg-file';
+import { createOzgFileResource } from 'libs/binary-file-shared/test/binary-file';
 import { FileUploadEditorComponent } from 'libs/ui/src/lib/ui/editor/file-upload-editor/file-upload-editor.component';
 import { MockComponent } from 'ng-mocks';
 import { of } from 'rxjs';
diff --git a/goofy-client/libs/ozg-file/src/lib/anhang-list-container/anhaenge/anhaenge.component.spec.ts b/goofy-client/libs/ozg-file/src/lib/anhang-list-container/anhaenge/anhaenge.component.spec.ts
index bb4a46170e3fd25d8716447bea82d291050a1117..2a26a87a5ac4f66ec26ad648c35375519d9a0424 100644
--- a/goofy-client/libs/ozg-file/src/lib/anhang-list-container/anhaenge/anhaenge.component.spec.ts
+++ b/goofy-client/libs/ozg-file/src/lib/anhang-list-container/anhaenge/anhaenge.component.spec.ts
@@ -1,5 +1,5 @@
 import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { createOzgFileResources } from 'libs/ozg-file-shared/test/ozg-file';
+import { createOzgFileResources } from 'libs/binary-file-shared/test/binary-file';
 import { MockComponent } from 'ng-mocks';
 import { OzgFileContainerComponent } from '../../ozg-file-container/ozg-file-container.component';
 import { AnhaengeComponent } from './anhaenge.component';
diff --git a/goofy-client/libs/ozg-file/src/lib/anhang-list-container/anhang-list-container.component.spec.ts b/goofy-client/libs/ozg-file/src/lib/anhang-list-container/anhang-list-container.component.spec.ts
index e4dfee86c6dd6b2ceea12d9c312840f08e0d6eab..79e5ef7f2cc821d66397be9b90b8b923d19a407c 100644
--- a/goofy-client/libs/ozg-file/src/lib/anhang-list-container/anhang-list-container.component.spec.ts
+++ b/goofy-client/libs/ozg-file/src/lib/anhang-list-container/anhang-list-container.component.spec.ts
@@ -4,7 +4,7 @@ import { createEmptyStateResource, createStateResource, HasLinkPipe, StateResour
 import { mock } from '@goofy-client/test-utils';
 import { ExpansionPanelComponent, SpinnerComponent } from '@goofy-client/ui';
 import { VorgangService } from '@goofy-client/vorgang-shared';
-import { createOzgFileListResource } from 'libs/ozg-file-shared/test/ozg-file';
+import { createOzgFileListResource } from 'libs/binary-file-shared/test/binary-file';
 import { MockComponent } from 'ng-mocks';
 import { AnhaengeComponent } from './anhaenge/anhaenge.component';
 import { AnhangListContainerComponent } from './anhang-list-container.component';
diff --git a/goofy-client/libs/ozg-file/src/lib/ozg-file-container/ozg-file-container.component.spec.ts b/goofy-client/libs/ozg-file/src/lib/ozg-file-container/ozg-file-container.component.spec.ts
index 62fa608ad0a1db8972cda886b33d0b746b32b076..ec18bc4dd4faacf60b545e49f78948a87a4a4646 100644
--- a/goofy-client/libs/ozg-file/src/lib/ozg-file-container/ozg-file-container.component.spec.ts
+++ b/goofy-client/libs/ozg-file/src/lib/ozg-file-container/ozg-file-container.component.spec.ts
@@ -3,7 +3,7 @@ import { ApiRootService } from '@goofy-client/api-root-shared';
 import { BinaryFileService, OzgFileLinkRel, OzgFileResource } from '@goofy-client/binary-file-shared';
 import { ConvertForDataTestPipe } from '@goofy-client/tech-shared';
 import { mock } from '@goofy-client/test-utils';
-import { createOzgFileResource } from 'libs/ozg-file-shared/test/ozg-file';
+import { createOzgFileResource } from 'libs/binary-file-shared/test/binary-file';
 import { MockComponent } from 'ng-mocks';
 import { of } from 'rxjs';
 import { OzgFileContainerComponent } from './ozg-file-container.component';
diff --git a/goofy-client/libs/ozg-file/src/lib/ozg-file-container/ozg-file/ozg-file.component.spec.ts b/goofy-client/libs/ozg-file/src/lib/ozg-file-container/ozg-file/ozg-file.component.spec.ts
index 1d71f9efda41cb380b087b81470618ceefe17595..9f02c400bb91e0df6662d49893f6822c3e51a774 100644
--- a/goofy-client/libs/ozg-file/src/lib/ozg-file-container/ozg-file/ozg-file.component.spec.ts
+++ b/goofy-client/libs/ozg-file/src/lib/ozg-file-container/ozg-file/ozg-file.component.spec.ts
@@ -6,7 +6,7 @@ import { ApiDownloadToken } from '@goofy-client/api-root-shared';
 import { OzgFileLinkRel, OzgFileResource } from '@goofy-client/binary-file-shared';
 import { createEmptyStateResource, FileSizePipe, HasLinkPipe, ToResourceUriPipe } from '@goofy-client/tech-shared';
 import { IconButtonWithSpinnerComponent, SpinnerComponent } from '@goofy-client/ui';
-import { createOzgFileResource } from 'libs/ozg-file-shared/test/ozg-file';
+import { createOzgFileResource } from 'libs/binary-file-shared/test/binary-file';
 import { MockComponent, MockDirective } from 'ng-mocks';
 import { OzgFileComponent } from './ozg-file.component';
 
diff --git a/goofy-client/libs/postfach-shared/src/lib/postfach.service.spec.ts b/goofy-client/libs/postfach-shared/src/lib/postfach.service.spec.ts
index 211b9d99a67eaff97c609654adef7624548ae65d..632cfe1173d09a2d95460d94ce4db010358f1230 100644
--- a/goofy-client/libs/postfach-shared/src/lib/postfach.service.spec.ts
+++ b/goofy-client/libs/postfach-shared/src/lib/postfach.service.spec.ts
@@ -6,9 +6,9 @@ import { Mock, mock, useFromMock } from '@goofy-client/test-utils';
 import { SnackBarService } from '@goofy-client/ui';
 import { VorgangService } from '@goofy-client/vorgang-shared';
 import { cold, hot } from 'jest-marbles';
+import { createOzgFileListResource, createOzgFileResources } from 'libs/binary-file-shared/test/binary-file';
 import { CommandLinkRel } from 'libs/command-shared/src/lib/command.linkrel';
 import { createCommandResource } from 'libs/command-shared/test/command';
-import { createOzgFileListResource, createOzgFileResources } from 'libs/ozg-file-shared/test/ozg-file';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
 import { of } from 'rxjs';
 import { PostfachMailLinkRel } from '..';
diff --git a/goofy-client/libs/postfach/src/lib/postfach-mail-list-container/postfach-mail-list/postfach-mail/postfach-nachricht-attachments/postfach-nachricht-attachments.component.spec.ts b/goofy-client/libs/postfach/src/lib/postfach-mail-list-container/postfach-mail-list/postfach-mail/postfach-nachricht-attachments/postfach-nachricht-attachments.component.spec.ts
index c76bc46964c7c8a3ab43e3ee94c7f2f4c33ee60f..d4501d91aed956d17e67fb21f26232459d59a6a7 100644
--- a/goofy-client/libs/postfach/src/lib/postfach-mail-list-container/postfach-mail-list/postfach-mail/postfach-nachricht-attachments/postfach-nachricht-attachments.component.spec.ts
+++ b/goofy-client/libs/postfach/src/lib/postfach-mail-list-container/postfach-mail-list/postfach-mail/postfach-nachricht-attachments/postfach-nachricht-attachments.component.spec.ts
@@ -1,13 +1,13 @@
 import { registerLocaleData } from '@angular/common';
 import localeDe from '@angular/common/locales/de';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
+import { OzgFileListResource } from '@goofy-client/binary-file-shared';
 import { OzgFileContainerComponent } from '@goofy-client/ozg-file';
-import { OzgFileListResource } from '@goofy-client/ozg-file-shared';
 import { PostfachMailResource, PostfachService } from '@goofy-client/postfach-shared';
 import { ConvertForDataTestPipe, createStateResource } from '@goofy-client/tech-shared';
 import { Mock, mock } from '@goofy-client/test-utils';
 import { SpinnerComponent } from '@goofy-client/ui';
-import { createOzgFileListResource } from 'libs/ozg-file-shared/test/ozg-file';
+import { createOzgFileListResource } from 'libs/binary-file-shared/test/binary-file';
 import { createPostfachMailResource } from 'libs/postfach-shared/test/postfach';
 import { MockComponent } from 'ng-mocks';
 import { of } from 'rxjs';
diff --git a/goofy-client/libs/vorgang-shared/src/lib/vorgang.service.spec.ts b/goofy-client/libs/vorgang-shared/src/lib/vorgang.service.spec.ts
index 66de14f3617265bcc7c17dbc03ef973c17b0c05f..6ecf1133f8615e65e61be52c4a973994f4bc2d25 100644
--- a/goofy-client/libs/vorgang-shared/src/lib/vorgang.service.spec.ts
+++ b/goofy-client/libs/vorgang-shared/src/lib/vorgang.service.spec.ts
@@ -4,9 +4,9 @@ import { createEmptyStateResource, createStateResource, NavigationService, State
 import { Mock, mock, useFromMock } from '@goofy-client/test-utils';
 import { getUrl, ResourceUri } from '@ngxp/rest';
 import { cold, hot } from 'jest-marbles';
+import { createOzgFileListResource } from 'libs/binary-file-shared/test/binary-file';
 import { CommandLinkRel } from 'libs/command-shared/src/lib/command.linkrel';
 import { createCommandListResource, createCommandResource } from 'libs/command-shared/test/command';
-import { createOzgFileListResource } from 'libs/ozg-file-shared/test/ozg-file';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
 import { of } from 'rxjs';
 import { VorgangWithEingangLinkRel } from './vorgang.linkrel';
diff --git a/goofy-client/libs/wiedervorlage-shared/src/lib/state.service.ts b/goofy-client/libs/wiedervorlage-shared/src/lib/state.service.ts
new file mode 100644
index 0000000000000000000000000000000000000000..cdb5d6555971a40a961c7f560880fc44281542d0
--- /dev/null
+++ b/goofy-client/libs/wiedervorlage-shared/src/lib/state.service.ts
@@ -0,0 +1,35 @@
+import { OzgFileListResource } from '@goofy-client/ozg-file-shared';
+import { createEmptyStateResource, doIfLoadingRequired, ListResource, StateResource } from '@goofy-client/tech-shared';
+import { getUrl, Resource, ResourceUri } from '@ngxp/rest';
+import { isNil } from 'lodash-es';
+import { BehaviorSubject, Observable } from 'rxjs';
+import { WiedervorlageResource } from './wiedervorlage.model';
+
+//Eine Util klasse zum Laden und Aktualiseren von "maps" -> {uri: behaviourSubject}
+export function getResourceList(wiedervorlage: WiedervorlageResource, loadingFunction): Observable<StateResource<OzgFileListResource>> {
+	const uri: ResourceUri = getUrl(wiedervorlage);
+
+	if (isNil(this.attachmentListByWiedervorlage[uri])) {
+		this.attachmentListByWiedervorlage[uri] = new BehaviorSubject(createEmptyStateResource());
+	} else {
+		this.attachmentListByWiedervorlage[uri].next(createEmptyStateResource());
+	}
+
+	doIfLoadingRequired(this.attachmentListByWiedervorlage[uri].value, () => loadResourceList(wiedervorlage, loadingFunction));
+
+	return this.attachmentListByWiedervorlage[uri].asObservable();
+}
+
+function loadResourceList(wiedervorlage: Resource, loadingFunction): void {
+	setAttachmentLoading(wiedervorlage);
+	if (!isNil(this.attachmentSubscription)) this.attachmentSubscription.unsubscribe();
+	this.attachmentSubscription = loadingFunction().subscribe((fileList: StateResource<ListResource>) => {
+		if (fileList.loaded) {
+			this.attachmentListByWiedervorlage[getUrl(wiedervorlage)].next(fileList);
+		}
+	});
+}
+
+function setAttachmentLoading(wiedervorlage: Resource): void {
+	this.attachmentListByWiedervorlage[getUrl(wiedervorlage)].next({ ...this.attachmentListByWiedervorlage[getUrl(wiedervorlage)].value, loading: true });
+}
\ No newline at end of file
diff --git a/goofy-client/libs/wiedervorlage-shared/src/lib/wiedervorlage.service.spec.ts b/goofy-client/libs/wiedervorlage-shared/src/lib/wiedervorlage.service.spec.ts
index 97decccecc73d6b922169ccc7272217c99d65b87..991198bf5f4a4ebe440f33be67b872dd449140c6 100644
--- a/goofy-client/libs/wiedervorlage-shared/src/lib/wiedervorlage.service.spec.ts
+++ b/goofy-client/libs/wiedervorlage-shared/src/lib/wiedervorlage.service.spec.ts
@@ -6,9 +6,9 @@ import { SnackBarService } from '@goofy-client/ui';
 import { VorgangHeaderLinkRel, VorgangService, VorgangWithEingangResource } from '@goofy-client/vorgang-shared';
 import { getUrl } from '@ngxp/rest';
 import { cold, hot } from 'jest-marbles';
+import { createOzgFileListResource } from 'libs/binary-file-shared/test/binary-file';
 import { CommandLinkRel } from 'libs/command-shared/src/lib/command.linkrel';
 import { createCommandResource } from 'libs/command-shared/test/command';
-import { createOzgFileListResource } from 'libs/ozg-file-shared/test/ozg-file';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
 import { createWiedervorlage, createWiedervorlageListResource, createWiedervorlageResource } from 'libs/wiedervorlage-shared/test/wiedervorlage';
 import { of } from 'rxjs';
diff --git a/goofy-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-form/wiedervorlage-form.component.spec.ts b/goofy-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-form/wiedervorlage-form.component.spec.ts
index 27b77f32cbc277918bb9e1a410b530efa667c147..a6f057043e1321e862ab15e7a940bd33c7616937 100644
--- a/goofy-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-form/wiedervorlage-form.component.spec.ts
+++ b/goofy-client/libs/wiedervorlage/src/lib/wiedervorlage-page-container/wiedervorlage-page/wiedervorlage-form/wiedervorlage-form.component.spec.ts
@@ -6,7 +6,7 @@ import { OzgFileListResource } from '@goofy-client/binary-file-shared';
 import { Mock, mock, useFromMock } from '@goofy-client/test-utils';
 import { DateEditorComponent, TextAreaEditorComponent, TextEditorComponent } from '@goofy-client/ui';
 import { WiedervorlageLinkRel, WiedervorlageResource, WiedervorlageService } from '@goofy-client/wiedervorlage-shared';
-import { createOzgFileListResource } from 'libs/ozg-file-shared/test/ozg-file';
+import { createOzgFileListResource } from 'libs/binary-file-shared/test/binary-file';
 import { createWiedervorlageResource } from 'libs/wiedervorlage-shared/test/wiedervorlage';
 import { MockComponent } from 'ng-mocks';
 import { of } from 'rxjs';