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

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

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

private final GeodataOrt entity;


    
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaDoubleProperty
                  latitudeProperty;

        
        
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaDoubleProperty
                  longitudeProperty;

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

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

        
    

public GeodataOrtProperties(GeodataOrt entity) {
this.entity = entity;

}

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


    

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractDoubleProperty
                getLatitudeProperty() {
        if (latitudeProperty == null) {
        latitudeProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaDoubleProperty
        
        (
        getMetaData().getLatitudeEinzahlMessage(),
        getMetaData().getLatitudeDefaultValue(),
        getMetaData().isLatitudeRequired(),
                entity::setLatitude,
        entity::getLatitude

                    , de.ivu.elect.business.geodata.entity.GeodataOrtConstants.LATITUDE_MIN_VALUE,
            de.ivu.elect.business.geodata.entity.GeodataOrtConstants.LATITUDE_MAX_VALUE,
            de.ivu.elect.business.geodata.entity.GeodataOrtConstants.LATITUDE_MAX_LENGTH
                );

        }


        return latitudeProperty;
        }





        
        

        public
                    de.ivu.elect.jee.presentation.dynamicform.AbstractDoubleProperty
                getLongitudeProperty() {
        if (longitudeProperty == null) {
        longitudeProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaDoubleProperty
        
        (
        getMetaData().getLongitudeEinzahlMessage(),
        getMetaData().getLongitudeDefaultValue(),
        getMetaData().isLongitudeRequired(),
                entity::setLongitude,
        entity::getLongitude

                    , de.ivu.elect.business.geodata.entity.GeodataOrtConstants.LONGITUDE_MIN_VALUE,
            de.ivu.elect.business.geodata.entity.GeodataOrtConstants.LONGITUDE_MAX_VALUE,
            de.ivu.elect.business.geodata.entity.GeodataOrtConstants.LONGITUDE_MAX_LENGTH
                );

        }


        return longitudeProperty;
        }





        
        

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


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getOrtsnameEinzahlMessage(),
        getMetaData().getOrtsnameDefaultValue(),
        getMetaData().isOrtsnameRequired(),
                entity::setOrtsname,
        entity::getOrtsname

                    ,  1 ,
            de.ivu.elect.business.geodata.entity.GeodataOrtConstants.ORTSNAME_MAX_LENGTH
                );

        }


        return ortsnameProperty;
        }





        
        

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


                    de.ivu.elect.jee.presentation.dynamicform.LambdaStringProperty
        
        (
        getMetaData().getOrtsteilnameEinzahlMessage(),
        getMetaData().getOrtsteilnameDefaultValue(),
        getMetaData().isOrtsteilnameRequired(),
                entity::setOrtsteilname,
        entity::getOrtsteilname

                    , 0 ,
            de.ivu.elect.business.geodata.entity.GeodataOrtConstants.ORTSTEILNAME_MAX_LENGTH
                );

        }


        return ortsteilnameProperty;
        }





        
        }