org.sakaiproject.tool.assessment.samlite.api.Question Maven / Gradle / Ivy
package org.sakaiproject.tool.assessment.samlite.api;
import java.util.LinkedList;
import java.util.List;
import java.util.Iterator;
public class Question {
public static final int UNDEFINED_QUESTION = 0;
public static final int MULTIPLE_CHOICE_QUESTION = 10;
public static final int MULTIPLE_CHOICE_MULTIPLE_ANSWER_QUESTION = 15;
public static final int FILL_IN_THE_BLANK_QUESTION = 20;
public static final int TRUE_FALSE_QUESTION = 30;
public static final int SHORT_ESSAY_QUESTION = 40;
private int questionNumber;
private String questionPoints;
private List questionLines;
private int questionType;
private String correctAnswer;
private List answers;
private boolean hasPoints;
private String questionTypeAsString;
public Question() {
this.questionNumber = 0;
this.questionPoints = "";
this.questionLines = new LinkedList();
this.questionType = UNDEFINED_QUESTION;
this.correctAnswer = "";
this.answers = new LinkedList();
this.hasPoints = false;
this.questionTypeAsString = "";
}
public void addAnswer(String id, String text, boolean isCorrect) {
this.answers.add(new Answer(id, text, isCorrect));
}
public List getAnswers() {
return answers;
}
public void setAnswers(List answers) {
this.answers = answers;
}
public String getCorrectAnswer() {
return correctAnswer;
}
public void setCorrectAnswer(String correctAnswer) {
this.correctAnswer = correctAnswer;
}
public String getQuestion() {
StringBuilder buffer = new StringBuilder();
for (Iterator it = questionLines.iterator();it.hasNext();) {
String line = (String)it.next();
if (null != line && !"".equals(line))
buffer.append(line.trim()).append(" ");
}
return buffer.toString();
}
public void append(String questionSegment) {
this.questionLines.add(questionSegment);
}
public int getQuestionNumber() {
return questionNumber;
}
public void setQuestionNumber(int questionNumber) {
this.questionNumber = questionNumber;
}
public String getQuestionPoints() {
return questionPoints;
}
public void setQuestionPoints(String questionPoints) {
if (null != questionPoints && !"".equals(questionPoints))
this.hasPoints = true;
this.questionPoints = questionPoints;
}
public boolean hasPoints() {
return hasPoints;
}
public int getQuestionType() {
return questionType;
}
public void setQuestionType(int questionType) {
this.questionType = questionType;
}
public String getQuestionTypeAsString() {
return questionTypeAsString;
}
public void setQuestionTypeAsString(String questionTypeAsString) {
this.questionTypeAsString = questionTypeAsString;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy