
package de.ivu.elect.exchange.benutzer.csv;

import java.util.List;

import org.jsefa.csv.annotation.CsvDataType;
import org.jsefa.csv.annotation.CsvField;
import org.jsefa.csv.annotation.CsvSubRecordList;
import org.jsefa.rbf.annotation.Record;

import de.ivu.elect.business.person.entity.Geschlecht;
import de.ivu.elect.exchange.benutzer.DefaultBenutzer;
import de.ivu.elect.exchange.benutzer.DefaultRolle;
import de.ivu.jsefa.CsvHeader;

/**
 * Urspüngliches Standard-CSV-Format. Wird noch für Standard-XML-Format verwendet.
 *
 * Deprecated: Bitte überarbeitetes Format <code>DefaultBenutzerCsvDTO</code> verwenden!
 */
@Deprecated
@CsvDataType(defaultPrefix = "BEN")
public class DefaultCsvBenutzer implements DefaultBenutzer {

  @CsvField(pos = 1)
  @CsvHeader("Benutzerkennung")
  private String benutzerkennung;

  @CsvField(pos = 2)
  @CsvHeader("Passwort")
  private String passwort;

  @CsvField(pos = 3)
  @CsvHeader("Salt")
  private String salt;

  @CsvField(pos = 4)
  @CsvHeader("Aktiv")
  private Boolean aktiv;

  @CsvField(pos = 5)
  @CsvHeader("Bemerkung")
  private String bemerkung;

  @CsvField(pos = 6)
  @CsvHeader("Familienname")
  private String familienname;

  @CsvField(pos = 7)
  @CsvHeader("Vorname")
  private String vorname;

  @CsvField(pos = 8)
  @CsvHeader("Geschlecht")
  private Geschlecht geschlecht;

  @CsvField(pos = 9)
  @CsvHeader("Muss Passwort wechseln")
  private Boolean mussPasswortWechseln;

  @CsvSubRecordList(pos = 10, records = @Record(prefix = "ROL"))
  private List<DefaultRolle> rollen;

  @Override
  public String getBenutzerkennung() {
    return benutzerkennung;
  }

  @Override
  public void setBenutzerkennung(String benutzerkennung) {
    this.benutzerkennung = benutzerkennung;
  }

  @Override
  public String getPasswort() {
    return passwort;
  }

  @Override
  public void setPasswort(String passwort) {
    this.passwort = passwort;
  }

  @Override
  public String getSalt() {
    return salt;
  }

  @Override
  public void setSalt(String salt) {
    this.salt = salt;
  }

  @Override
  public Boolean isAktiv() {
    return aktiv;
  }

  @Override
  public void setAktiv(Boolean aktiv) {
    this.aktiv = aktiv;
  }

  @Override
  public String getBemerkung() {
    return bemerkung;
  }

  @Override
  public void setBemerkung(String bemerkung) {
    this.bemerkung = bemerkung;
  }

  @Override
  public String getFamilienname() {
    return familienname;
  }

  @Override
  public void setFamilienname(String familienname) {
    this.familienname = familienname;
  }

  @Override
  public String getVorname() {
    return vorname;
  }

  @Override
  public void setVorname(String vorname) {
    this.vorname = vorname;
  }

  @Override
  public Geschlecht getGeschlecht() {
    return geschlecht;
  }

  @Override
  public void setGeschlecht(Geschlecht geschlecht) {
    this.geschlecht = geschlecht;
  }

  @Override
  public List<DefaultRolle> getRollen() {
    return rollen;
  }

  @Override
  public void setRollen(List<DefaultRolle> rollen) {
    this.rollen = rollen;
  }

  @Override
  public void addRolle(DefaultRolle rolle) {
    getRollen().add(rolle);
  }

  @Override
  public Boolean getMussPasswortWechseln() {
    return mussPasswortWechseln;
  }

  @Override
  public void setMussPasswortWechseln(Boolean mussPasswortWechseln) {
    this.mussPasswortWechseln = mussPasswortWechseln;
  }
}
