com.vaadin.flow.data.binder.

Class BeanPropertySet.NestedBeanPropertyDefinition<T,V>

java.lang.Object
com.vaadin.flow.data.binder.AbstractBeanPropertyDefinition<T,V>
com.vaadin.flow.data.binder.BeanPropertySet.NestedBeanPropertyDefinition<T,V>

Type Parameters:

T - the bean type

V - the value type returned by the getter and set by the setter

All Implemented Interfaces:

PropertyDefinition<T,V>, Serializable

Enclosing class:

BeanPropertySet<T>

public static class BeanPropertySet.NestedBeanPropertyDefinition<T,V> extends AbstractBeanPropertyDefinition<T,V>

Contains properties for a bean type which is nested in another definition.

See Also:

  • Field Details

    • MAX_PROPERTY_NESTING_DEPTH

      protected static final int MAX_PROPERTY_NESTING_DEPTH

      Default maximum depth for scanning nested properties.

      See Also:

  • Constructor Details

    • NestedBeanPropertyDefinition

      public NestedBeanPropertyDefinition(BeanPropertySet<T> propertySet, PropertyDefinition<T,?> parent, PropertyDescriptor descriptor)

      Creates a new instance of a nested property definition.

      Parameters:

      propertySet - the PropertySet that this property belongs to

      parent - the parent property definition

      descriptor - the property descriptor

  • Method Details

    • getGetter

      public ValueProvider<T,V> getGetter()

      Description copied from interface: PropertyDefinition

      Gets the value provider that is used for finding the value of this property for a bean.

      Returns:

      the getter, not null

    • getSetter

      public Optional<Setter<T,V>> getSetter()

      Description copied from interface: PropertyDefinition

      Gets an optional setter for storing a property value in a bean.

      Returns:

      the setter, or an empty optional if this property is read-only

    • getName

      public String getName()

      Description copied from interface: PropertyDefinition

      Gets the full name of this property.

      Specified by:

      getName in interface PropertyDefinition<T,V>

      Overrides:

      getName in class AbstractBeanPropertyDefinition<T,V>

      Returns:

      the property name, not null

    • getTopLevelName

      public String getTopLevelName()

      Description copied from interface: PropertyDefinition

      Gets the top level name of this property.

      Returns:

      the top level property name, not null

    • getParent

      public PropertyDefinition<T,?> getParent()

      Description copied from interface: PropertyDefinition

      Gets the parent property of this property if this is a sub-property of the property set. If this property belongs directly to the property set, it doesn't have a parent and this method returns null.

      Returns:

      the parent property, may be null