Class SpeechDAO

java.lang.Object
backend.speech.SpeechDAO

public class SpeechDAO extends Object
Data Access Object (DAO) für Speech Dokumente
  • Constructor Details

    • SpeechDAO

      public SpeechDAO(com.mongodb.client.MongoCollection<org.bson.Document> speechCollection)
      Konstruktor
      Parameters:
      speechCollection - MongoDB Collection für Speech Dokumente
    • SpeechDAO

      public SpeechDAO()
      Default constructor that uses the pooled connection.
  • Method Details

    • findBySpeakerId

      public List<Speech_impl> findBySpeakerId(String speakerId)
      Parameters:
      speakerId - ID des Speakers
      Returns:
      Liste Reden
    • countBySpeakerId

      public long countBySpeakerId(String speakerId)
      Parameters:
      speakerId - ID des Speakers
      Returns:
      Anzahl Reden
    • findById

      public Speech_impl findById(String speechId)
      Findet eine Rede anhand der ID - ohne Video-Daten
      Parameters:
      speechId - ID der Rede
      Returns:
      Speech_impl oder null, wenn nichts gefunden wurde
    • findAll

      public List<Speech_impl> findAll()
      Returns:
      Liste der Reden
    • findAllPaginated

      public List<Speech_impl> findAllPaginated(int page, int pageSize, Set<String> ids, String faction, String speakerSearch)
      Parameters:
      page - Seitennummer (beginnend bei 1)
      pageSize - Anzahl der Einträge pro Seite
      ids - Optional: Filter nach Reden-IDs (für Topic-Filter)
      faction - Optional: Filter nach einer Fraktion
      Returns:
      Liste aller Reden für die angegebene Seite
    • count

      public long count(Set<String> ids, String faction)
      Parameters:
      ids - Optional: Filter nach Reden-IDs (für Topic-Filter)
      faction - Optional: Filter nach einer Fraktion
      Returns:
      Anzahl der Reden
    • delete

      public boolean delete(String speechId)
    • update

      public boolean update(String speechId, Speech_impl updatedSpeech)