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

import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.function.Predicate;

import javax.enterprise.inject.Specializes;

import de.ivu.elect.business.datei.entity.DateiExport;
import de.ivu.elect.business.exchange.control.FileFormat;

@Specializes
public class NlWasExportArtefaktNachSystemExportstatusSearchExportView extends NlExportArtefaktNachSystemExportstatusSearchExportView {

  private static final long serialVersionUID = 1L;

  public NlWasExportArtefaktNachSystemExportstatusSearchExportView() {
    super();
  }

  @Override // ELECTVAPP-1416
  protected Predicate< ? super DateiExport> getSearchResultPredicate(List<FileFormat> ignored) {
    Set<FileFormat> fileFormatsProcessed = new HashSet<>();

    return dateiExport -> dateiExport != null && dateiExport.getDatei() != null && fileFormatsProcessed.add(dateiExport.getDatei().getFileFormat()); // ELECTVAPP-795
  }
}
