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

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

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

private final AufgabeKommentar entity;


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

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

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaTimestampProperty
                  zeitpunktProperty;

        
    

public AufgabeKommentarProperties(AufgabeKommentar entity) {
this.entity = entity;

}

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


    

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


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getAutorEinzahlMessage(),
        getMetaData().getAutorDefaultValue(),
        getMetaData().isAutorRequired(),
                entity::setAutor,
        entity::getAutor

                    ,  1 ,
            de.ivu.elect.business.aufgabe.entity.AufgabeKommentarConstants.AUTOR_MAX_LENGTH
                );

        }


        return autorProperty;
        }





        
        

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


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getKommentarEinzahlMessage(),
        getMetaData().getKommentarDefaultValue(),
        getMetaData().isKommentarRequired(),
                entity::setKommentar,
        entity::getKommentar

                    ,  1 ,
            de.ivu.elect.business.aufgabe.entity.AufgabeKommentarConstants.KOMMENTAR_MAX_LENGTH
                );

        }


        return kommentarProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractTimestampProperty
                getZeitpunktProperty() {
        if (zeitpunktProperty == null) {
        zeitpunktProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaTimestampProperty
        
        (
        getMetaData().getZeitpunktEinzahlMessage(),
        getMetaData().getZeitpunktDefaultValue(),
        getMetaData().isZeitpunktRequired(),
                entity::setZeitpunkt,
        entity::getZeitpunkt

                );

        }


        return zeitpunktProperty;
        }





        
        }