001    package org.springframework.binding.form;
002    
003    /**
004     * This interface is intended to mark {@link org.springframework.richclient.form.Form}s as having a specific method to set new form objects. This
005     * can contain different logic than the normal {@link org.springframework.richclient.form.Form#setFormObject(Object)}. Note that the formObject
006     * doesn't need to be <code>null</code> and hence the {@link org.springframework.richclient.form.AbstractForm#getNewFormObjectCommand()} isn't
007     * always called.
008     *
009     * @author Jan Hoskens
010     *
011     */
012    public interface NewFormObjectAware
013    {
014    
015        /**
016         * Specific method to use when setting a new formObject. This can be <code>null</code>, a base object
017         * with defaults or a copy of an existing object.
018         *
019         * @param formObject
020         *            the new form object to set.
021         */
022        void setNewFormObject(Object formObject);
023    }
024