
package de.ivu.elect.presentation.stimmeingabe.menu;

import java.util.ArrayList;
import java.util.List;

import javax.inject.Inject;

import de.ivu.elect.jee.presentation.menu.AbstractMenuModelBuilder;
import de.ivu.elect.jee.presentation.menu.MenuEntry;
import de.ivu.elect.presentation.menu.AbstractSchritteMenuModelBuilder;

public class ErfassungsschritteMenuBuilder extends AbstractSchritteMenuModelBuilder {

  private static final long serialVersionUID = 1L;

  @Inject
  private transient ErfassungsschrittSchnellmeldungErfassungMenuItem erfassungsschrittSchnellmeldungErfassungMenuItem;

  @Inject
  private transient ErfassungsschrittSchnellmeldungAbschlussMenuItem erfassungsschrittSchnellmeldungAbschlussMenuItem;

  @Inject
  private transient ErfassungsschrittSchnellmeldungFreigabeMenuItem erfassungsschrittSchnellmeldungFreigabeMenuItem;

  @Inject
  private transient ErfassungsschrittNiederschriftErfassungMenuItem erfassungsschrittNiederschriftErfassungMenuItem;

  @Inject
  private transient ErfassungsschrittNiederschriftAbschlussMenuItem erfassungsschrittNiederschriftAbschlussMenuItem;

  @Inject
  private transient ErfassungsschrittNiederschriftFreigabeMenuItem erfassungsschrittNiederschriftFreigabeMenuItem;

  public ErfassungsschritteMenuBuilder() {
    super();
  }

  @Override
  protected List<MenuEntry> getMenuEntriesSorted() {
    return new ArrayList<>(getErfassungschritteMenuEntriesSorted());
  }

  protected List<AbstractErfassungsschrittMenuItem> getErfassungschritteMenuEntriesSorted() {
    List<AbstractErfassungsschrittMenuItem> result = new ArrayList<>();

    result.add(erfassungsschrittSchnellmeldungErfassungMenuItem);
    result.add(erfassungsschrittSchnellmeldungAbschlussMenuItem);
    result.add(erfassungsschrittSchnellmeldungFreigabeMenuItem);

    result.add(erfassungsschrittNiederschriftErfassungMenuItem);
    result.add(erfassungsschrittNiederschriftAbschlussMenuItem);
    result.add(erfassungsschrittNiederschriftFreigabeMenuItem);

    return result;
  }


}
