
package de.ivu.elect.presentation.stimmeingabe;

import java.util.Collection;

import javax.enterprise.context.RequestScoped;

import de.ivu.elect.business.gruppeimgebiet.entity.GruppeImGebiet;

@RequestScoped
public class StimmeingabeErfassenViewRequestScopedStateStore implements StimmeingabeErfassenViewRequestScopedState {

  /*
   * NOTE ELECT-2923, dass die GruppenImGebiet bei jedem Request neu attached werden müssen. (Viele
   * StimmeingabeErfassenViews sind jedoch @ViewAccessScoped.)
   *
   * Der Grund ist, dass in GruppeImGebiet Hibernate-gestützte Collections verwendet werden, jedoch beim zweiten Request
   * die Hibernate-Session hierfür weg ist.
   */
  private Collection<GruppeImGebiet> gruppenImGebiet;

  public StimmeingabeErfassenViewRequestScopedStateStore() {
    super();
  }

  @Override
  public Collection<GruppeImGebiet> getGruppenImGebiet() {
    return gruppenImGebiet;
  }

  public void setGruppenImGebiet(Collection<GruppeImGebiet> gruppenImGebiet) {
    this.gruppenImGebiet = gruppenImGebiet;
  }

  public void reset() {
    this.gruppenImGebiet = null;
  }
}
