Package de.nak.notendb.action

Source Code of de.nak.notendb.action.ZeigeNoteAction

package de.nak.notendb.action;

import java.util.Map;

import org.apache.struts2.interceptor.SessionAware;

import com.opensymphony.xwork2.ActionSupport;

import de.nak.notendb.model.Pruefungsleistung;
import de.nak.notendb.model.Student;
import de.nak.notendb.service.PruefungsleistungService;
import de.nak.notendb.service.StudentService;

/**
* @author Nils Foßhag
*
*         Action Klasse, welche die benötigten Daten für die Anzeige der
*         aktuellen Note eines Studenten in einem Fach bereitstellt.
*/
@SuppressWarnings("serial")
public class ZeigeNoteAction extends ActionSupport implements SessionAware {
  // Services
  private StudentService studentService;
  private PruefungsleistungService pruefungsleistungService;

  // Vom View erwartete Attribute
  private Long selektierteManipelId;
  private Long selektierteStudentId;
  private Long selektiertePruefungsfachId;
  private Map<String, Object> session;

  /**
   * Für das View werden ein Student und die zugehörige Prüfungsleistung
   * bereitgestellt. Das Student Objekt wird verwendet, um bei nicht
   * vorhandener Pruefungsleistung den Studenten in der Meldung auszugeben.
   */
  public String execute() throws Exception {
    Student student = studentService.ladeStudent(selektierteStudentId);
    Pruefungsleistung pruefungsleistung = pruefungsleistungService.ladeAktuellGueltigeLeistungZuStudentUndFach(
        selektierteStudentId, selektiertePruefungsfachId);
    session.put("student", student);
    session.put("pruefungsleistung", pruefungsleistung);
    return SUCCESS;
  }

  public StudentService getStudentService() {
    return studentService;
  }

  public void setStudentService(StudentService studentService) {
    this.studentService = studentService;
  }

  public Long getSelektiertePruefungsfachId() {
    return selektiertePruefungsfachId;
  }

  public void setSelektiertePruefungsfachId(Long selektiertePruefungsfachId) {
    this.selektiertePruefungsfachId = selektiertePruefungsfachId;
  }

  public PruefungsleistungService getPruefungsleistungService() {
    return pruefungsleistungService;
  }

  public void setPruefungsleistungService(PruefungsleistungService pruefungsleistungService) {
    this.pruefungsleistungService = pruefungsleistungService;
  }

  public Long getSelektierteStudentId() {
    return selektierteStudentId;
  }

  public void setSelektierteStudentId(Long selektierteStudentId) {
    this.selektierteStudentId = selektierteStudentId;
  }

  public Long getSelektierteManipelId() {
    return selektierteManipelId;
  }

  public void setSelektierteManipelId(Long selektierteManipelId) {
    this.selektierteManipelId = selektierteManipelId;
  }

  @Override
  public void setSession(Map<String, Object> session) {
    this.session = session;

  }
}
TOP

Related Classes of de.nak.notendb.action.ZeigeNoteAction

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.