Class AnsweredQuestionDAO

java.lang.Object
com.ubs.backend.classes.database.dao.DAO<AnsweredQuestion>
com.ubs.backend.classes.database.dao.questions.AnsweredQuestionDAO

public class AnsweredQuestionDAO extends DAO<AnsweredQuestion>
DAO for com.ubs.backend.classes.database.question.AnsweredQuestion
Since:
17.07.2021
Author:
Sarah, Tim Irmler
  • Constructor Details

    • AnsweredQuestionDAO

      public AnsweredQuestionDAO()
  • Method Details

    • selectByQuestion

      public AnsweredQuestion selectByQuestion(String question, javax.persistence.EntityManager em)
    • selectByQuestion

      public AnsweredQuestion selectByQuestion(String question)
      Selects an AnsweredQuestion from the Database which answered the specified Question
      Parameters:
      question - the Question, which the AnsweredQuestion should answer
      Returns:
      the AnsweredQuestion from the Database
    • selectResultByQuestionAndMatchAndAnswer

      public AnsweredQuestionResult selectResultByQuestionAndMatchAndAnswer(long matchID, long answerID, String question, javax.persistence.EntityManager em)
      Selects a Result from the Database from a Match, Answer and a Question
      Parameters:
      matchID - the ID of the Match which will be used to search
      answerID - the ID of the Answer which will be used to search
      question - the Question, which the Result is for
      em - the EntityManager which will be used
      Returns:
      AnsweredQuestionResult which has the specified attributes
      Since:
      21.08.2021
    • selectWithoutResults

      public List<AnsweredQuestion> selectWithoutResults(javax.persistence.EntityManager em)
      returns a list containing all answered questions without a result. which means, that the question can no longer be answered
      Parameters:
      em - the entity manager
      Returns:
      a list containing answered questions without result
    • selectResultByResult

      public List<AnsweredQuestionResult> selectResultByResult(ResultParent resultParent, javax.persistence.EntityManager em)
      Parameters:
      resultParent -
      em -
      Returns:
      Since:
      01.08.2021
    • selectResultByResult

      public List<AnsweredQuestionResult> selectResultByResult(long resultID, javax.persistence.EntityManager em)
    • selectByResultAndQuestion

      public List<AnsweredQuestionResult> selectByResultAndQuestion(ResultParent resultParent, String question, javax.persistence.EntityManager em)
      Parameters:
      resultParent -
      question -
      em -
      Returns:
      Since:
      01.08.2021
    • selectResultByAnsweredQuestionId

      public List<AnsweredQuestionResult> selectResultByAnsweredQuestionId(long id)
    • selectResultByAnsweredQuestionId

      public List<AnsweredQuestionResult> selectResultByAnsweredQuestionId(long id, javax.persistence.EntityManager em)
    • selectResultByResultAndAnsweredQuestionId

      public AnsweredQuestionResult selectResultByResultAndAnsweredQuestionId(long resultID, long questionID, javax.persistence.EntityManager em)
      Parameters:
      resultID -
      questionID -
      em -
      Returns:
      Since:
      04.08.2021
    • selectResultByTagAndType

      public List<AnsweredQuestionResult> selectResultByTagAndType(long tagId, AnswerType type, javax.persistence.EntityManager em)
      Parameters:
      tagId -
      type -
      em -
      Returns:
      Since:
      29.07.2021
    • remove

      public void remove(long id, javax.persistence.EntityManager em)
      Overrides:
      remove in class DAO<AnsweredQuestion>
    • removeByQuestion

      public boolean removeByQuestion(String question, javax.persistence.EntityManager em)
    • removeAllReferences

      public boolean removeAllReferences(long id, javax.persistence.EntityManager em)
      Parameters:
      id - the id of the answeredQuestion
      em -
      Returns:
    • doRemove

      public boolean doRemove(AnsweredQuestion answeredQuestion, javax.persistence.EntityManager em)
    • removeResultByResult

      public void removeResultByResult(ResultParent resultParent)
    • removeResultByResult

      public void removeResultByResult(long id, javax.persistence.EntityManager em)
    • removeResultByTypeTag

      public void removeResultByTypeTag(long id, javax.persistence.EntityManager em)
    • removeResultByTag

      public void removeResultByTag(long tagId, javax.persistence.EntityManager em)
      Parameters:
      tagId -
      em -
      Since:
      29.07.2021
    • removeResultByTagAndType

      public void removeResultByTagAndType(long tagId, AnswerType answerType, javax.persistence.EntityManager em)
      Parameters:
      tagId -
      answerType -
      em -
      Since:
      29.07.2021
    • removeResultsByAnswer

      public boolean removeResultsByAnswer(long id, javax.persistence.EntityManager em)
      Parameters:
      id - the answered question id
      em -