/** * <h1>Java annotations used by the CDK.</h1> * <h2>Package-level annotations</h2> * <p> {@link org.richfaces.cdk.annotations.TagLibrary} defines library-wide parameters</p> * <h2>Class-level annotations:</h2> * <ul> * <li>@{@link org.richfaces.cdk.annotations.JsfComponent}("component.Type") or @{@link javax.faces.component.FacesComponent}("component.Type").</li> * <li>@{@link org.richfaces.cdk.annotations.JsfRenderer} Defines JSF {@link javax.faces.render.Renderer} or link renderer with component.</li> * <li>@{@link org.richfaces.cdk.annotations.JsfConverter} Defines JSF {@link javax.faces.convert.Converter}.</li> * <li>@{@link org.richfaces.cdk.annotations.JsfValidator} Defines JSF {@link javax.faces.validator.Validator}.</li> * <li>@{@link org.richfaces.cdk.annotations.JsfBehavior} Defines JSF {@link javax.faces.component.behavior.ClientBehavior}.</li> * <li>@{@link org.richfaces.cdk.annotations.JsfBehaviorRenderer} Defines JSF {@link javax.faces.render.ClientBehaviorRenderer} or links renderer with behavior.</li> * <li>@{@link org.richfaces.cdk.annotations.Event} Defines JSF {@link javax.faces.event.FacesEvent} or links event with component that fires it.</li> * </ul> * <h2>Annotations used to refine class top level definitions</h2> * <li>@{@link org.richfaces.cdk.annotations.Test} tells CDK to generate unit test for component.</li> * <li>@{@link org.richfaces.cdk.annotations.Description} optional IDE-related parameters.</li> * <li>@{@link org.richfaces.cdk.annotations.Tag} VDL tag description.</li> * <li>@{@link org.richfaces.cdk.annotations.RendererSpecificComponent} defines renderer specific component for the family created from one base component</li> * <li>@{@link org.richfaces.cdk.annotations.Description} optional IDE-related parameters.<br /></li> * </ul> * <p> </p> * <h2>Attribute level annotations ( for getter or field level ):</h2> * <ul> * <li>@{@link org.richfaces.cdk.annotations.Attribute} Defines Faces attribute, used on for attribute getter method or field.</li> * <li>@{@link org.richfaces.cdk.annotations.Facet} for facet getter. Also, used in {@link org.richfaces.cdk.annotations.JsfComponent} facets property.</li> * <li>@{@link org.richfaces.cdk.annotations.Function}, Used for public static methods to define them as EL-functions.</li> * </ul> * <h2>Annotations used to refine method-level properties</h2> * <ul> * <li>@{@link Signature} defines Java method signature for attributes that holds MethodExpression objects.</li> * <li>@{@link Alias} defines alias for attribute.</li> * <li>@{@link EventName}(value="click",defaultEvent=true) defines behavior event name for that attribute.</li> * <li>@{@link Description} optional IDE-related description.</li> * </ul> * <p> </p> * <h3>Facet annotations.</h3> * <p>There are two methods to define component facet. At the class level, developer could use @{@link org.richfaces.cdk.annotations.JsfComponent#facets()} property. It is also possible to define facet getter/setter methods for facet and mark one of them with @{@link Facet} annotation.</p> * * */ package org.richfaces.cdk.annotations;