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

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

import de.ivu.elect.business.mandant.entity.MandantConstants;
import de.ivu.elect.jee.faces.Messages;

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

  private static final long serialVersionUID = 1L;

  public static final String COMPONENT_NAME = "mandantMeta";

  @Inject
  private transient Messages messages;

  public MandantMeta() {
      super();
  }

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

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

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


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

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



  public String getArtEinzahlMessageKey(){
    return MandantConstants.MESSAGE_KEY_ART_EINZAHL;
  }

  public String getArtMehrzahlMessageKey(){
    return MandantConstants.MESSAGE_KEY_ART_MEHRZAHL;
  }


  public String getArtEinzahlMessage(){
    return getMessage(getArtEinzahlMessageKey());
  }

  public String getArtMehrzahlMessage(){
    return getMessage(getArtMehrzahlMessageKey());
  }



  public boolean isArtRequired() {
    return !MandantConstants.ART_NULLABLE;
  }

  public de.ivu.elect.business.mandant.entity.MandantArt getArtDefaultValue() {
    return MandantConstants.ART_DEFAULT_VALUE;
  }


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

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


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

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



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

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

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

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

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


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

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



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

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

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

  public String getNummerEinzahlMessageKey(){
    return MandantConstants.MESSAGE_KEY_NUMMER_EINZAHL;
  }

  public String getNummerMehrzahlMessageKey(){
    return MandantConstants.MESSAGE_KEY_NUMMER_MEHRZAHL;
  }


  public String getNummerEinzahlMessage(){
    return getMessage(getNummerEinzahlMessageKey());
  }

  public String getNummerMehrzahlMessage(){
    return getMessage(getNummerMehrzahlMessageKey());
  }



  public boolean isNummerRequired() {
    return !MandantConstants.NUMMER_NULLABLE;
  }

  public java.lang.Long getNummerDefaultValue() {
    return MandantConstants.NUMMER_DEFAULT_VALUE;
  }

  public int getNummerMaxLength() {
    return MandantConstants.NUMMER_MAX_LENGTH;
  }

  public long getNummerMinValue() {
    return MandantConstants.NUMMER_MIN_VALUE;
  }

  public long getNummerMaxValue() {
    return MandantConstants.NUMMER_MAX_VALUE;
  }

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

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


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

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



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

  public de.ivu.elect.business.mandant.entity.MandantStatus getStatusDefaultValue() {
    return MandantConstants.STATUS_DEFAULT_VALUE;
  }


  public String getSystemGebietsebeneEinzahlMessageKey(){
    return MandantConstants.MESSAGE_KEY_SYSTEM_GEBIETSEBENE_EINZAHL;
  }

  public String getSystemGebietsebeneMehrzahlMessageKey(){
    return MandantConstants.MESSAGE_KEY_SYSTEM_GEBIETSEBENE_MEHRZAHL;
  }


  public String getSystemGebietsebeneEinzahlMessage(){
    return getMessage(getSystemGebietsebeneEinzahlMessageKey());
  }

  public String getSystemGebietsebeneMehrzahlMessage(){
    return getMessage(getSystemGebietsebeneMehrzahlMessageKey());
  }



  public boolean isSystemGebietsebeneRequired() {
    return !MandantConstants.SYSTEM_GEBIETSEBENE_NULLABLE;
  }

  public de.ivu.elect.business.system.entity.SystemGebietsebene getSystemGebietsebeneDefaultValue() {
    return MandantConstants.SYSTEM_GEBIETSEBENE_DEFAULT_VALUE;
  }


  public String getVerantworteteGebieteEinzahlMessageKey(){
    return MandantConstants.MESSAGE_KEY_VERANTWORTETE_GEBIETE_EINZAHL;
  }

  public String getVerantworteteGebieteMehrzahlMessageKey(){
    return MandantConstants.MESSAGE_KEY_VERANTWORTETE_GEBIETE_MEHRZAHL;
  }


  public String getVerantworteteGebieteEinzahlMessage(){
    return getMessage(getVerantworteteGebieteEinzahlMessageKey());
  }

  public String getVerantworteteGebieteMehrzahlMessage(){
    return getMessage(getVerantworteteGebieteMehrzahlMessageKey());
  }



  public boolean isVerantworteteGebieteRequired() {
    return !MandantConstants.VERANTWORTETE_GEBIETE_NULLABLE;
  }

  public java.lang.String getVerantworteteGebieteDefaultValue() {
    return MandantConstants.VERANTWORTETE_GEBIETE_DEFAULT_VALUE;
  }

  public int getVerantworteteGebieteMaxLength() {
    return MandantConstants.VERANTWORTETE_GEBIETE_MAX_LENGTH;
  }

}