package fi.utu.ville.exercises.model; import java.io.Serializable; /** * <p> * Implementor of this interface tells what kind of feedback can be shown to the user during certain execution of an exercise. Also tells the executor whether * it should be in "exam"-mode, which is a mode that most exercises do not have to react to if they respect the other directives given by an implementor of this * class. * </p> * <p> * If user feedback is shown only in the Feedback-component returned in the {@link SubmissionResult} these settings can mostly be ignored as that * Feedback-component will be hidden by the system if it should not be shown. * </p> * * @author Riku Haavisto * */ public interface ExecutionSettings extends Serializable { /** * In certain situations (eg. possibly in exams) no feed-back on the correctness of the users answers should be shown to the user during the execution of an * exercise. Then this method will return true. * * @return whether any feed-back should not be shown to the user through the executor */ boolean isNoTips(); /** * When this is true, the correct answers should not be shown to the user during execution. General-tips are however allowed, if the isNoTips() returns * false. * * @return whether correct answers should not be shown as such in the user-interface */ boolean isNoCorrAnswers(); /** * Some exercises might have settings that should be changed if the executor is run under exam-settings that do not strictly fall into any exact and general * categories. Most exercise-types can however ignore this value. * * @return whether the executor is run under exam-mode */ boolean isExam(); }