
package de.ivu.elect.business.stimmeingabe.boundary.europawahl;

import java.util.List;

import de.ivu.elect.business.stimmeingabe.boundary.AbstractListenwahlStimmeingabeGruppeStimmenModelBuilder;
import de.ivu.elect.business.stimmeingabe.boundary.StimmeingabeGruppeStimmenErfassenModelContext;
import de.ivu.elect.business.stimmeingabe.entity.StimmeingabeGruppeStimmen;
import de.ivu.elect.business.stimmeingabe.entity.StimmeingabeGruppeStimmenErfassenModel;

public class EuwStimmeingabeGruppeStimmenModelBuilder extends AbstractListenwahlStimmeingabeGruppeStimmenModelBuilder {

  private static final long serialVersionUID = 1L;

  public EuwStimmeingabeGruppeStimmenModelBuilder() {
    super();
  }

  @Override
  public List<StimmeingabeGruppeStimmen> layoutModelStimmeingabeSystemGruppeStimmen(StimmeingabeGruppeStimmenErfassenModel model, StimmeingabeGruppeStimmenErfassenModelContext context) {
    return getStimmeingabeGruppeStimmenErfassenModelLayout().layoutSystemGruppeStimmenGueltigeUngueltigeConfiguredOrDefault(model, context,
        fallback -> fallback.layoutSystemGruppeStimmenUngueltigeGueltige(model, context));
  }

  @Override
  public List<StimmeingabeGruppeStimmen> layoutModelStimmeingabePolitischeGruppeStimmen(StimmeingabeGruppeStimmenErfassenModel model, StimmeingabeGruppeStimmenErfassenModelContext context) {
    return getStimmeingabeGruppeStimmenErfassenModelLayout().layoutPolitischeGruppeStimmenMitSystemGruppeStimmenGueltigeUngueltigeConfiguredOrDefault(model, context,
        fallback -> fallback.layoutPolitischeGruppeStimmenOhneSystemGruppeStimmen(model, context));
  }
}
