package nl.uva.softwcons.qls.ui.widget; import static nl.uva.softwcons.ql.ast.type.BooleanType.BOOLEAN_TYPE; import static nl.uva.softwcons.ql.ast.type.DateType.DATE_TYPE; import static nl.uva.softwcons.ql.ast.type.NumberType.NUMBER_TYPE; import static nl.uva.softwcons.ql.ast.type.StringType.STRING_TYPE; import nl.uva.softwcons.ql.ast.type.Type; import nl.uva.softwcons.ql.ui.converter.BooleanToBooleanValueConverter; import nl.uva.softwcons.ql.ui.converter.StringToNumberValueConverter; import nl.uva.softwcons.ql.ui.converter.StringToStringValueConverter; import nl.uva.softwcons.ql.ui.converter.ValueConverter; import nl.uva.softwcons.ql.ui.widget.CheckboxWidget; import nl.uva.softwcons.ql.ui.widget.TextFieldWidget; import nl.uva.softwcons.ql.ui.widget.Widget; import nl.uva.softwcons.qls.ui.converter.NumberToNumberValueConverter; import nl.uva.softwcons.qls.ui.converter.StringToBooleanValueConverter; import com.google.common.collect.HashBasedTable; import com.google.common.collect.Table; public final class RawValueAndTypeToConverterMap { @SuppressWarnings("rawtypes") public static final Table<Class<? extends Widget>, Type, ValueConverter> TABLE = HashBasedTable.create(); static { TABLE.put(TextFieldWidget.class, STRING_TYPE, new StringToStringValueConverter()); TABLE.put(TextFieldWidget.class, NUMBER_TYPE, new StringToNumberValueConverter()); TABLE.put(TextFieldWidget.class, DATE_TYPE, new StringToStringValueConverter()); TABLE.put(CheckboxWidget.class, BOOLEAN_TYPE, new BooleanToBooleanValueConverter()); TABLE.put(DropdownWidget.class, BOOLEAN_TYPE, new StringToBooleanValueConverter()); TABLE.put(RadioButtonWidget.class, BOOLEAN_TYPE, new BooleanToBooleanValueConverter()); TABLE.put(SliderWidget.class, NUMBER_TYPE, new NumberToNumberValueConverter()); } private RawValueAndTypeToConverterMap() { } }