
package de.ivu.elect.presentation.entschaedigung.table;

import de.ivu.elect.business.datei.entity.DateiExport;
import de.ivu.elect.business.entschaedigung.entity.Auszahlung;
import de.ivu.elect.jee.faces.Messages;
import de.ivu.elect.jee.presentation.dynamictable.ColumnType;
import de.ivu.elect.presentation.datei.table.AbstractDateiExportColumn;

public class AuszahlungDateiExportColumn extends AbstractAuszahlungColumn<Auszahlung> {

  private static final long serialVersionUID = 1L;

  private final AbstractDateiExportColumn<DateiExport> dateiExportColumn;

  public AuszahlungDateiExportColumn(Messages messages, AbstractDateiExportColumn<DateiExport> dateiExportColumn) {
    super("AuszahlungDateiExport-" + dateiExportColumn.getName(), messages, null, null, null);

    this.dateiExportColumn = dateiExportColumn;
  }

  @Override
  public ColumnType getType() {
    return dateiExportColumn.getType();
  }

  @Override
  public String getHeader() {
    return dateiExportColumn.getHeader();
  }

  @Override
  public Object getValue(Auszahlung auszahlung) {
    if (auszahlung != null && auszahlung.hasDateiExport()) {
      return dateiExportColumn.getDisplayValue(auszahlung.getDateiExport());
    }

    return "";
  }
}
