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

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

import de.ivu.elect.business.personenpruefung.entity.PersonenKonfliktConstants;
import de.ivu.elect.jee.faces.Messages;

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

  private static final long serialVersionUID = 1L;

  public static final String COMPONENT_NAME = "personenKonfliktMeta";

  @Inject
  private transient Messages messages;

  public PersonenKonfliktMeta() {
      super();
  }

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

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

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


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

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



  public String getPersonenKonfliktArtEinzahlMessageKey(){
    return PersonenKonfliktConstants.MESSAGE_KEY_PERSONEN_KONFLIKT_ART_EINZAHL;
  }

  public String getPersonenKonfliktArtMehrzahlMessageKey(){
    return PersonenKonfliktConstants.MESSAGE_KEY_PERSONEN_KONFLIKT_ART_MEHRZAHL;
  }


  public String getPersonenKonfliktArtEinzahlMessage(){
    return getMessage(getPersonenKonfliktArtEinzahlMessageKey());
  }

  public String getPersonenKonfliktArtMehrzahlMessage(){
    return getMessage(getPersonenKonfliktArtMehrzahlMessageKey());
  }



  public boolean isPersonenKonfliktArtRequired() {
    return !PersonenKonfliktConstants.PERSONEN_KONFLIKT_ART_NULLABLE;
  }

  public de.ivu.elect.business.personenpruefung.entity.PersonenKonfliktArt getPersonenKonfliktArtDefaultValue() {
    return PersonenKonfliktConstants.PERSONEN_KONFLIKT_ART_DEFAULT_VALUE;
  }


  public String getPersonenKonfliktStatusEinzahlMessageKey(){
    return PersonenKonfliktConstants.MESSAGE_KEY_PERSONEN_KONFLIKT_STATUS_EINZAHL;
  }

  public String getPersonenKonfliktStatusMehrzahlMessageKey(){
    return PersonenKonfliktConstants.MESSAGE_KEY_PERSONEN_KONFLIKT_STATUS_MEHRZAHL;
  }


  public String getPersonenKonfliktStatusEinzahlMessage(){
    return getMessage(getPersonenKonfliktStatusEinzahlMessageKey());
  }

  public String getPersonenKonfliktStatusMehrzahlMessage(){
    return getMessage(getPersonenKonfliktStatusMehrzahlMessageKey());
  }



  public boolean isPersonenKonfliktStatusRequired() {
    return !PersonenKonfliktConstants.PERSONEN_KONFLIKT_STATUS_NULLABLE;
  }

  public de.ivu.elect.business.personenpruefung.entity.PersonenKonfliktStatus getPersonenKonfliktStatusDefaultValue() {
    return PersonenKonfliktConstants.PERSONEN_KONFLIKT_STATUS_DEFAULT_VALUE;
  }



  public String getPersonendatenEinzahlMessageKey(){
    return PersonenKonfliktConstants.MESSAGE_KEY_PERSONENDATEN_ID_EINZAHL;
  }

  public String getPersonendatenEinzahlMessage(){
    return getMessage(getPersonendatenEinzahlMessageKey());
  }

  public boolean isPersonendatenRequired() {
    return !PersonenKonfliktConstants.PERSONENDATEN_ID_NULLABLE;
  }

}