package de.ivu.elect.business.security.boundary;

import java.io.Serializable;

import javax.ejb.Stateless;
import javax.ejb.TransactionAttribute;
import javax.ejb.TransactionAttributeType;
import javax.inject.Inject;

import de.ivu.elect.business.benutzerverwaltung.boundary.BenutzerDAO;
import de.ivu.elect.business.benutzerverwaltung.entity.BenutzerPK;

@Stateless
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public class TfaProviderService implements Serializable {

  private static final long serialVersionUID = 1L;

  @Inject
  private transient BenutzerDAO benutzerDAO;

  public void schreibeTanListe(BenutzerPK benutzerPK, String tanListe) {
    benutzerDAO.findByPrimaryKey(benutzerPK).setTanliste(tanListe);
  }

  public void schreibeHotpSecret(BenutzerPK benutzerPK, String hotpSecret) {
    benutzerDAO.findByPrimaryKey(benutzerPK).setHotpSecret(hotpSecret);
  }

  public String leseTanListe(BenutzerPK benutzerPK) {
    return benutzerDAO.findByPrimaryKey(benutzerPK).getTanliste();
  }

  public String leseHotpSecret(BenutzerPK benutzerPK) {
    return benutzerDAO.findByPrimaryKey(benutzerPK).getHotpSecret();
  }
}
