Refactoring of codebase #1

Open
tomh104 wants to merge 3 commits from refactoring into master
36 changed files with 396 additions and 425 deletions
Showing only changes of commit 67bbc3ea06 - Show all commits

View File

@ -168,89 +168,17 @@ abstract class QuestionnaireBase<T> {
protected open fun createHandlerForQuestion(question: QuestionItem): QuestionHandler? {
return when (question) {
is QuestionItem.RadioQuestion -> HandlerRadioQuestion(
context,
answers,
points,
languageID,
::goToNextQuestion,
::goToPreviousQuestion,
::goToQuestionById,
::showToast,
questionnaireMeta.id
)
is QuestionItem.ClientCoachCodeQuestion -> HandlerClientCoachCode(
answers,
languageID,
::goToNextQuestion,
::goToPreviousQuestion,
::showToast
)
is QuestionItem.DateSpinnerQuestion -> HandlerDateSpinner(
context,
answers,
languageID,
::goToNextQuestion,
::goToPreviousQuestion,
::showToast,
questionnaireMeta.id
)
is QuestionItem.ValueSpinnerQuestion -> HandlerValueSpinner(
context,
answers,
languageID,
::goToNextQuestion,
::goToPreviousQuestion,
::goToQuestionById,
::showToast,
questionnaireMeta.id
)
is QuestionItem.GlassScaleQuestion -> HandlerGlassScaleQuestion(
context,
answers,
points,
languageID,
::goToNextQuestion,
::goToPreviousQuestion,
::showToast,
questionnaireMeta.id
)
is QuestionItem.ClientNotSigned -> HandlerClientNotSigned(
answers,
languageID,
::goToNextQuestion,
::goToPreviousQuestion,
::showToast
)
is QuestionItem.StringSpinnerQuestion -> HandlerStringSpinner(
context,
answers,
languageID,
::goToNextQuestion,
::goToPreviousQuestion,
::showToast,
questionnaireMeta.id
)
is QuestionItem.MultiCheckboxQuestion -> HandlerMultiCheckboxQuestion(
context,
answers,
points,
languageID,
::goToNextQuestion,
::goToPreviousQuestion,
::showToast,
questionnaireMeta.id
)
is QuestionItem.RadioQuestion -> HandlerRadioQuestion(context, answers, points, languageID, ::goToNextQuestion, ::goToPreviousQuestion, ::goToQuestionById, ::showToast, questionnaireMeta.id)
is QuestionItem.ClientCoachCodeQuestion -> HandlerClientCoachCode(answers, languageID, ::goToNextQuestion, ::goToPreviousQuestion, ::showToast)
is QuestionItem.DateSpinnerQuestion -> HandlerDateSpinner(context, answers, languageID, ::goToNextQuestion, ::goToPreviousQuestion, ::showToast, questionnaireMeta.id)
is QuestionItem.ValueSpinnerQuestion -> HandlerValueSpinner(context, answers, languageID, ::goToNextQuestion, ::goToPreviousQuestion, ::goToQuestionById, ::showToast, questionnaireMeta.id)
is QuestionItem.GlassScaleQuestion -> HandlerGlassScaleQuestion(context, answers, points, languageID, ::goToNextQuestion, ::goToPreviousQuestion, ::showToast, questionnaireMeta.id)
is QuestionItem.ClientNotSigned -> HandlerClientNotSigned(answers, languageID, ::goToNextQuestion, ::goToPreviousQuestion, ::showToast)
is QuestionItem.StringSpinnerQuestion -> HandlerStringSpinner(context, answers, languageID, ::goToNextQuestion, ::goToPreviousQuestion, ::showToast, questionnaireMeta.id)
is QuestionItem.MultiCheckboxQuestion -> HandlerMultiCheckboxQuestion(context, answers, points, languageID, ::goToNextQuestion, ::goToPreviousQuestion, ::showToast, questionnaireMeta.id)
is QuestionItem.LastPage -> HandlerLastPage(
answers, languageID, ::goToNextQuestion, ::goToPreviousQuestion
) {
CoroutineScope(Dispatchers.IO).launch {
saveAnswersToDatabase(
answers,
questionnaireMeta.id
)
}
}
) { CoroutineScope(Dispatchers.IO).launch { saveAnswersToDatabase(answers, questionnaireMeta.id) } }
else -> null
}
}