package db;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;

/**
 * Liest die Schulungstypen aus der SQLite-Datenbank.
 * Öffnet eine Verbindung, führt SELECT aus, schließt sofort wieder.
 */
public class TrainingTypeDAO {

    private final String dbPath;

    public TrainingTypeDAO(String dbPath) {
        this.dbPath = dbPath;
    }

    /**
     * Ruft alle Schulungstypen aus der Tabelle 'training_types' ab.
     * @return Liste der Typnamen (alphabetisch sortiert)
     */
    public List<String> getAllTrainingTypes() {
        List<String> types = new ArrayList<>();
        String sql = "SELECT name FROM training_types ORDER BY id";

        try (Connection conn = DriverManager.getConnection("jdbc:sqlite:" + dbPath);
             PreparedStatement stmt = conn.prepareStatement(sql);
             ResultSet rs = stmt.executeQuery()) {

            while (rs.next()) {
                types.add(rs.getString("name"));
            }

        } catch (SQLException e) {
            System.err.println("Fehler beim Laden der Schulungstypen: " + e.getMessage());
        }

        return types;
    }
}
