# Package org.apache.tapestry5.ioc.annotations

Annotations for Tapestry IOC services

- Enum Summary
  Enum | Description
  --- | ---
  AnnotationUseContext | Constants for documenting the context wherein the tapestry-provided annotations may be used, in conjunction with `UseWith`.

- Annotation Types Summary
  Annotation Type | Description
  --- | ---
  Advise | An annotation that may be placed on a advisor method of a module.
  Autobuild | Directs that the value to be built should be an autobuild instance of the type with injections performed, via ObjectLocator.html#autobuild(Class).
  ComponentClasses | Marker annotation used to inject the correct InvalidationEventHub service responsible for invalidations when underlying component class files are changed.
  ComponentLayer | Marker annotation used to identify a service from the component layer that conflicts, in terms of service interface, with a service from elsewhere.
  Contribute | An annotation that may be placed on a contributor method of a module.
  Decorate | An annotation that may be placed on a decorator method of a module.
  Description | Annotation used by Tapestry to describe the annotated class or package in runtime, specially in the T5Dashboard page.
  EagerLoad | Marker annotation placed on a service builder method to indicate that the service should be eagerly loaded: realized as if a service method had been invoked.
  ImportModule | Attached to a module class, this annotation identifies other module classes that should also be added to the Registry.
  IncompatibleChange |
  Inject | This annotation serves is something of the Swiss Army knife for operations related to injection of dependencies into an arbitrary method of Java Bean.
  InjectResource | Deprecated. Deprecated in Tapestry 5.3, to be removed in a later release.
  InjectService | Annotation used with parameters of service builder methods to identify the service to be injected into the service builder method via the parameter.
  IntermediateType | Used to guide Tapestry when coercing from a raw type to a field or parameter type, by forcing Tapestry to coerce to the intermediate type.
  Local | A special marker annotation which limits the search for possible services to just the same module containing the service being injected.
  Marker | Used to define one or more ServiceDef#getMarkers() marker annotations for a service implementation.
  Match | Optional, but typically used, annotation for service decorator methods, used to define which services the decorator applies to.
  NotLazy | Marks a method as specifically not-lazy, even if other methods in the same interface are being advised as lazy.
  Operation | Describes a method as one that should be operation tracked.
  Optional | Marks a service contribution method within a module as being optional: it is not an error if the contribution does not match against an actual service.
  Order | Used with a service decorator method to control the order in which decorations occur.
  PostInjection | Annotation for methods that should be invoked after injection.
  PreventServiceDecoration | Marks a service as not eligible for decoration.
  Primary | Marker annotation used to denote a service that is the primary instance of some common interface.
  Scope | An optional annotation that may be placed on a service building method of a module, or on the implementation class (when using service binding).
  ServiceId | An optional annotation that may be placed on a service building method of a module, or on the implementation class (when using service binding via the `ServiceBinder`).
  Startup | An annotation that may be placed on a startup method of a module.
  SubModule | Deprecated. Deprecated in 5.4, use `ImportModule` instead.
  Symbol | Used to inject a symbol value, via a symbol name.
  UsesConfiguration | A documentation-only interface placed on service interfaces for services which have an unordered configuration, to identify the type of contribution.
  UsesMappedConfiguration | A documentation-only interface placed on service interfaces for services which have a mapped configuration, to identify the type of key (often, a String), and type of contribution.
  UsesOrderedConfiguration | A documentation-only interface placed on service interfaces for services which have an ordered configuration, to identify the type of contribution.
  UseWith | Annotation documenting the context(s) in which tapestry-provided annotations may be used.
  Value | Used in conjunction with `Inject` to inject a literal value, rather than a service.