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

import de.ivu.elect.jee.presentation.dynamicform.Property;

@javax.enterprise.inject.Vetoed
public class ErsatzkandidaturProperties
extends de.ivu.elect.business.kandidatur.entity.KandidaturProperties
{

private final Ersatzkandidatur entity;


    
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.kandidatur.entity.ErsatzkandidaturArt>
                  ersatzkandidaturArtProperty;

                private de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.kandidatur.entity.ErsatzkandidaturArt> ersatzkandidaturArtMitLeererAuswahlProperty;
        
    

public ErsatzkandidaturProperties(Ersatzkandidatur entity) {
super(entity);
this.entity = entity;

}

private static ErsatzkandidaturMeta getMetaData() {
return de.ivu.elect.jee.cdi.BeanManagerUtil.getBeanByClass( ErsatzkandidaturMeta.class);
}


    

        public
                    de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.kandidatur.entity.ErsatzkandidaturArt>
                getErsatzkandidaturArtProperty() {
        if (ersatzkandidaturArtProperty == null) {
        ersatzkandidaturArtProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<>
        
        (
        getMetaData().getErsatzkandidaturArtEinzahlMessage(),
        getMetaData().getErsatzkandidaturArtDefaultValue(),
        getMetaData().isErsatzkandidaturArtRequired(),
                entity::setErsatzkandidaturArt,
        entity::getErsatzkandidaturArt

                    , de.ivu.elect.business.kandidatur.entity.ErsatzkandidaturArt.class,
            java.util.Arrays.asList(de.ivu.elect.business.kandidatur.entity.ErsatzkandidaturArt.values()).stream().sorted(Enum::compareTo).collect(java.util.stream.Collectors.toList())
                );

        }


        return ersatzkandidaturArtProperty;
        }





        

            public de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.kandidatur.entity.ErsatzkandidaturArt> getErsatzkandidaturArtMitLeererAuswahlProperty() {
               if (ersatzkandidaturArtMitLeererAuswahlProperty == null) {
                 ersatzkandidaturArtMitLeererAuswahlProperty = new
                de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<>
                    (
                        getMetaData().getErsatzkandidaturArtEinzahlMessage(),
        				getMetaData().getErsatzkandidaturArtDefaultValue(),
                        getMetaData().isErsatzkandidaturArtRequired(),
                        entity::setErsatzkandidaturArt,
                        entity::getErsatzkandidaturArt
                        , de.ivu.elect.business.kandidatur.entity.ErsatzkandidaturArt.class,
                        java.util.Arrays.asList(de.ivu.elect.business.kandidatur.entity.ErsatzkandidaturArt.values()).stream().sorted(Enum::compareTo).collect(java.util.stream.Collectors.toList())
                        ,true
                    );
            }

               return ersatzkandidaturArtMitLeererAuswahlProperty;
            }
        
        }