package de.ivu.elect.business.internet.entity;

import java.io.Serializable;

import org.apache.commons.lang3.StringUtils;

import de.ivu.elect.business.praesentation.entity.PraesentationUploadServiceStatus;
import de.ivu.elect.business.praesentation.entity.PraesentationUploadServiceTyp;

public class PraesentationUploadServiceKonfiguration implements Serializable {

  public static final PraesentationUploadServiceKonfiguration EMPTY = new PraesentationUploadServiceKonfiguration(PraesentationUploadServiceStatus.DEAKTIVIERT,PraesentationUploadServiceTyp.DEAKTIVIERT, "", "", "", "");

  private static final long serialVersionUID = 1L;

  private final PraesentationUploadServiceParameter initialServiceParameter;

  private PraesentationUploadServiceStatus status;

  private PraesentationUploadServiceTyp typ;

  private String url;

  private String benutzer;

  private String passwort;

  private String konfig;

  public PraesentationUploadServiceKonfiguration(PraesentationUploadServiceStatus status, PraesentationUploadServiceTyp typ, String url, String benutzer, String passwort, String konfig) {
    this.status = status;
    this.typ = typ;
    this.url = url;
    this.benutzer = benutzer;
    this.passwort = passwort;
    this.konfig = konfig;
    this.initialServiceParameter = new PraesentationUploadServiceParameter(getTyp(), getUrl(), getBenutzer(), getPasswort(), getKonfig());
  }

  public PraesentationUploadServiceStatus getStatus() {
    return status;
  }

  public void setStatus(PraesentationUploadServiceStatus status) {
    this.status = status;
  }

  public PraesentationUploadServiceTyp getTyp() {
    return typ;
  }

  public void setTyp(PraesentationUploadServiceTyp typ) {
    this.typ = typ;
  }

  public String getUrl() {
    return url;
  }

  public void setUrl(String url) {
    this.url = url;
  }

  public String getBenutzer() {
    return benutzer;
  }

  public void setBenutzer(String benutzer) {
    this.benutzer = benutzer;
  }

  public String getPasswort() {
    return passwort;
  }

  public void setPasswort(String passwort) {
    if (!StringUtils.isBlank(passwort)) {
      this.passwort = passwort;
    }
  }

  public void resetPasswort() {
    this.passwort = null;
  }

  public String getKonfig() {
    return konfig;
  }

  public void setKonfig(String konfig) {
    this.konfig = konfig;
  }

  public PraesentationUploadServiceParameter getInitialServiceParameter() {
    return initialServiceParameter;
  }
}


