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

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

import de.ivu.elect.business.dokumente.entity.DokumentVorlageConstants;
import de.ivu.elect.jee.faces.Messages;

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

  private static final long serialVersionUID = 1L;

  public static final String COMPONENT_NAME = "dokumentVorlageMeta";

  @Inject
  private transient Messages messages;

  public DokumentVorlageMeta() {
      super();
  }

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

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

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


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

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



  public String getAnlageArtEinzahlMessageKey(){
    return DokumentVorlageConstants.MESSAGE_KEY_ANLAGE_ART_EINZAHL;
  }

  public String getAnlageArtMehrzahlMessageKey(){
    return DokumentVorlageConstants.MESSAGE_KEY_ANLAGE_ART_MEHRZAHL;
  }


  public String getAnlageArtEinzahlMessage(){
    return getMessage(getAnlageArtEinzahlMessageKey());
  }

  public String getAnlageArtMehrzahlMessage(){
    return getMessage(getAnlageArtMehrzahlMessageKey());
  }



  public boolean isAnlageArtRequired() {
    return !DokumentVorlageConstants.ANLAGE_ART_NULLABLE;
  }

  public de.ivu.elect.business.dokumente.entity.DokumentVorlageAnlageArt getAnlageArtDefaultValue() {
    return DokumentVorlageConstants.ANLAGE_ART_DEFAULT_VALUE;
  }


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

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


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

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



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

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

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

  public String getDokumentVorlageArtEinzahlMessageKey(){
    return DokumentVorlageConstants.MESSAGE_KEY_DOKUMENT_VORLAGE_ART_EINZAHL;
  }

  public String getDokumentVorlageArtMehrzahlMessageKey(){
    return DokumentVorlageConstants.MESSAGE_KEY_DOKUMENT_VORLAGE_ART_MEHRZAHL;
  }


  public String getDokumentVorlageArtEinzahlMessage(){
    return getMessage(getDokumentVorlageArtEinzahlMessageKey());
  }

  public String getDokumentVorlageArtMehrzahlMessage(){
    return getMessage(getDokumentVorlageArtMehrzahlMessageKey());
  }



  public boolean isDokumentVorlageArtRequired() {
    return !DokumentVorlageConstants.DOKUMENT_VORLAGE_ART_NULLABLE;
  }

  public de.ivu.elect.business.dokumente.entity.DokumentVorlageArt getDokumentVorlageArtDefaultValue() {
    return DokumentVorlageConstants.DOKUMENT_VORLAGE_ART_DEFAULT_VALUE;
  }


  public String getNameEinzahlMessageKey(){
    return DokumentVorlageConstants.MESSAGE_KEY_NAME_EINZAHL;
  }

  public String getNameMehrzahlMessageKey(){
    return DokumentVorlageConstants.MESSAGE_KEY_NAME_MEHRZAHL;
  }


  public String getNameEinzahlMessage(){
    return getMessage(getNameEinzahlMessageKey());
  }

  public String getNameMehrzahlMessage(){
    return getMessage(getNameMehrzahlMessageKey());
  }



  public boolean isNameRequired() {
    return !DokumentVorlageConstants.NAME_NULLABLE;
  }

  public java.lang.String getNameDefaultValue() {
    return DokumentVorlageConstants.NAME_DEFAULT_VALUE;
  }

  public int getNameMaxLength() {
    return DokumentVorlageConstants.NAME_MAX_LENGTH;
  }

  public String getVersionsnummerEinzahlMessageKey(){
    return DokumentVorlageConstants.MESSAGE_KEY_VERSIONSNUMMER_EINZAHL;
  }

  public String getVersionsnummerMehrzahlMessageKey(){
    return DokumentVorlageConstants.MESSAGE_KEY_VERSIONSNUMMER_MEHRZAHL;
  }


  public String getVersionsnummerEinzahlMessage(){
    return getMessage(getVersionsnummerEinzahlMessageKey());
  }

  public String getVersionsnummerMehrzahlMessage(){
    return getMessage(getVersionsnummerMehrzahlMessageKey());
  }



  public boolean isVersionsnummerRequired() {
    return !DokumentVorlageConstants.VERSIONSNUMMER_NULLABLE;
  }

  public java.lang.String getVersionsnummerDefaultValue() {
    return DokumentVorlageConstants.VERSIONSNUMMER_DEFAULT_VALUE;
  }

  public int getVersionsnummerMaxLength() {
    return DokumentVorlageConstants.VERSIONSNUMMER_MAX_LENGTH;
  }


  public String getDateiImportEinzahlMessageKey(){
    return DokumentVorlageConstants.MESSAGE_KEY_DATEI_IMPORT_ID_EINZAHL;
  }

  public String getDateiImportEinzahlMessage(){
    return getMessage(getDateiImportEinzahlMessageKey());
  }

  public boolean isDateiImportRequired() {
    return !DokumentVorlageConstants.DATEI_IMPORT_ID_NULLABLE;
  }


  public String getWahlterminEinzahlMessageKey(){
    return DokumentVorlageConstants.MESSAGE_KEY_WAHLTERMIN_ID_EINZAHL;
  }

  public String getWahlterminEinzahlMessage(){
    return getMessage(getWahlterminEinzahlMessageKey());
  }

  public boolean isWahlterminRequired() {
    return !DokumentVorlageConstants.WAHLTERMIN_ID_NULLABLE;
  }


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

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

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

}