
package de.ivu.elect.wus.exchange.wahlvorschlag;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

import de.ivu.elect.business.kandidatur.entity.Kandidatur;
import de.ivu.elect.business.wahlvorschlag.entity.Wahlvorschlag;

public class WahlvorschlagMappers {

  private WahlvorschlagMappers() {
    // static utility class
  }

  /**
   * WahlvorschlagImporter waren früher KandidaturImporter, die ihre Wahlvorschläge im Schlepptau mit sich zogen. Zur
   * einfacheren Umstellung wird hier das eine in das andere Format umsortiert.
   */
  public static List<Wahlvorschlag> mapToWahlvorschlaege(List<Kandidatur> kandidaturen) {
    Set<Wahlvorschlag> result = new HashSet<>();

    for (Kandidatur kandidatur : kandidaturen) {
      /*
       * NOTE, dass die Voraussetzung hierfür ist, dass der vorgeschaltete Mapper bereits Wahlvorschläge und
       * Kandidaturen korrekt (in beide Richtungen) verknüpft.
       */
      result.add(kandidatur.getWahlvorschlag());
    }

    return new ArrayList<>(result);
  }

}
