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

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

@javax.enterprise.inject.Vetoed
public class LokalisierungProperties
{

private final Lokalisierung entity;


    
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.lokalisierung.entity.LokalisierungLocale>
                  localeProperty;

                private de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.lokalisierung.entity.LokalisierungLocale> localeMitLeererAuswahlProperty;
        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.lokalisierung.entity.LokalisierungModul>
                  modulProperty;

                private de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.lokalisierung.entity.LokalisierungModul> modulMitLeererAuswahlProperty;
        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
                  schluesselProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
                  wertGeaendertProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
                  wertPropertydateiProperty;

        
    

public LokalisierungProperties(Lokalisierung entity) {
this.entity = entity;

}

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


    

        public
                    de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.lokalisierung.entity.LokalisierungLocale>
                getLocaleProperty() {
        if (localeProperty == null) {
        localeProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<>
        
        (
        getMetaData().getLocaleEinzahlMessage(),
        getMetaData().getLocaleDefaultValue(),
        getMetaData().isLocaleRequired(),
                entity::setLocale,
        entity::getLocale

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

        }


        return localeProperty;
        }





        

            public de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.lokalisierung.entity.LokalisierungLocale> getLocaleMitLeererAuswahlProperty() {
               if (localeMitLeererAuswahlProperty == null) {
                 localeMitLeererAuswahlProperty = new
                de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<>
                    (
                        getMetaData().getLocaleEinzahlMessage(),
        				getMetaData().getLocaleDefaultValue(),
                        getMetaData().isLocaleRequired(),
                        entity::setLocale,
                        entity::getLocale
                        , de.ivu.elect.business.lokalisierung.entity.LokalisierungLocale.class,
                        java.util.Arrays.asList(de.ivu.elect.business.lokalisierung.entity.LokalisierungLocale.values()).stream().sorted(Enum::compareTo).collect(java.util.stream.Collectors.toList())
                        ,true
                    );
            }

               return localeMitLeererAuswahlProperty;
            }
        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.lokalisierung.entity.LokalisierungModul>
                getModulProperty() {
        if (modulProperty == null) {
        modulProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<>
        
        (
        getMetaData().getModulEinzahlMessage(),
        getMetaData().getModulDefaultValue(),
        getMetaData().isModulRequired(),
                entity::setModul,
        entity::getModul

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

        }


        return modulProperty;
        }





        

            public de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.lokalisierung.entity.LokalisierungModul> getModulMitLeererAuswahlProperty() {
               if (modulMitLeererAuswahlProperty == null) {
                 modulMitLeererAuswahlProperty = new
                de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<>
                    (
                        getMetaData().getModulEinzahlMessage(),
        				getMetaData().getModulDefaultValue(),
                        getMetaData().isModulRequired(),
                        entity::setModul,
                        entity::getModul
                        , de.ivu.elect.business.lokalisierung.entity.LokalisierungModul.class,
                        java.util.Arrays.asList(de.ivu.elect.business.lokalisierung.entity.LokalisierungModul.values()).stream().sorted(Enum::compareTo).collect(java.util.stream.Collectors.toList())
                        ,true
                    );
            }

               return modulMitLeererAuswahlProperty;
            }
        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractStringProperty
                getSchluesselProperty() {
        if (schluesselProperty == null) {
        schluesselProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getSchluesselEinzahlMessage(),
        getMetaData().getSchluesselDefaultValue(),
        getMetaData().isSchluesselRequired(),
                entity::setSchluessel,
        entity::getSchluessel

                    ,  1 ,
            de.ivu.elect.business.lokalisierung.entity.LokalisierungConstants.SCHLUESSEL_MAX_LENGTH
                );

        }


        return schluesselProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractStringProperty
                getWertGeaendertProperty() {
        if (wertGeaendertProperty == null) {
        wertGeaendertProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getWertGeaendertEinzahlMessage(),
        getMetaData().getWertGeaendertDefaultValue(),
        getMetaData().isWertGeaendertRequired(),
                entity::setWertGeaendert,
        entity::getWertGeaendert

                    , 0 ,
            de.ivu.elect.business.lokalisierung.entity.LokalisierungConstants.WERT_GEAENDERT_MAX_LENGTH
                );

        }


        return wertGeaendertProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractStringProperty
                getWertPropertydateiProperty() {
        if (wertPropertydateiProperty == null) {
        wertPropertydateiProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getWertPropertydateiEinzahlMessage(),
        getMetaData().getWertPropertydateiDefaultValue(),
        getMetaData().isWertPropertydateiRequired(),
                entity::setWertPropertydatei,
        entity::getWertPropertydatei

                    , 0 ,
            de.ivu.elect.business.lokalisierung.entity.LokalisierungConstants.WERT_PROPERTYDATEI_MAX_LENGTH
                );

        }


        return wertPropertydateiProperty;
        }





        
        }