package edu.vserver.exercises.math.essentials.level;
import java.io.Serializable;
import fi.utu.ville.exercises.model.ExerciseData;
public class LevelMathDataWrapper<E extends ExerciseData> implements
ExerciseData, Serializable {
/**
*
*/
private static final long serialVersionUID = 4324121022053916859L;
private final E easy;
private final E normal;
private final E hard;
public LevelMathDataWrapper(E easy, E normal, E hard) {
this.easy = easy;
this.normal = normal;
this.hard = hard;
}
public E getForLevel(DiffLevel level) {
if (level == DiffLevel.EASY) {
return easy;
} else if (level == DiffLevel.NORMAL) {
return normal;
} else if (level == DiffLevel.HARD) {
return hard;
} else {
throw new IllegalArgumentException(
"Difficulty level not implemented in class " + getClass());
}
}
}