/*
 * 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.WahlbeteiligungVerlaufGebietConstants;
import de.ivu.elect.jee.faces.Messages;

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

  private static final long serialVersionUID = 1L;

  public static final String COMPONENT_NAME = "wahlbeteiligungVerlaufGebietMeta";

  @Inject
  private transient Messages messages;

  public WahlbeteiligungVerlaufGebietMeta() {
      super();
  }

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

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

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


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

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



  public String getWahlbeteilungEinzahlMessageKey(){
    return WahlbeteiligungVerlaufGebietConstants.MESSAGE_KEY_WAHLBETEILUNG_EINZAHL;
  }

  public String getWahlbeteilungMehrzahlMessageKey(){
    return WahlbeteiligungVerlaufGebietConstants.MESSAGE_KEY_WAHLBETEILUNG_MEHRZAHL;
  }


  public String getWahlbeteilungEinzahlMessage(){
    return getMessage(getWahlbeteilungEinzahlMessageKey());
  }

  public String getWahlbeteilungMehrzahlMessage(){
    return getMessage(getWahlbeteilungMehrzahlMessageKey());
  }



  public boolean isWahlbeteilungRequired() {
    return !WahlbeteiligungVerlaufGebietConstants.WAHLBETEILUNG_NULLABLE;
  }

  public java.math.BigDecimal getWahlbeteilungDefaultValue() {
    return WahlbeteiligungVerlaufGebietConstants.WAHLBETEILUNG_DEFAULT_VALUE;
  }

  public int getWahlbeteilungMaxLength() {
    return WahlbeteiligungVerlaufGebietConstants.WAHLBETEILUNG_MAX_LENGTH;
  }

  public long getWahlbeteilungMinValue() {
    return WahlbeteiligungVerlaufGebietConstants.WAHLBETEILUNG_MIN_VALUE;
  }

  public long getWahlbeteilungMaxValue() {
    return WahlbeteiligungVerlaufGebietConstants.WAHLBETEILUNG_MAX_VALUE;
  }


  public String getGebietEinzahlMessageKey(){
    return WahlbeteiligungVerlaufGebietConstants.MESSAGE_KEY_GEBIET_ID_EINZAHL;
  }

  public String getGebietEinzahlMessage(){
    return getMessage(getGebietEinzahlMessageKey());
  }

  public boolean isGebietRequired() {
    return !WahlbeteiligungVerlaufGebietConstants.GEBIET_ID_NULLABLE;
  }


  public String getWahlbeteiligungVerlaufEinzahlMessageKey(){
    return WahlbeteiligungVerlaufGebietConstants.MESSAGE_KEY_WAHLBETEILIGUNG_VERLAUF_ID_EINZAHL;
  }

  public String getWahlbeteiligungVerlaufEinzahlMessage(){
    return getMessage(getWahlbeteiligungVerlaufEinzahlMessageKey());
  }

  public boolean isWahlbeteiligungVerlaufRequired() {
    return !WahlbeteiligungVerlaufGebietConstants.WAHLBETEILIGUNG_VERLAUF_ID_NULLABLE;
  }

}