use of org.olat.ims.qti21.model.xml.interactions.FIBAssessmentItemBuilder.NumericalEntry in project openolat by klemens.
the class QTI21StatisticsManagerImpl method getNumericalInputInteractionSettings.
private NumericalInputInteractionStatistics getNumericalInputInteractionSettings(Identifier responseIdentifier, ResponseDeclaration responseDeclaration, AssessmentItem item) {
NumericalEntry numericalEntry = new NumericalEntry(responseIdentifier);
FIBAssessmentItemBuilder.extractNumericalEntrySettings(item, numericalEntry, responseDeclaration, new AtomicInteger(), new DoubleAdder());
String correctResponse = "";
Double solution = numericalEntry.getSolution();
if (numericalEntry.getSolution() != null) {
correctResponse = solution.toString();
}
double points = Double.NaN;
if (numericalEntry.getScore() == null) {
// all score
points = 0.0d;
} else {
points = numericalEntry.getScore().doubleValue();
}
return new NumericalInputInteractionStatistics(responseIdentifier, correctResponse, solution, numericalEntry.getToleranceMode(), numericalEntry.getLowerTolerance(), numericalEntry.getUpperTolerance(), points);
}
use of org.olat.ims.qti21.model.xml.interactions.FIBAssessmentItemBuilder.NumericalEntry in project openolat by klemens.
the class CorrectResponsesUtil method getCorrectTextResponses.
public static final AbstractEntry getCorrectTextResponses(AssessmentItem assessmentItem, TextEntryInteraction interaction) {
ResponseDeclaration responseDeclaration = assessmentItem.getResponseDeclaration(interaction.getResponseIdentifier());
if (responseDeclaration.hasBaseType(BaseType.STRING) && responseDeclaration.hasCardinality(Cardinality.SINGLE)) {
TextEntry textEntry = new TextEntry(interaction);
FIBAssessmentItemBuilder.extractTextEntrySettingsFromResponseDeclaration(textEntry, responseDeclaration, new AtomicInteger(), new DoubleAdder());
return textEntry;
} else if (responseDeclaration.hasBaseType(BaseType.FLOAT) && responseDeclaration.hasCardinality(Cardinality.SINGLE)) {
NumericalEntry numericalEntry = new NumericalEntry(interaction);
FIBAssessmentItemBuilder.extractNumericalEntrySettings(assessmentItem, numericalEntry, responseDeclaration, new AtomicInteger(), new DoubleAdder());
return numericalEntry;
}
return null;
}
Aggregations