package org.richfaces.cdk.model;

import javax.faces.convert.Converter;

/**
 * <p class="changed_added_4_0">
 * This Interface describes all JSF objects that can be generated by cdk:
 * </p>
 * <ul>
 * <li>{@link UIComponent}</li>
 * <li>{@link Renderer}</li>
 * <li>{@link Converter}</li>
 * <li>{@link Validator}</li>
 * <li>{@link ClientBehavior}</li>
 * <li>{@link javax.faces.render.ClientBehaviorRenderer}
 * </ul>
 *
 * @author asmirnov@exadel.com
 *
 */
public interface GeneratedFacesComponent extends FacesComponent {
    /**
     * <p class="changed_added_4_0">
     * </p>
     *
     * @return the baseClass
     */
    ClassName getBaseClass();

    /**
     * <p class="changed_added_4_0">
     * </p>
     *
     * @param baseClass
     */
    void setBaseClass(ClassName baseClass);

    /**
     * <p class="changed_added_4_0">
     * </p>
     *
     * @return
     */
    Boolean getGenerate();

    /**
     * <p class="changed_added_4_0">
     * </p>
     *
     * @param generate
     */
    void setGenerate(Boolean generate);
}