// Path: src/com/torrosoft/triviazo/core/enums/Difficulty.java
// public enum Difficulty {
//     EASY("Easy"),
//     NORMAL("Normal"),
//     HARD("Hard"),
//     INSANE("Insane"), // Only used for IA
//     ALL("All"); // Only used for questions
// 
//     private String name;
// 
//     private Difficulty(final String name) {
//         setName(name);
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(final String name) {
//         this.name = name;
//     }
// 
//     public static Difficulty getDifficultyByName(final String name) {
//         Difficulty res = null;
//         for (final Difficulty d : Difficulty.values()) {
//             if (d.getName().equals(name)) {
//                 res = d;
//                 break;
//             }
//         }
// 
//         return res;
//     }
// }
// 
// Path: src/com/torrosoft/triviazo/core/enums/Discipline.java
// public enum Discipline {
//     HISTORY("History"),
//     GEOGRAPHY("Geography"),
//     POLITICS("Politics"),
//     TECNOLOGY("Technology"),
//     PHYSICS("Physics"),
//     CHEMISTRY("Chemistry"),
//     LITERATURE("Literature"),
//     MUSIC("Music"),
//     ART("Art");
// 
//     private String name;
// 
//     private Discipline(final String name) {
//         setName(name);
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(final String name) {
//         this.name = name;
//     }
// 
//     public static Discipline getDisciplineByName(final String name) {
//         Discipline res = null;
//         for (final Discipline d : Discipline.values()) {
//             if (d.getName().equals(name)) {
//                 res = d;
//                 break;
//             }
//         }
// 
//         return res;
//     }
// }
// 
// Path: src/com/torrosoft/triviazo/core/enums/Language.java
// public enum Language {
//     es_ES("Spanish"),
//     en_GB("English"),
//     fr_FR("French"),
//     de_DE("German");
// 
//     private String name;
// 
//     private Language(final String name) {
//         setName(name);
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(final String name) {
//         this.name = name;
//     }
// 
//     public static Language getLanguageByName(final String name) {
//         Language res = null;
//         for (final Language lang : Language.values()) {
//             if (lang.getName().equals(name)) {
//                 res = lang;
//                 break;
//             }
//         }
//         return res;
//     }
// }


import com.torrosoft.triviazo.core.enums.Difficulty;
import com.torrosoft.triviazo.core.enums.Discipline;
import com.torrosoft.triviazo.core.enums.Language;
    private String statement;
    private String[] answers = new String[MAX_ANSWERS];
    private Integer right; // < MAX_ANSWERS
    private Language lang = Language.es_ES;
    private Difficulty difficulty;
    private Discipline discipline;

    public Question(final Question question) {
        setPkid(question.getPkid());
        setStatement(question.getStatement());
        setAnswers(question.getAnswers());
        setRight(question.getRight());
        setLang(question.getLang());
        setDifficulty(question.getDifficulty());
        setDiscipline(question.getDiscipline());
    }

    public Question(final String pkid, final String statement,
            final String[] answers, final int right, final Language lang,
            final Difficulty difficulty, final Discipline discipline) {
        setPkid(pkid);
        setStatement(statement);
        setAnswers(answers);
        setRight(right);
        setLang(lang);
        setDifficulty(difficulty);
        setDiscipline(discipline);
    }

    public Question(final String pkid, final String statement,
// Path: src/com/torrosoft/triviazo/core/enums/Difficulty.java
// public enum Difficulty {
//     EASY("Easy"),
//     NORMAL("Normal"),
//     HARD("Hard"),
//     INSANE("Insane"), // Only used for IA
//     ALL("All"); // Only used for questions
// 
//     private String name;
// 
//     private Difficulty(final String name) {
//         setName(name);
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(final String name) {
//         this.name = name;
//     }
// 
//     public static Difficulty getDifficultyByName(final String name) {
//         Difficulty res = null;
//         for (final Difficulty d : Difficulty.values()) {
//             if (d.getName().equals(name)) {
//                 res = d;
//                 break;
//             }
//         }
// 
//         return res;
//     }
// }
// 
// Path: src/com/torrosoft/triviazo/core/enums/Discipline.java
// public enum Discipline {
//     HISTORY("History"),
//     GEOGRAPHY("Geography"),
//     POLITICS("Politics"),
//     TECNOLOGY("Technology"),
//     PHYSICS("Physics"),
//     CHEMISTRY("Chemistry"),
//     LITERATURE("Literature"),
//     MUSIC("Music"),
//     ART("Art");
// 
//     private String name;
// 
//     private Discipline(final String name) {
//         setName(name);
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(final String name) {
//         this.name = name;
//     }
// 
//     public static Discipline getDisciplineByName(final String name) {
//         Discipline res = null;
//         for (final Discipline d : Discipline.values()) {
//             if (d.getName().equals(name)) {
//                 res = d;
//                 break;
//             }
//         }
// 
//         return res;
//     }
// }
// 
// Path: src/com/torrosoft/triviazo/core/enums/Language.java
// public enum Language {
//     es_ES("Spanish"),
//     en_GB("English"),
//     fr_FR("French"),
//     de_DE("German");
// 
//     private String name;
// 
//     private Language(final String name) {
//         setName(name);
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(final String name) {
//         this.name = name;
//     }
// 
//     public static Language getLanguageByName(final String name) {
//         Language res = null;
//         for (final Language lang : Language.values()) {
//             if (lang.getName().equals(name)) {
//                 res = lang;
//                 break;
//             }
//         }
//         return res;
//     }
// }


// Path: src/com/torrosoft/triviazo/core/data/wrappers/Question.java
import com.torrosoft.triviazo.core.enums.Difficulty;
import com.torrosoft.triviazo.core.enums.Discipline;
import com.torrosoft.triviazo.core.enums.Language;

    private String statement;
    private String[] answers = new String[MAX_ANSWERS];
    private Integer right; // < MAX_ANSWERS
    private Language lang = Language.es_ES;
    private Difficulty difficulty;
    private Discipline discipline;

    public Question(final Question question) {
        setPkid(question.getPkid());
        setStatement(question.getStatement());
        setAnswers(question.getAnswers());
        setRight(question.getRight());
        setLang(question.getLang());
        setDifficulty(question.getDifficulty());
        setDiscipline(question.getDiscipline());
    }

    public Question(final String pkid, final String statement,
            final String[] answers, final int right, final Language lang,
            final Difficulty difficulty, final Discipline discipline) {
        setPkid(pkid);
        setStatement(statement);
        setAnswers(answers);
        setRight(right);
        setLang(lang);
        setDifficulty(difficulty);
        setDiscipline(discipline);
    }

    public Question(final String pkid, final String statement,
            final Language lang, final Difficulty difficulty,