/*
 * JPA entity Metadaten
 *
 */
package de.ivu.elect.business.benutzerverwaltung.entity;

import javax.inject.Inject;
import javax.inject.Named;

import de.ivu.elect.business.benutzerverwaltung.entity.RechteKonfigurationConstants;
import de.ivu.elect.jee.faces.Messages;

@Named(RechteKonfigurationMeta.COMPONENT_NAME)
@javax.enterprise.context.ApplicationScoped // ELECT-7845
public class RechteKonfigurationMeta implements de.ivu.elect.jee.entity.Meta
{

  private static final long serialVersionUID = 1L;

  public static final String COMPONENT_NAME = "rechteKonfigurationMeta";

  @Inject
  private transient Messages messages;

  public RechteKonfigurationMeta() {
      super();
  }

  protected String getMessage(String msgKey, Object... params) {
    return messages.getMessageForMessageKey(msgKey, params);
  }

  @Override
  public String getEinzahlMessageKey(){
    return RechteKonfigurationConstants.MESSAGE_KEY_ENTITY_EINZAHL;
  }

  @Override
  public  String getMehrzahlMessageKey(){
    return RechteKonfigurationConstants.MESSAGE_KEY_ENTITY_MEHRZAHL;
  }


  @Override
  public String getEinzahlMessage() {
    return getMessage(getEinzahlMessageKey());
  }

  @Override
  public String getMehrzahlMessage(){
    return getMessage(getMehrzahlMessageKey());
  }



  public String getNurImTestmodusAktivEinzahlMessageKey(){
    return RechteKonfigurationConstants.MESSAGE_KEY_NUR_IM_TESTMODUS_AKTIV_EINZAHL;
  }

  public String getNurImTestmodusAktivMehrzahlMessageKey(){
    return RechteKonfigurationConstants.MESSAGE_KEY_NUR_IM_TESTMODUS_AKTIV_MEHRZAHL;
  }


  public String getNurImTestmodusAktivEinzahlMessage(){
    return getMessage(getNurImTestmodusAktivEinzahlMessageKey());
  }

  public String getNurImTestmodusAktivMehrzahlMessage(){
    return getMessage(getNurImTestmodusAktivMehrzahlMessageKey());
  }



  public boolean isNurImTestmodusAktivRequired() {
    return !RechteKonfigurationConstants.NUR_IM_TESTMODUS_AKTIV_NULLABLE;
  }

  public java.lang.Boolean getNurImTestmodusAktivDefaultValue() {
    return RechteKonfigurationConstants.NUR_IM_TESTMODUS_AKTIV_DEFAULT_VALUE;
  }


  public String getRechtAsStringEinzahlMessageKey(){
    return RechteKonfigurationConstants.MESSAGE_KEY_RECHT_EINZAHL;
  }

  public String getRechtAsStringMehrzahlMessageKey(){
    return RechteKonfigurationConstants.MESSAGE_KEY_RECHT_MEHRZAHL;
  }


  public String getRechtAsStringEinzahlMessage(){
    return getMessage(getRechtAsStringEinzahlMessageKey());
  }

  public String getRechtAsStringMehrzahlMessage(){
    return getMessage(getRechtAsStringMehrzahlMessageKey());
  }



  public boolean isRechtAsStringRequired() {
    return !RechteKonfigurationConstants.RECHT_NULLABLE;
  }

  public String getRechtAsStringDefaultValue() {
    return RechteKonfigurationConstants.RECHT_DEFAULT_VALUE;
  }

  public int getRechtAsStringMaxLength() {
    return RechteKonfigurationConstants.RECHT_MAX_LENGTH;
  }


  public String getMandantEinzahlMessageKey(){
    return RechteKonfigurationConstants.MESSAGE_KEY_MANDANT_ID_EINZAHL;
  }

  public String getMandantEinzahlMessage(){
    return getMessage(getMandantEinzahlMessageKey());
  }

  public boolean isMandantRequired() {
    return !RechteKonfigurationConstants.MANDANT_ID_NULLABLE;
  }

}