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

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

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

private final LoeschProtokoll entity;


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

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

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

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

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaLongProperty
                  primaerschluesselProperty;

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

        
    

public LoeschProtokollProperties(LoeschProtokoll entity) {
this.entity = entity;

}

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


    

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


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getBenutzerkennungEinzahlMessage(),
        getMetaData().getBenutzerkennungDefaultValue(),
        getMetaData().isBenutzerkennungRequired(),
                entity::setBenutzerkennung,
        entity::getBenutzerkennung

                    ,  1 ,
            de.ivu.elect.business.protokollierung.entity.LoeschProtokollConstants.BENUTZERKENNUNG_MAX_LENGTH
                );

        }


        return benutzerkennungProperty;
        }





        
        

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


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getEntitaetEinzahlMessage(),
        getMetaData().getEntitaetDefaultValue(),
        getMetaData().isEntitaetRequired(),
                entity::setEntitaet,
        entity::getEntitaet

                    ,  1 ,
            de.ivu.elect.business.protokollierung.entity.LoeschProtokollConstants.ENTITAET_MAX_LENGTH
                );

        }


        return entitaetProperty;
        }





        
        

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


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getMessageKeyEinzahlMessage(),
        getMetaData().getMessageKeyDefaultValue(),
        getMetaData().isMessageKeyRequired(),
                entity::setMessageKey,
        entity::getMessageKey

                    ,  1 ,
            de.ivu.elect.business.protokollierung.entity.LoeschProtokollConstants.MESSAGE_KEY_MAX_LENGTH
                );

        }


        return messageKeyProperty;
        }





        
        

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


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getMessageParamsEinzahlMessage(),
        getMetaData().getMessageParamsDefaultValue(),
        getMetaData().isMessageParamsRequired(),
                entity::setMessageParams,
        entity::getMessageParams

                    , 0 ,
            de.ivu.elect.business.protokollierung.entity.LoeschProtokollConstants.MESSAGE_PARAMS_MAX_LENGTH
                );

        }


        return messageParamsProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractLongProperty
                getPrimaerschluesselProperty() {
        if (primaerschluesselProperty == null) {
        primaerschluesselProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaLongProperty
        
        (
        getMetaData().getPrimaerschluesselEinzahlMessage(),
        getMetaData().getPrimaerschluesselDefaultValue(),
        getMetaData().isPrimaerschluesselRequired(),
                entity::setPrimaerschluessel,
        entity::getPrimaerschluessel

                    , de.ivu.elect.business.protokollierung.entity.LoeschProtokollConstants.PRIMAERSCHLUESSEL_MIN_VALUE,
            de.ivu.elect.business.protokollierung.entity.LoeschProtokollConstants.PRIMAERSCHLUESSEL_MAX_VALUE,
            de.ivu.elect.business.protokollierung.entity.LoeschProtokollConstants.PRIMAERSCHLUESSEL_MAX_LENGTH
                );

        }


        return primaerschluesselProperty;
        }





        
        

        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;
        }





        
        }