@Service public class QuestionCRUDController extends java.lang.Object implements QuestionCRUDInterface
Modifier and Type | Field and Description |
---|---|
private BusApprovedElementInterface |
busApprovedElementRepository |
private static int |
LIMIT |
private ModelMapperFactoryInterface |
modelMapperFactory |
private QuestionRepository |
questionRepository |
Constructor and Description |
---|
QuestionCRUDController() |
@Autowired private QuestionRepository questionRepository
@Autowired private ModelMapperFactoryInterface modelMapperFactory
@Autowired private BusApprovedElementInterface busApprovedElementRepository
private static final int LIMIT
public QuestionCrudDTO getQuestionById(java.lang.String id) throws NotFoundException, BadInputException
getQuestionById
in interface QuestionCRUDInterface
NotFoundException
BadInputException
public QuestionDTO getQuestionByIdLastApprovedVersion(java.lang.String id) throws BadInputException, NotFoundException, BusException, java.io.IOException
getQuestionByIdLastApprovedVersion
in interface QuestionCRUDInterface
BadInputException
NotFoundException
BusException
java.io.IOException
public java.util.ArrayList<QuestionDTO> getQuestionsByPointerBusList(java.util.List<PointerBus> list)
getQuestionsByPointerBusList
in interface QuestionCRUDInterface
public QuestionCrudDTO getQuestionCrudDTOByIdLastApprovedVersion(java.lang.String id) throws BadInputException, NotFoundException, BusException, java.io.IOException
getQuestionCrudDTOByIdLastApprovedVersion
in interface QuestionCRUDInterface
BadInputException
NotFoundException
BusException
java.io.IOException
public QuestionCrudDTO getQuestionByCreatorId(java.lang.String id) throws BadInputException, NotFoundException
getQuestionByCreatorId
in interface QuestionCRUDInterface
BadInputException
NotFoundException
public QuestionCrudDTO getQuestionByTag(java.lang.String tag) throws NotFoundException
getQuestionByTag
in interface QuestionCRUDInterface
NotFoundException
public QuestionCrudDTO getQuestionByFocus(java.lang.String focus) throws NotFoundException
getQuestionByFocus
in interface QuestionCRUDInterface
NotFoundException
public QuestionCrudDTO getQuestionBySubject(java.lang.String subject) throws NotFoundException
getQuestionBySubject
in interface QuestionCRUDInterface
NotFoundException
public QuestionCrudDTO createQuestion(QuestionDTO questionDTO) throws BadInputException
createQuestion
in interface QuestionCRUDInterface
BadInputException
public QuestionCrudDTO updateQuestion(QuestionDTO questionDTO) throws BadInputException, NotFoundException, IllegalStateTransitionException, DBException
updateQuestion
in interface QuestionCRUDInterface
BadInputException
NotFoundException
IllegalStateTransitionException
DBException
public QuestionCrudDTO getAllQuestions()
getAllQuestions
in interface QuestionCRUDInterface
public QuestionCrudDTO getRecentQuestions(java.lang.String creatorId)
getRecentQuestions
in interface QuestionCRUDInterface
public long countQuestionByState(java.lang.String state, java.lang.String userId) throws BadInputException, NotFoundException
countQuestionByState
in interface QuestionCRUDInterface
BadInputException
NotFoundException
public QuestionCrudDTO getQuestionByStateAndCreatorId(java.lang.String state, java.lang.String userId) throws NotFoundException, BadInputException
getQuestionByStateAndCreatorId
in interface QuestionCRUDInterface
NotFoundException
BadInputException
public QuestionCrudDTO getQuestionByState(java.lang.String state) throws NotFoundException, BadInputException
getQuestionByState
in interface QuestionCRUDInterface
NotFoundException
BadInputException
public void deleteQuestionById(java.lang.String id) throws IllegalStateTransitionException, NotFoundException
deleteQuestionById
in interface QuestionCRUDInterface
IllegalStateTransitionException
NotFoundException
public void deleteAllQuestions()
deleteAllQuestions
in interface QuestionCRUDInterface
private void stateTransition(Question oldQuestion, Question newQuestion) throws IllegalStateTransitionException, NotFoundException