From 7079f1247547a69fd4901aaf9e8daa5f0cde033c Mon Sep 17 00:00:00 2001 From: Sebastian Frick Date: Thu, 19 Feb 2026 21:24:43 +0100 Subject: [PATCH] =?UTF-8?q?feat:=20Stub-Repositories=20f=C3=BCr=20no-db=20?= =?UTF-8?q?Profil=20(Recipe,=20StorageLocation)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../stub/StubRecipeRepository.java | 45 +++++++++++++++ .../stub/StubStorageLocationRepository.java | 57 +++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 backend/src/main/java/de/effigenix/infrastructure/stub/StubRecipeRepository.java create mode 100644 backend/src/main/java/de/effigenix/infrastructure/stub/StubStorageLocationRepository.java diff --git a/backend/src/main/java/de/effigenix/infrastructure/stub/StubRecipeRepository.java b/backend/src/main/java/de/effigenix/infrastructure/stub/StubRecipeRepository.java new file mode 100644 index 0000000..ee23508 --- /dev/null +++ b/backend/src/main/java/de/effigenix/infrastructure/stub/StubRecipeRepository.java @@ -0,0 +1,45 @@ +package de.effigenix.infrastructure.stub; + +import de.effigenix.domain.production.Recipe; +import de.effigenix.domain.production.RecipeId; +import de.effigenix.domain.production.RecipeRepository; +import de.effigenix.shared.common.RepositoryError; +import de.effigenix.shared.common.Result; +import org.springframework.context.annotation.Profile; +import org.springframework.stereotype.Repository; + +import java.util.List; +import java.util.Optional; + +@Repository +@Profile("no-db") +public class StubRecipeRepository implements RecipeRepository { + + private static final RepositoryError.DatabaseError STUB_ERROR = + new RepositoryError.DatabaseError("Stub-Modus: keine Datenbankverbindung"); + + @Override + public Result> findById(RecipeId id) { + return Result.failure(STUB_ERROR); + } + + @Override + public Result> findAll() { + return Result.failure(STUB_ERROR); + } + + @Override + public Result save(Recipe recipe) { + return Result.failure(STUB_ERROR); + } + + @Override + public Result delete(Recipe recipe) { + return Result.failure(STUB_ERROR); + } + + @Override + public Result existsByNameAndVersion(String name, int version) { + return Result.failure(STUB_ERROR); + } +} diff --git a/backend/src/main/java/de/effigenix/infrastructure/stub/StubStorageLocationRepository.java b/backend/src/main/java/de/effigenix/infrastructure/stub/StubStorageLocationRepository.java new file mode 100644 index 0000000..4f6c508 --- /dev/null +++ b/backend/src/main/java/de/effigenix/infrastructure/stub/StubStorageLocationRepository.java @@ -0,0 +1,57 @@ +package de.effigenix.infrastructure.stub; + +import de.effigenix.domain.inventory.StorageLocation; +import de.effigenix.domain.inventory.StorageLocationId; +import de.effigenix.domain.inventory.StorageLocationName; +import de.effigenix.domain.inventory.StorageLocationRepository; +import de.effigenix.domain.inventory.StorageType; +import de.effigenix.shared.common.RepositoryError; +import de.effigenix.shared.common.Result; +import org.springframework.context.annotation.Profile; +import org.springframework.stereotype.Repository; + +import java.util.List; +import java.util.Optional; + +@Repository +@Profile("no-db") +public class StubStorageLocationRepository implements StorageLocationRepository { + + private static final RepositoryError.DatabaseError STUB_ERROR = + new RepositoryError.DatabaseError("Stub-Modus: keine Datenbankverbindung"); + + @Override + public Result> findById(StorageLocationId id) { + return Result.failure(STUB_ERROR); + } + + @Override + public Result> findAll() { + return Result.failure(STUB_ERROR); + } + + @Override + public Result> findByStorageType(StorageType storageType) { + return Result.failure(STUB_ERROR); + } + + @Override + public Result> findActive() { + return Result.failure(STUB_ERROR); + } + + @Override + public Result existsByName(StorageLocationName name) { + return Result.failure(STUB_ERROR); + } + + @Override + public Result existsByNameAndIdNot(StorageLocationName name, StorageLocationId id) { + return Result.failure(STUB_ERROR); + } + + @Override + public Result save(StorageLocation location) { + return Result.failure(STUB_ERROR); + } +}