1 package nl.tudelft.goal.ut2004.translators;
2
3 import eis.iilang.Parameter;
4 import nl.tudelft.goal.EIS2Java.exception.TranslationException;
5 import nl.tudelft.goal.EIS2Java.translation.Parameter2Java;
6 import nl.tudelft.goal.EIS2Java.translation.Translator;
7 import nl.tudelft.goal.ut2004.messages.Combo;
8
9 public class ComboTranslator implements Parameter2Java<Combo> {
10
11 @Override
12 public Combo translate(Parameter parameter) throws TranslationException {
13 String comboString = Translator.getInstance().translate2Java(parameter, String.class);
14
15 try {
16 return Combo.valueOfIgnoresCase(comboString);
17 } catch (IllegalArgumentException e) {
18 String message = String.format("%s was not a Combo. Expected on off %s.", comboString, Combo.values());
19 throw new TranslationException(message, e);
20 }
21 }
22
23 @Override
24 public Class<Combo> translatesTo() {
25 return Combo.class;
26 }
27
28 }