
package de.ivu.elect.presentation.veranstaltung.exchange;

import de.ivu.elect.business.exchange.entity.DateiImportArt;
import de.ivu.elect.business.security.UseCasePermission;
import de.ivu.elect.jee.exchange.ImportOptions;
import de.ivu.elect.presentation.exchange.ImportDescription;
import de.ivu.elect.presentation.veranstaltung.menu.VeranstaltungPageMenu;

public class VeranstaltungImportDescription implements ImportDescription {

  @Override
  public String getImportSearchViewId() {
    return VeranstaltungImportSearchView.VIEW_ID;
  }

  @Override
  public String getImportFormatFestlegenViewId() {
    return VeranstaltungImportFormatFestlegenView.VIEW_ID;
  }

  @Override
  public String getImportBestaetigenViewId() {
    return VeranstaltungImportBestaetigenView.VIEW_ID;
  }

  @Override
  public boolean isConfirmationForImportNeeded() {
    return false;
  }

  @Override
  public boolean isSpecificPerWahlOrWahltermin() {
    return true;
  }

  @Override
  public DateiImportArt getDateiImportArt() {
    return DateiImportArt.VERANSTALTUNG_IMPORT;
  }

  @Override
  public UseCasePermission getUseCasePermission() {
    return UseCasePermission.VERANSTALTUNG_IMPORTIEREN;
  }

  @Override
  public String getPageMenuComponentName() {
    return VeranstaltungPageMenu.COMPONENT_NAME;
  }

  @Override
  public ImportOptions getDefaultImportOptions() {
    // HINT: Nicht löschen; es werden immer nur einzelne Veranstaltungen importiert
    return ImportOptions.NEUE_DATEN_ANLEGEN_BESTEHENDE_DATEN_AKTUALISIEREN;
  }
}
