@Documented @Retention(value=RUNTIME) @Target(value=ANNOTATION_TYPE) public @interface ActAsStingComponent
@Named
and @ContributeTo
annotations.
Normally a type that is annotated with the @Named
annotation, the
@ContributeTo
annotation or a type that has a constructor parameter annotated with the
@Named
annotation will generate a warning if the Sting annotation processor
detects that the type is not annotated with the @Injectable
annotation or an annotation
annotated by a @StingProvider
annotated annotation. This warning is generated because
the annotation processor will not process the annotation and thus considers it an error.
The @ActAsStingComponent can be applied to an annotation and any type that is annotated with that annotation
will not generated warnings in these scenarios. The expectation is that another annotation processor will process
the type and will make use of the @Named
annotations and/or the
@ContributeTo
annotation if present. This allows other frameworks to define their
own component model that is fully integration with sting.
It should be noted that Sting will attempt to use any annotation with this name and shape so that frameworks do not need a direct code dependency on Sting.
InjectorFragment