use of fr.univlorraine.ecandidat.vaadin.form.siscol.ComboBoxCommune in project esup-ecandidat by EsupPortail.
the class CustomFieldGroupFieldFactoryCandidat method createField.
@SuppressWarnings("rawtypes")
@Override
public <T extends Field> T createField(final Class<?> dataType, final Class<T> fieldType) {
/* Le type du champs est un TextArea */
if (fieldType == RequiredTextArea.class) {
return fieldType.cast(new RequiredTextArea());
} else /* Le type du champs est un ComboBoxPresentation */
if (fieldType == ComboBoxPresentation.class) {
return fieldType.cast(new ComboBoxPresentation());
} else /* La valeur du champs est un LocalDate */
if (dataType == LocalDate.class) {
final RequiredDateField field = new RequiredDateField();
field.setImmediate(true);
field.setConverter(new LocalDateToDateConverter());
return fieldType.cast(field);
} else /* La valeur est siScolPays */
if (dataType == SiScolPays.class) {
return fieldType.cast(new ComboBoxPays(cacheController.getListePays().stream().filter(e -> e.getTemEnSvePay()).collect(Collectors.toList()), applicationContext.getMessage("infoperso.table.siScolPaysNaiss.suggest", null, UI.getCurrent().getLocale())));
} else /* La valeur est siScolDepartement */
if (dataType == SiScolDepartement.class) {
return fieldType.cast(new ComboBoxDepartement(cacheController.getListDepartement().stream().filter(e -> e.getTemEnSveDep()).collect(Collectors.toList()), applicationContext.getMessage("infoperso.table.siScolDepartement.suggest", null, UI.getCurrent().getLocale())));
} else /* La valeur est SiScolCommune */
if (dataType == SiScolCommune.class) {
return fieldType.cast(new ComboBoxCommune(applicationContext.getMessage("adresse.commune.suggest", null, UI.getCurrent().getLocale())));
} else /* La valeur est SiScolCommune */
if (dataType == SiScolEtablissement.class) {
return fieldType.cast(new ComboBoxEtablissement(applicationContext.getMessage("infobac.siScolEtablissement.suggest", null, UI.getCurrent().getLocale())));
} else /* La valeur est un SiScolBacOuxEqu */
if (dataType == SiScolBacOuxEqu.class) {
return fieldType.cast(new ComboBoxBacOuEqu(cacheController.getListeBacOuxEqu().stream().filter(e -> e.getTemEnSveBac()).collect(Collectors.toList())));
} else /* La valeur est un SiScolDipAutCur */
if (dataType == SiScolDipAutCur.class) {
return fieldType.cast(new RequiredComboBox<>(cacheController.getListeDipAutCur().stream().filter(e -> e.getTemEnSveDac()).collect(Collectors.toList()), SiScolDipAutCur.class));
} else /* La valeur est un SiScolMention */
if (dataType == SiScolMention.class) {
return fieldType.cast(new RequiredComboBox<>(cacheController.getListeMention().stream().filter(e -> e.getTemEnSveMen()).collect(Collectors.toList()), SiScolMention.class));
} else /* La valeur est un SiScolMentionNivBac */
if (dataType == SiScolMentionNivBac.class) {
return fieldType.cast(new RequiredComboBox<>(cacheController.getListeMentionNivBac().stream().filter(e -> e.getTemEnSveMnb()).collect(Collectors.toList()), SiScolMentionNivBac.class));
} else /* La valeur est un SiScolSpecialiteBac */
if (dataType == SiScolSpecialiteBac.class) {
return fieldType.cast(new ComboBoxSpecialiteBac(cacheController.getListeSpecialiteBac(), cacheController.getListeBacSpeBac()));
} else /* La valeur est un SiScolOptionBac */
if (dataType == SiScolOptionBac.class) {
return fieldType.cast(new ComboBoxOptionBac(cacheController.getListeOptionBac(), cacheController.getListeBacOptBac()));
} else /* La valeur est un type d'avis */
if (dataType == Civilite.class) {
return fieldType.cast(new RequiredComboBox<>(cacheController.getListeCivilte(), Civilite.class));
} else /* La valeur est une langue */
if (dataType == Langue.class) {
final List<Langue> listeLangue = new ArrayList<>();
listeLangue.add(cacheController.getLangueDefault());
listeLangue.addAll(cacheController.getLangueEnServiceWithoutDefault());
return fieldType.cast(new ComboBoxLangue(listeLangue, true));
} else /* La valeur du champs est un LocalTime */
if (dataType == LocalTime.class) {
return fieldType.cast(new LocalTimeField());
} else /* La valeur du champs est un Integer */
if (dataType == Integer.class) {
return fieldType.cast(new RequiredIntegerField());
} else /* La valeur du champs est une date */
if (dataType == Date.class) {
return fieldType.cast(new RequiredDateField());
} else /* La valeur du champs est un Boolean */
if (dataType == Boolean.class) {
return fieldType.cast(new RequiredCheckBox());
} else /* Sinon, le champs est un simple TextField */
{
return fieldType.cast(new RequiredTextField());
}
}
Aggregations