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

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

import de.ivu.elect.business.staat.entity.StaatConstants;
import de.ivu.elect.jee.faces.Messages;

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

  private static final long serialVersionUID = 1L;

  public static final String COMPONENT_NAME = "staatMeta";

  @Inject
  private transient Messages messages;

  public StaatMeta() {
      super();
  }

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

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

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


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

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



  public String getCustomCodeStaatEinzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_CODE_STAAT_EINZAHL;
  }

  public String getCustomCodeStaatMehrzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_CODE_STAAT_MEHRZAHL;
  }


  public String getCustomCodeStaatEinzahlMessage(){
    return getMessage(getCustomCodeStaatEinzahlMessageKey());
  }

  public String getCustomCodeStaatMehrzahlMessage(){
    return getMessage(getCustomCodeStaatMehrzahlMessageKey());
  }



  public boolean isCustomCodeStaatRequired() {
    return !StaatConstants.CODE_STAAT_NULLABLE;
  }

  public java.lang.String getCustomCodeStaatDefaultValue() {
    return StaatConstants.CODE_STAAT_DEFAULT_VALUE;
  }

  public int getCustomCodeStaatMaxLength() {
    return StaatConstants.CODE_STAAT_MAX_LENGTH;
  }

  public String getCustomCodeStaatsangehoerigkeitEinzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_CODE_STAATSANGEHOERIGKEIT_EINZAHL;
  }

  public String getCustomCodeStaatsangehoerigkeitMehrzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_CODE_STAATSANGEHOERIGKEIT_MEHRZAHL;
  }


  public String getCustomCodeStaatsangehoerigkeitEinzahlMessage(){
    return getMessage(getCustomCodeStaatsangehoerigkeitEinzahlMessageKey());
  }

  public String getCustomCodeStaatsangehoerigkeitMehrzahlMessage(){
    return getMessage(getCustomCodeStaatsangehoerigkeitMehrzahlMessageKey());
  }



  public boolean isCustomCodeStaatsangehoerigkeitRequired() {
    return !StaatConstants.CODE_STAATSANGEHOERIGKEIT_NULLABLE;
  }

  public java.lang.String getCustomCodeStaatsangehoerigkeitDefaultValue() {
    return StaatConstants.CODE_STAATSANGEHOERIGKEIT_DEFAULT_VALUE;
  }

  public int getCustomCodeStaatsangehoerigkeitMaxLength() {
    return StaatConstants.CODE_STAATSANGEHOERIGKEIT_MAX_LENGTH;
  }

  public String getEuStaatEinzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_EU_STAAT_EINZAHL;
  }

  public String getEuStaatMehrzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_EU_STAAT_MEHRZAHL;
  }


  public String getEuStaatEinzahlMessage(){
    return getMessage(getEuStaatEinzahlMessageKey());
  }

  public String getEuStaatMehrzahlMessage(){
    return getMessage(getEuStaatMehrzahlMessageKey());
  }



  public boolean isEuStaatRequired() {
    return !StaatConstants.EU_STAAT_NULLABLE;
  }

  public java.lang.Boolean getEuStaatDefaultValue() {
    return StaatConstants.EU_STAAT_DEFAULT_VALUE;
  }


  public String getIso3166Alpha2EinzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_ISO3166_ALPHA2_EINZAHL;
  }

  public String getIso3166Alpha2MehrzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_ISO3166_ALPHA2_MEHRZAHL;
  }


  public String getIso3166Alpha2EinzahlMessage(){
    return getMessage(getIso3166Alpha2EinzahlMessageKey());
  }

  public String getIso3166Alpha2MehrzahlMessage(){
    return getMessage(getIso3166Alpha2MehrzahlMessageKey());
  }



  public boolean isIso3166Alpha2Required() {
    return !StaatConstants.ISO3166_ALPHA2_NULLABLE;
  }

  public java.lang.String getIso3166Alpha2DefaultValue() {
    return StaatConstants.ISO3166_ALPHA2_DEFAULT_VALUE;
  }

  public int getIso3166Alpha2MaxLength() {
    return StaatConstants.ISO3166_ALPHA2_MAX_LENGTH;
  }

  public String getIso3166NumerischEinzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_ISO3166_NUMERISCH_EINZAHL;
  }

  public String getIso3166NumerischMehrzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_ISO3166_NUMERISCH_MEHRZAHL;
  }


  public String getIso3166NumerischEinzahlMessage(){
    return getMessage(getIso3166NumerischEinzahlMessageKey());
  }

  public String getIso3166NumerischMehrzahlMessage(){
    return getMessage(getIso3166NumerischMehrzahlMessageKey());
  }



  public boolean isIso3166NumerischRequired() {
    return !StaatConstants.ISO3166_NUMERISCH_NULLABLE;
  }

  public java.lang.String getIso3166NumerischDefaultValue() {
    return StaatConstants.ISO3166_NUMERISCH_DEFAULT_VALUE;
  }

  public int getIso3166NumerischMaxLength() {
    return StaatConstants.ISO3166_NUMERISCH_MAX_LENGTH;
  }

  public String getNameStaatEinzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_NAME_STAAT_EINZAHL;
  }

  public String getNameStaatMehrzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_NAME_STAAT_MEHRZAHL;
  }


  public String getNameStaatEinzahlMessage(){
    return getMessage(getNameStaatEinzahlMessageKey());
  }

  public String getNameStaatMehrzahlMessage(){
    return getMessage(getNameStaatMehrzahlMessageKey());
  }



  public boolean isNameStaatRequired() {
    return !StaatConstants.NAME_STAAT_NULLABLE;
  }

  public java.lang.String getNameStaatDefaultValue() {
    return StaatConstants.NAME_STAAT_DEFAULT_VALUE;
  }

  public int getNameStaatMaxLength() {
    return StaatConstants.NAME_STAAT_MAX_LENGTH;
  }

  public String getNameStaatsangehoerigkeitEinzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_NAME_STAATSANGEHOERIGKEIT_EINZAHL;
  }

  public String getNameStaatsangehoerigkeitMehrzahlMessageKey(){
    return StaatConstants.MESSAGE_KEY_NAME_STAATSANGEHOERIGKEIT_MEHRZAHL;
  }


  public String getNameStaatsangehoerigkeitEinzahlMessage(){
    return getMessage(getNameStaatsangehoerigkeitEinzahlMessageKey());
  }

  public String getNameStaatsangehoerigkeitMehrzahlMessage(){
    return getMessage(getNameStaatsangehoerigkeitMehrzahlMessageKey());
  }



  public boolean isNameStaatsangehoerigkeitRequired() {
    return !StaatConstants.NAME_STAATSANGEHOERIGKEIT_NULLABLE;
  }

  public java.lang.String getNameStaatsangehoerigkeitDefaultValue() {
    return StaatConstants.NAME_STAATSANGEHOERIGKEIT_DEFAULT_VALUE;
  }

  public int getNameStaatsangehoerigkeitMaxLength() {
    return StaatConstants.NAME_STAATSANGEHOERIGKEIT_MAX_LENGTH;
  }


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

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

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

}