Component Annotation
The Component annotation binds a component name and runtime policies with a component class.
Attribute Table
name | Associates a simple name to the component which may be used as a construction element in the creation of a fully qualified path. The default value is the empty string "". |
lifestyle | Associates an explicit lifestyle policy. |
collection | Associates an explicit collection policy. |
lifecycle | Declares a lifecycle graph via a fully qualified uri. |
Sample Code
The following code binds the name widget, the lifestyle policy of SINGELTON, and a SOFT collection policy to the class SimpleWidget.
import net.dpml.annotation.Component; import static net.dpml.annotation.CollectionPolicy.SOFT; import static net.dpml.annotation.LifestylePolicy.SINGLETON; @Component( name="widget", lifestyle=SINGLETON, collection=SOFT ) public class SimpleWidget { ... }
Technical Note
Features and policies assigned to a component (either via defaults or through an explicit component annotation) may be overriden by a packaged or part-based component strategy using the name, lifestyle, and collection attributes.