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

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

import de.ivu.elect.business.geodata.entity.GeodataOrtConstants;
import de.ivu.elect.jee.faces.Messages;

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

  private static final long serialVersionUID = 1L;

  public static final String COMPONENT_NAME = "geodataOrtMeta";

  @Inject
  private transient Messages messages;

  public GeodataOrtMeta() {
      super();
  }

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

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

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


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

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



  public String getLatitudeEinzahlMessageKey(){
    return GeodataOrtConstants.MESSAGE_KEY_LATITUDE_EINZAHL;
  }

  public String getLatitudeMehrzahlMessageKey(){
    return GeodataOrtConstants.MESSAGE_KEY_LATITUDE_MEHRZAHL;
  }


  public String getLatitudeEinzahlMessage(){
    return getMessage(getLatitudeEinzahlMessageKey());
  }

  public String getLatitudeMehrzahlMessage(){
    return getMessage(getLatitudeMehrzahlMessageKey());
  }



  public boolean isLatitudeRequired() {
    return !GeodataOrtConstants.LATITUDE_NULLABLE;
  }

  public java.lang.Double getLatitudeDefaultValue() {
    return GeodataOrtConstants.LATITUDE_DEFAULT_VALUE;
  }

  public int getLatitudeMaxLength() {
    return GeodataOrtConstants.LATITUDE_MAX_LENGTH;
  }

  public long getLatitudeMinValue() {
    return GeodataOrtConstants.LATITUDE_MIN_VALUE;
  }

  public long getLatitudeMaxValue() {
    return GeodataOrtConstants.LATITUDE_MAX_VALUE;
  }

  public String getLongitudeEinzahlMessageKey(){
    return GeodataOrtConstants.MESSAGE_KEY_LONGITUDE_EINZAHL;
  }

  public String getLongitudeMehrzahlMessageKey(){
    return GeodataOrtConstants.MESSAGE_KEY_LONGITUDE_MEHRZAHL;
  }


  public String getLongitudeEinzahlMessage(){
    return getMessage(getLongitudeEinzahlMessageKey());
  }

  public String getLongitudeMehrzahlMessage(){
    return getMessage(getLongitudeMehrzahlMessageKey());
  }



  public boolean isLongitudeRequired() {
    return !GeodataOrtConstants.LONGITUDE_NULLABLE;
  }

  public java.lang.Double getLongitudeDefaultValue() {
    return GeodataOrtConstants.LONGITUDE_DEFAULT_VALUE;
  }

  public int getLongitudeMaxLength() {
    return GeodataOrtConstants.LONGITUDE_MAX_LENGTH;
  }

  public long getLongitudeMinValue() {
    return GeodataOrtConstants.LONGITUDE_MIN_VALUE;
  }

  public long getLongitudeMaxValue() {
    return GeodataOrtConstants.LONGITUDE_MAX_VALUE;
  }

  public String getOrtsnameEinzahlMessageKey(){
    return GeodataOrtConstants.MESSAGE_KEY_ORTSNAME_EINZAHL;
  }

  public String getOrtsnameMehrzahlMessageKey(){
    return GeodataOrtConstants.MESSAGE_KEY_ORTSNAME_MEHRZAHL;
  }


  public String getOrtsnameEinzahlMessage(){
    return getMessage(getOrtsnameEinzahlMessageKey());
  }

  public String getOrtsnameMehrzahlMessage(){
    return getMessage(getOrtsnameMehrzahlMessageKey());
  }



  public boolean isOrtsnameRequired() {
    return !GeodataOrtConstants.ORTSNAME_NULLABLE;
  }

  public java.lang.String getOrtsnameDefaultValue() {
    return GeodataOrtConstants.ORTSNAME_DEFAULT_VALUE;
  }

  public int getOrtsnameMaxLength() {
    return GeodataOrtConstants.ORTSNAME_MAX_LENGTH;
  }

  public String getOrtsteilnameEinzahlMessageKey(){
    return GeodataOrtConstants.MESSAGE_KEY_ORTSTEILNAME_EINZAHL;
  }

  public String getOrtsteilnameMehrzahlMessageKey(){
    return GeodataOrtConstants.MESSAGE_KEY_ORTSTEILNAME_MEHRZAHL;
  }


  public String getOrtsteilnameEinzahlMessage(){
    return getMessage(getOrtsteilnameEinzahlMessageKey());
  }

  public String getOrtsteilnameMehrzahlMessage(){
    return getMessage(getOrtsteilnameMehrzahlMessageKey());
  }



  public boolean isOrtsteilnameRequired() {
    return !GeodataOrtConstants.ORTSTEILNAME_NULLABLE;
  }

  public java.lang.String getOrtsteilnameDefaultValue() {
    return GeodataOrtConstants.ORTSTEILNAME_DEFAULT_VALUE;
  }

  public int getOrtsteilnameMaxLength() {
    return GeodataOrtConstants.ORTSTEILNAME_MAX_LENGTH;
  }

}