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

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

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

private final GebietPolygonPoint entity;


    
    private
                de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointArt>
                  gebietPolygonPointArtProperty;

                private de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointArt> gebietPolygonPointArtMitLeererAuswahlProperty;
        
        
    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.LambdaLongProperty
                  positionProperty;

        
    

public GebietPolygonPointProperties(GebietPolygonPoint entity) {
this.entity = entity;

}

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


    

        public
                    de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointArt>
                getGebietPolygonPointArtProperty() {
        if (gebietPolygonPointArtProperty == null) {
        gebietPolygonPointArtProperty = new


                    de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<>
        
        (
        getMetaData().getGebietPolygonPointArtEinzahlMessage(),
        getMetaData().getGebietPolygonPointArtDefaultValue(),
        getMetaData().isGebietPolygonPointArtRequired(),
                entity::setGebietPolygonPointArt,
        entity::getGebietPolygonPointArt

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

        }


        return gebietPolygonPointArtProperty;
        }





        

            public de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointArt> getGebietPolygonPointArtMitLeererAuswahlProperty() {
               if (gebietPolygonPointArtMitLeererAuswahlProperty == null) {
                 gebietPolygonPointArtMitLeererAuswahlProperty = new
                de.ivu.elect.jee.presentation.dynamicform.LambdaEnumProperty<>
                    (
                        getMetaData().getGebietPolygonPointArtEinzahlMessage(),
        				getMetaData().getGebietPolygonPointArtDefaultValue(),
                        getMetaData().isGebietPolygonPointArtRequired(),
                        entity::setGebietPolygonPointArt,
                        entity::getGebietPolygonPointArt
                        , de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointArt.class,
                        java.util.Arrays.asList(de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointArt.values()).stream().sorted(Enum::compareTo).collect(java.util.stream.Collectors.toList())
                        ,true
                    );
            }

               return gebietPolygonPointArtMitLeererAuswahlProperty;
            }
        
        

        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.gebietsbaum.entity.GebietPolygonPointConstants.LATITUDE_MIN_VALUE,
            de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointConstants.LATITUDE_MAX_VALUE,
            de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointConstants.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.gebietsbaum.entity.GebietPolygonPointConstants.LONGITUDE_MIN_VALUE,
            de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointConstants.LONGITUDE_MAX_VALUE,
            de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointConstants.LONGITUDE_MAX_LENGTH
                );

        }


        return longitudeProperty;
        }





        
        

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


                    de.ivu.elect.jee.presentation.dynamicform.LambdaLongProperty
        
        (
        getMetaData().getPositionEinzahlMessage(),
        getMetaData().getPositionDefaultValue(),
        getMetaData().isPositionRequired(),
                entity::setPosition,
        entity::getPosition

                    , de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointConstants.POSITION_MIN_VALUE,
            de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointConstants.POSITION_MAX_VALUE,
            de.ivu.elect.business.gebietsbaum.entity.GebietPolygonPointConstants.POSITION_MAX_LENGTH
                );

        }


        return positionProperty;
        }





        
        }