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

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

import de.ivu.elect.business.wahlbeteiligung.entity.WahlbeteiligungAuswertungConstants;
import de.ivu.elect.jee.faces.Messages;

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

  private static final long serialVersionUID = 1L;

  public static final String COMPONENT_NAME = "wahlbeteiligungAuswertungMeta";

  @Inject
  private transient Messages messages;

  public WahlbeteiligungAuswertungMeta() {
      super();
  }

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

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

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


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

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



  public String getBemerkungEinzahlMessageKey(){
    return WahlbeteiligungAuswertungConstants.MESSAGE_KEY_BEMERKUNG_EINZAHL;
  }

  public String getBemerkungMehrzahlMessageKey(){
    return WahlbeteiligungAuswertungConstants.MESSAGE_KEY_BEMERKUNG_MEHRZAHL;
  }


  public String getBemerkungEinzahlMessage(){
    return getMessage(getBemerkungEinzahlMessageKey());
  }

  public String getBemerkungMehrzahlMessage(){
    return getMessage(getBemerkungMehrzahlMessageKey());
  }



  public boolean isBemerkungRequired() {
    return !WahlbeteiligungAuswertungConstants.BEMERKUNG_NULLABLE;
  }

  public java.lang.String getBemerkungDefaultValue() {
    return WahlbeteiligungAuswertungConstants.BEMERKUNG_DEFAULT_VALUE;
  }

  public int getBemerkungMaxLength() {
    return WahlbeteiligungAuswertungConstants.BEMERKUNG_MAX_LENGTH;
  }

  public String getDatumEinzahlMessageKey(){
    return WahlbeteiligungAuswertungConstants.MESSAGE_KEY_DATUM_EINZAHL;
  }

  public String getDatumMehrzahlMessageKey(){
    return WahlbeteiligungAuswertungConstants.MESSAGE_KEY_DATUM_MEHRZAHL;
  }


  public String getDatumEinzahlMessage(){
    return getMessage(getDatumEinzahlMessageKey());
  }

  public String getDatumMehrzahlMessage(){
    return getMessage(getDatumMehrzahlMessageKey());
  }



  public boolean isDatumRequired() {
    return !WahlbeteiligungAuswertungConstants.DATUM_NULLABLE;
  }

  public java.util.Date getDatumDefaultValue() {
    return WahlbeteiligungAuswertungConstants.DATUM_DEFAULT_VALUE;
  }


  public String getStatusEinzahlMessageKey(){
    return WahlbeteiligungAuswertungConstants.MESSAGE_KEY_STATUS_EINZAHL;
  }

  public String getStatusMehrzahlMessageKey(){
    return WahlbeteiligungAuswertungConstants.MESSAGE_KEY_STATUS_MEHRZAHL;
  }


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

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



  public boolean isStatusRequired() {
    return !WahlbeteiligungAuswertungConstants.STATUS_NULLABLE;
  }

  public de.ivu.elect.business.wahlbeteiligung.entity.WahlbeteiligungAuswertungStatus getStatusDefaultValue() {
    return WahlbeteiligungAuswertungConstants.STATUS_DEFAULT_VALUE;
  }


  public String getTypEinzahlMessageKey(){
    return WahlbeteiligungAuswertungConstants.MESSAGE_KEY_TYP_EINZAHL;
  }

  public String getTypMehrzahlMessageKey(){
    return WahlbeteiligungAuswertungConstants.MESSAGE_KEY_TYP_MEHRZAHL;
  }


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

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



  public boolean isTypRequired() {
    return !WahlbeteiligungAuswertungConstants.TYP_NULLABLE;
  }

  public de.ivu.elect.business.wahlbeteiligung.entity.WahlbeteiligungAuswertungTyp getTypDefaultValue() {
    return WahlbeteiligungAuswertungConstants.TYP_DEFAULT_VALUE;
  }



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

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

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

}