package de.ivu.elect.presentation.gebietsbaum.tree;

import java.util.Collections;
import java.util.List;

import javax.enterprise.inject.Specializes;
import javax.inject.Inject;

import de.ivu.elect.business.gebietsbaum.boundary.WahldurchfuehrungsgebietExtendedDAO;
import de.ivu.elect.business.gebietsbaum.entity.Gebiet;
import de.ivu.elect.business.wahl.entity.Wahl;
import de.ivu.elect.business.wahl.entity.Wahltermin;

@Specializes
public class WasGebietsbaumAutoCompleteGebietsCacheLoader extends CoreGebietsbaumAutoCompleteGebietsCacheLoader {
  private static final long serialVersionUID = 1L;

  @Inject
  private transient WahldurchfuehrungsgebietExtendedDAO wahldurchfuehrungsgebietExtendedDAO;

  @Override
  public List<Gebiet> ladeAlleAktuellenGebiete(Wahltermin wahltermin, Wahl wahl) {
    if (wahl == null) {
      return Collections.emptyList();
    }

    List result = wahldurchfuehrungsgebietExtendedDAO.findByWahl(wahl);
    return result;
  }
}
