Is there a design bug in Property interface (missing required)

Hi
I have a problem with the setPropertyDataSource(Property newDataSource) function in abstractField.

When I set any propertyDataSource on a field this function will look at the property and copy any validators from the property to the field depending on which interfaces the property implements. However it does not look for the required state on the property. Is this a design fault in Vaadin ? and if so, is there any change it will be fixed?

Code from the AbstractField class setPropertyDataSource function

 // Copy the validators from the data source
        if (dataSource instanceof Validatable) {
            final Collection<Validator> validators = ((Validatable) dataSource)
                    .getValidators();
            if (validators != null) {
                for (final Iterator<Validator> i = validators.iterator(); i
                        .hasNext();) {
                    addValidator(i.next());
                }
            }
        }

I think there should be added following to below the above code:


//copy required state from property
if(dataSource instanceof Requireable){
      setRequired(((Requireable)dataSource).isRequired());
}

The Requireable interface should look something like (extraction from the field interface)


  /**
     * Is this field required.
     * 
     * Required fields must filled by the user.
     * 
     * @return <code>true</code> if the field is required,otherwise
     *         <code>false</code>.
     * @since 3.1
     */
    public boolean isRequired();

    /**
     * Sets the field required. Required fields must filled by the user.
     * 
     * @param required
     *            Is the field required.
     * @since 3.1
     */
    public void setRequired(boolean required);

    /**
     * Sets the error message to be displayed if a required field is empty.
     * 
     * @param requiredMessage
     *            Error message.
     * @since 5.2.6
     */
    public void setRequiredError(String requiredMessage);

    /**
     * Gets the error message that is to be displayed if a required field is
     * empty.
     * 
     * @return Error message.
     * @since 5.2.6
     */
    public String getRequiredError();

I think it would be logical to have the property to handle the required state as well as the validation. This would require a new interface defining the required state on the property or extends the Property interface with the reqired fields.

/Kasper

PS: is this the right place for a feature request or where should i post it?