Marks a service as not eligible for decoration. This is useful for services that, if decorated, can cause cycle
dependency errors; for example,
MasterObjectProvider
, or services
contributed to MasterObjectProvider, are good candidates for this annotation.
The annotation can be applied to service implementation class or to a service builder method in a module class.
The annotation may also be placed on a module class, to indicate that all services defined for the module should not
allow decoration.
Service decoration includes the decoration mechanism (from Tapestry 5.0) and the newer service advice mechanism (from
Tapestry 5.1).
Generally, services that are used to advise or decorate other services (such as
LoggingAdvisor
or
OperationAdvisor
) should include this annotation, to prevent a recursive service build
when they attempt to advise themselves.