Class BeanFieldGroup<T>

    • Constructor Detail

      • BeanFieldGroup

        public BeanFieldGroup​(Class<T> beanType)
        Deprecated.
    • Method Detail

      • getPropertyType

        protected Class<?> getPropertyType​(Object propertyId)
        Deprecated.
        Description copied from class: FieldGroup
        Gets the type of the property with the given property id.
        Overrides:
        getPropertyType in class FieldGroup
        Parameters:
        propertyId - The propertyId. Must be find
        Returns:
        The type of the property
      • findPropertyId

        protected Object findPropertyId​(Field memberField)
        Deprecated.
        Description copied from class: FieldGroup
        Searches for a property id from the current itemDataSource that matches the given memberField.

        If perfect match is not found, uses a case insensitive search that also ignores underscores. Returns null if no match is found. Throws a SearchException if no item data source has been set.

        The propertyId search logic used by buildAndBindMemberFields can easily be customized by overriding this method. No other changes are needed.

        Overrides:
        findPropertyId in class FieldGroup
        Parameters:
        memberField - The field an object id is searched for
        Returns:
      • setItemDataSource

        public void setItemDataSource​(T bean)
        Deprecated.
        Helper method for setting the data source directly using a bean. This method wraps the bean in a BeanItem and calls setItemDataSource(Item).

        For null values, a null item is passed to setItemDataSource(Item) to be properly clear fields.

        Parameters:
        bean - The bean to use as data source.
      • setItemDataSource

        public void setItemDataSource​(Item item)
        Deprecated.
        Description copied from class: FieldGroup
        Updates the item that is used by this FieldBinder. Rebinds all fields to the properties in the new item.
        Overrides:
        setItemDataSource in class FieldGroup
        Parameters:
        item - The new item to use
      • bind

        public void bind​(Field field,
                         Object propertyId)
        Deprecated.
        Description copied from class: FieldGroup
        Binds the field with the given propertyId from the current item. If an item has not been set then the binding is postponed until the item is set using FieldGroup.setItemDataSource(Item).

        This method also adds validators when applicable.

        Overrides:
        bind in class FieldGroup
        Parameters:
        field - The field to bind
        propertyId - The propertyId to bind to the field
      • buildAndBind

        public <T extends Field> T buildAndBind​(String caption,
                                                Object propertyId,
                                                Class<T> fieldType)
                                         throws FieldGroup.BindException
        Deprecated.
        Description copied from class: FieldGroup
        Builds a field using the given caption and binds it to the given property id using the field binder. Ensures the new field is of the given type.
        Overrides:
        buildAndBind in class FieldGroup
        Parameters:
        caption - The caption for the field
        propertyId - The property id to bind to. Must be present in the field finder.
        Returns:
        The created and bound field. Can be any type of Field.
        Throws:
        FieldGroup.BindException - If the field could not be created
      • unbind

        public void unbind​(Field<?> field)
                    throws FieldGroup.BindException
        Deprecated.
        Description copied from class: FieldGroup
        Detaches the field from its property id and removes it from this FieldBinder.

        Note that the field is not detached from its property data source if it is no longer connected to the same property id it was bound to using this FieldBinder.

        Overrides:
        unbind in class FieldGroup
        Parameters:
        field - The field to detach
        Throws:
        FieldGroup.BindException - If the field is not bound by this field binder or not bound to the correct property id
      • configureField

        protected void configureField​(Field<?> field)
        Deprecated.
        Description copied from class: FieldGroup
        Configures a field with the settings set for this FieldBinder.

        By default this updates the buffered, read only and enabled state of the field. Also adds validators when applicable. Fields with read only data source are always configured as read only.

        Overrides:
        configureField in class FieldGroup
        Parameters:
        field - The field to update
      • isBeanValidationImplementationAvailable

        protected static boolean isBeanValidationImplementationAvailable()
        Deprecated.
        Checks whether a bean validation implementation (e.g. Hibernate Validator or Apache Bean Validation) is available. TODO move this method to some more generic location
        Returns:
        true if a JSR-303 bean validation implementation is available
      • bindFieldsUnbuffered

        public static <T> BeanFieldGroup<T> bindFieldsUnbuffered​(T bean,
                                                                 Object objectWithMemberFields)
        Deprecated.
        Convenience method to bind Fields from a given "field container" to a given bean with buffering disabled.

        The returned BeanFieldGroup can be used for further configuration.

        Parameters:
        bean - the bean to be bound
        objectWithMemberFields - the class that contains Fields for bean properties
        Returns:
        the bean field group used to make binding
        Since:
        7.2
        See Also:
        bindFieldsBuffered(Object, Object), FieldGroup.bindMemberFields(Object)
      • bindFieldsBuffered

        public static <T> BeanFieldGroup<T> bindFieldsBuffered​(T bean,
                                                               Object objectWithMemberFields)
        Deprecated.
        Convenience method to bind Fields from a given "field container" to a given bean with buffering enabled.

        The returned BeanFieldGroup can be used for further configuration.

        Parameters:
        bean - the bean to be bound
        objectWithMemberFields - the class that contains Fields for bean properties
        Returns:
        the bean field group used to make binding
        Since:
        7.2
        See Also:
        bindFieldsUnbuffered(Object, Object), FieldGroup.bindMemberFields(Object)