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

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

import de.ivu.elect.business.stimmeingabe.entity.StimmeingabePlausiKonfigurationConstants;
import de.ivu.elect.jee.faces.Messages;

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

  private static final long serialVersionUID = 1L;

  public static final String COMPONENT_NAME = "stimmeingabePlausiKonfigurationMeta";

  @Inject
  private transient Messages messages;

  public StimmeingabePlausiKonfigurationMeta() {
      super();
  }

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

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

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


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

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



  public String getBeschreibungEinzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_BESCHREIBUNG_EINZAHL;
  }

  public String getBeschreibungMehrzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_BESCHREIBUNG_MEHRZAHL;
  }


  public String getBeschreibungEinzahlMessage(){
    return getMessage(getBeschreibungEinzahlMessageKey());
  }

  public String getBeschreibungMehrzahlMessage(){
    return getMessage(getBeschreibungMehrzahlMessageKey());
  }



  public boolean isBeschreibungRequired() {
    return !StimmeingabePlausiKonfigurationConstants.BESCHREIBUNG_NULLABLE;
  }

  public java.lang.String getBeschreibungDefaultValue() {
    return StimmeingabePlausiKonfigurationConstants.BESCHREIBUNG_DEFAULT_VALUE;
  }

  public int getBeschreibungMaxLength() {
    return StimmeingabePlausiKonfigurationConstants.BESCHREIBUNG_MAX_LENGTH;
  }

  public String getErgebniseingangsartEinzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_ERGEBNISART_EINZAHL;
  }

  public String getErgebniseingangsartMehrzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_ERGEBNISART_MEHRZAHL;
  }


  public String getErgebniseingangsartEinzahlMessage(){
    return getMessage(getErgebniseingangsartEinzahlMessageKey());
  }

  public String getErgebniseingangsartMehrzahlMessage(){
    return getMessage(getErgebniseingangsartMehrzahlMessageKey());
  }



  public boolean isErgebniseingangsartRequired() {
    return !StimmeingabePlausiKonfigurationConstants.PLAUSI_ERGEBNISART_NULLABLE;
  }

  public de.ivu.elect.business.stimmeingabe.entity.StimmeingabePlausiErgebniseingangsart getErgebniseingangsartDefaultValue() {
    return StimmeingabePlausiKonfigurationConstants.PLAUSI_ERGEBNISART_DEFAULT_VALUE;
  }


  public String getFehlerartEinzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_FEHLERART_EINZAHL;
  }

  public String getFehlerartMehrzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_FEHLERART_MEHRZAHL;
  }


  public String getFehlerartEinzahlMessage(){
    return getMessage(getFehlerartEinzahlMessageKey());
  }

  public String getFehlerartMehrzahlMessage(){
    return getMessage(getFehlerartMehrzahlMessageKey());
  }



  public boolean isFehlerartRequired() {
    return !StimmeingabePlausiKonfigurationConstants.PLAUSI_FEHLERART_NULLABLE;
  }

  public de.ivu.elect.business.stimmeingabe.entity.StimmeingabePlausiFehlerart getFehlerartDefaultValue() {
    return StimmeingabePlausiKonfigurationConstants.PLAUSI_FEHLERART_DEFAULT_VALUE;
  }


  public String getFehlermeldungFormatEinzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_FEHLERMELDUNG_EINZAHL;
  }

  public String getFehlermeldungFormatMehrzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_FEHLERMELDUNG_MEHRZAHL;
  }


  public String getFehlermeldungFormatEinzahlMessage(){
    return getMessage(getFehlermeldungFormatEinzahlMessageKey());
  }

  public String getFehlermeldungFormatMehrzahlMessage(){
    return getMessage(getFehlermeldungFormatMehrzahlMessageKey());
  }



  public boolean isFehlermeldungFormatRequired() {
    return !StimmeingabePlausiKonfigurationConstants.PLAUSI_FEHLERMELDUNG_NULLABLE;
  }

  public java.lang.String getFehlermeldungFormatDefaultValue() {
    return StimmeingabePlausiKonfigurationConstants.PLAUSI_FEHLERMELDUNG_DEFAULT_VALUE;
  }

  public int getFehlermeldungFormatMaxLength() {
    return StimmeingabePlausiKonfigurationConstants.PLAUSI_FEHLERMELDUNG_MAX_LENGTH;
  }

  public String getFehlerschluesselEinzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_FEHLERSCHLUESSEL_EINZAHL;
  }

  public String getFehlerschluesselMehrzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_FEHLERSCHLUESSEL_MEHRZAHL;
  }


  public String getFehlerschluesselEinzahlMessage(){
    return getMessage(getFehlerschluesselEinzahlMessageKey());
  }

  public String getFehlerschluesselMehrzahlMessage(){
    return getMessage(getFehlerschluesselMehrzahlMessageKey());
  }



  public boolean isFehlerschluesselRequired() {
    return !StimmeingabePlausiKonfigurationConstants.PLAUSI_FEHLERSCHLUESSEL_NULLABLE;
  }

  public java.lang.String getFehlerschluesselDefaultValue() {
    return StimmeingabePlausiKonfigurationConstants.PLAUSI_FEHLERSCHLUESSEL_DEFAULT_VALUE;
  }

  public int getFehlerschluesselMaxLength() {
    return StimmeingabePlausiKonfigurationConstants.PLAUSI_FEHLERSCHLUESSEL_MAX_LENGTH;
  }

  public String getGebietsartEinzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_GEBIETSART_EINZAHL;
  }

  public String getGebietsartMehrzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_GEBIETSART_MEHRZAHL;
  }


  public String getGebietsartEinzahlMessage(){
    return getMessage(getGebietsartEinzahlMessageKey());
  }

  public String getGebietsartMehrzahlMessage(){
    return getMessage(getGebietsartMehrzahlMessageKey());
  }



  public boolean isGebietsartRequired() {
    return !StimmeingabePlausiKonfigurationConstants.PLAUSI_GEBIETSART_NULLABLE;
  }

  public de.ivu.elect.business.stimmeingabe.entity.StimmeingabePlausiGebietsart getGebietsartDefaultValue() {
    return StimmeingabePlausiKonfigurationConstants.PLAUSI_GEBIETSART_DEFAULT_VALUE;
  }


  public String getStatusEinzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_STATUS_EINZAHL;
  }

  public String getStatusMehrzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_PLAUSI_STATUS_MEHRZAHL;
  }


  public String getStatusEinzahlMessage(){
    return getMessage(getStatusEinzahlMessageKey());
  }

  public String getStatusMehrzahlMessage(){
    return getMessage(getStatusMehrzahlMessageKey());
  }



  public boolean isStatusRequired() {
    return !StimmeingabePlausiKonfigurationConstants.PLAUSI_STATUS_NULLABLE;
  }

  public de.ivu.elect.business.stimmeingabe.entity.StimmeingabePlausiStatus getStatusDefaultValue() {
    return StimmeingabePlausiKonfigurationConstants.PLAUSI_STATUS_DEFAULT_VALUE;
  }


  public String getTypEinzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_STIMMEINGABE_PLAUSI_TYP_EINZAHL;
  }

  public String getTypMehrzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_STIMMEINGABE_PLAUSI_TYP_MEHRZAHL;
  }


  public String getTypEinzahlMessage(){
    return getMessage(getTypEinzahlMessageKey());
  }

  public String getTypMehrzahlMessage(){
    return getMessage(getTypMehrzahlMessageKey());
  }



  public boolean isTypRequired() {
    return !StimmeingabePlausiKonfigurationConstants.STIMMEINGABE_PLAUSI_TYP_NULLABLE;
  }

  public de.ivu.elect.business.stimmeingabe.entity.StimmeingabePlausiTyp getTypDefaultValue() {
    return StimmeingabePlausiKonfigurationConstants.STIMMEINGABE_PLAUSI_TYP_DEFAULT_VALUE;
  }



  public String getCustomDataStorageEinzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_CUSTOM_DATA_STORAGE_ID_EINZAHL;
  }

  public String getCustomDataStorageEinzahlMessage(){
    return getMessage(getCustomDataStorageEinzahlMessageKey());
  }

  public boolean isCustomDataStorageRequired() {
    return !StimmeingabePlausiKonfigurationConstants.CUSTOM_DATA_STORAGE_ID_NULLABLE;
  }


  public String getWahlEinzahlMessageKey(){
    return StimmeingabePlausiKonfigurationConstants.MESSAGE_KEY_WAHL_ID_EINZAHL;
  }

  public String getWahlEinzahlMessage(){
    return getMessage(getWahlEinzahlMessageKey());
  }

  public boolean isWahlRequired() {
    return !StimmeingabePlausiKonfigurationConstants.WAHL_ID_NULLABLE;
  }

}