package de.ivu.elect.business.stimmeingabe.entity;

import de.ivu.elect.jee.faces.FacesContextUtil;

@javax.enterprise.inject.Vetoed
public class ZwischensummeEingabeProperties 
extends de.ivu.elect.business.stimmeingabe.entity.StimmeingabeProperties
{

   private final SummenIndexProperty summenIndexProperty;
    
   private final SummenNameProperty summenNameProperty;
    


  public ZwischensummeEingabeProperties(ZwischensummeEingabe entity) {
          super(entity);
        
    this.summenIndexProperty = new SummenIndexProperty(entity);
            this.summenNameProperty = new SummenNameProperty(entity);
          }

  private static ZwischensummeEingabeMeta getMetaData() {
    return FacesContextUtil.getElValue("#{zwischensummeEingabeMeta}", ZwischensummeEingabeMeta.class);
  }



    @javax.enterprise.inject.Vetoed
    @Deprecated // ELECT-4623 Nicht mehr neu verwenden, TODO Verwendung reduzieren
   public static class SummenIndexProperty extends
      de.ivu.elect.jee.presentation.dynamicform.AbstractLongProperty
  {

    protected final ZwischensummeEingabe entity;

    public SummenIndexProperty(ZwischensummeEingabe entity) {
      super();
      this.entity = entity;
    }

    public ZwischensummeEingabeMeta getMetaDataIntern() {
        return getMetaData();
    }

    @Override
    public String getDefaultLabel() {
      return getMetaDataIntern().getSummenIndexEinzahlMessage();
    }

    @Override
    public boolean getDefaultRequired() {
      return getMetaDataIntern().isSummenIndexRequired();
    }

    @Override
    public java.lang.Long getDefaultValue() {
      return getMetaDataIntern().getSummenIndexDefaultValue();
    }

    @javax.validation.constraints.Min(de.ivu.elect.business.stimmeingabe.entity.ZwischensummeEingabeConstants.SUMMEN_INDEX_MIN_VALUE)
    @javax.validation.constraints.Max(de.ivu.elect.business.stimmeingabe.entity.ZwischensummeEingabeConstants.SUMMEN_INDEX_MAX_VALUE)
    
    @Override
    public java.lang.Long getValue() {
      return entity.getSummenIndex();
    }

    @Override
    public void setValue(java.lang.Long value) {
      entity.setSummenIndex(value);
    }
    @Override
    public long getMinValue() {
      return getMetaDataIntern().getSummenIndexMinValue();
    }

    @Override
    public int getMaxLength() {
      return getMetaDataIntern().getSummenIndexMaxLength();
    }

    @Override
    public long getMaxValue() {
      return getMetaDataIntern().getSummenIndexMaxValue();
    }


  }

  public SummenIndexProperty getSummenIndexProperty() {
    return summenIndexProperty;
  }


    
  
    @javax.enterprise.inject.Vetoed
    @Deprecated // ELECT-4623 Nicht mehr neu verwenden, TODO Verwendung reduzieren
   public static class SummenNameProperty extends
      de.ivu.elect.jee.presentation.dynamicform.AbstractStringProperty
  {

    protected final ZwischensummeEingabe entity;

    public SummenNameProperty(ZwischensummeEingabe entity) {
      super();
      this.entity = entity;
    }

    public ZwischensummeEingabeMeta getMetaDataIntern() {
        return getMetaData();
    }

    @Override
    public String getDefaultLabel() {
      return getMetaDataIntern().getSummenNameEinzahlMessage();
    }

    @Override
    public boolean getDefaultRequired() {
      return getMetaDataIntern().isSummenNameRequired();
    }

    @Override
    public java.lang.String getDefaultValue() {
      return getMetaDataIntern().getSummenNameDefaultValue();
    }

  @javax.validation.constraints.Size(max=de.ivu.elect.business.stimmeingabe.entity.ZwischensummeEingabeConstants.SUMMEN_NAME_MAX_LENGTH  )
    
    @Override
    public java.lang.String getValue() {
      return entity.getSummenName();
    }

    @Override
    public void setValue(java.lang.String value) {
      entity.setSummenName(value);
    }
    @Override
    public int getDefaultMaxLength() {
      return getMetaDataIntern().getSummenNameMaxLength();
    }

  }

  public SummenNameProperty getSummenNameProperty() {
    return summenNameProperty;
  }


    
  }