
package de.ivu.elect.presentation.wahlrechtspruefung.form;

import javax.inject.Inject;

import de.ivu.elect.business.wahl.boundary.WahlSessionSelect;
import de.ivu.elect.business.wahlrechtspruefung.boundary.PruefkriteriumExtendedDAO;
import de.ivu.elect.business.wahlrechtspruefung.entity.Pruefkriterium;
import de.ivu.elect.business.wahlrechtspruefung.entity.PruefkriteriumPK;
import de.ivu.elect.business.wahlrechtspruefung.entity.PruefkriteriumUK;
import de.ivu.elect.jee.entity.DAO;
import de.ivu.elect.jee.faces.AbstractEntityUniqueUKFacesValidator;

public class PruefkriteriumUniqueUKFacesValidator
    extends
    AbstractEntityUniqueUKFacesValidator<Pruefkriterium, PruefkriteriumPK, PruefkriteriumUK> {

  private static final long serialVersionUID = 1L;

  @Inject
  PruefkriteriumExtendedDAO dao;

  @Inject
  WahlSessionSelect wahlSessionSelect;

  @Override
  protected PruefkriteriumUK createUK(Object value) {
    return new PruefkriteriumUK((Long) value, wahlSessionSelect.getEntity().getUk());
  }

  @Override
  protected DAO<Pruefkriterium, PruefkriteriumPK, PruefkriteriumUK> getDao() {
    return dao;
  }

}
