Rename ...Dao -> ...Repository

This commit is contained in:
P0nk
2024-09-14 12:06:09 +02:00
parent abbec8120e
commit 08eeeb54dc
17 changed files with 103 additions and 103 deletions

View File

@@ -0,0 +1,59 @@
package database.maker;
import database.DatabaseException;
import database.PgDatabaseConnection;
import org.jdbi.v3.core.Handle;
import org.jdbi.v3.core.JdbiException;
import java.util.List;
import java.util.Optional;
public class MakerRepository {
private final PgDatabaseConnection connection;
public MakerRepository(PgDatabaseConnection connection) {
this.connection = connection;
}
public Optional<MakerReagent> getReagent(int itemId) {
try (Handle handle = connection.getHandle()) {
return handle.createQuery("""
SELECT *
FROM maker_reagent
WHERE item_id = ?;""")
.bind(0, itemId)
.mapTo(MakerReagent.class)
.findOne();
} catch (JdbiException e) {
throw new DatabaseException("Failed to get maker reagent with item id: %d".formatted(itemId), e);
}
}
public Optional<MakerRecipe> getRecipe(int itemId) {
try (Handle handle = connection.getHandle()) {
return handle.createQuery("""
SELECT *
FROM maker_recipe
WHERE item_id = ?;""")
.bind(0, itemId)
.mapTo(MakerRecipe.class)
.findOne();
} catch (JdbiException e) {
throw new DatabaseException("Failed to get maker recipe with item id: %d".formatted(itemId), e);
}
}
public List<MakerIngredient> getIngredients(int recipeItemId) {
try (Handle handle = connection.getHandle()) {
return handle.createQuery("""
SELECT *
FROM maker_ingredient
WHERE maker_recipe = ?;""")
.bind(0, recipeItemId)
.mapTo(MakerIngredient.class)
.list();
} catch (JdbiException e) {
throw new DatabaseException("Failed to get maker ingredients for recipe item id %d".formatted(recipeItemId), e);
}
}
}