
package de.ivu.elect.dokumente.ergebnistabelle.gruppen;

import javax.inject.Inject;

import de.ivu.elect.business.datei.entity.FileType;
import de.ivu.elect.business.ergebnis.control.ErgebnisExportContext;
import de.ivu.elect.business.ergebnis.control.ErgebnisExportObject;
import de.ivu.elect.business.wahl.entity.WahlOderWahltermin;
import de.ivu.elect.exchange.AbstractOpenOfficeKonvertierenderExportMapper;
import de.ivu.elect.exchange.ExportMapper;
import de.ivu.elect.was.exchange.ergebnis.ErgebnisExportMapper;
import de.ivu.elect.was.exchange.ergebnis.gesamtergebnis.ErgebnisGesamtergebnisDocumentExportMapper;
import de.ivu.elect.was.exchange.ergebnis.gesamtergebnis.ErgebnisGesamtergebnisExchange;

public class GruppenErgebnistabelleDocumentDocxExportMapper extends AbstractOpenOfficeKonvertierenderExportMapper<ErgebnisExportObject, ErgebnisExportContext>
    implements
      ErgebnisExportMapper,
      ErgebnisGesamtergebnisDocumentExportMapper<ErgebnisExportObject, ErgebnisExportContext>,
      ErgebnisGesamtergebnisExchange {

  @Inject
  private transient GruppenErgebnistabelleDocumentExportMapper gruppenErgebnistabelleDocumentExportMapper;

  public GruppenErgebnistabelleDocumentDocxExportMapper() {
    super();
  }

  @Override
  protected FileType getAusgabeFileType() {
    return FileType.DOCX;
  }

  @Override
  protected WahlOderWahltermin getWahlOderWahltermin(ErgebnisExportContext context) {
    return context.getWahl();
  }

  @Override
  protected ExportMapper<ErgebnisExportObject, ErgebnisExportContext> getExportMapper() {
    return gruppenErgebnistabelleDocumentExportMapper;
  }
}
