Annotation Type Service


  • @Documented
    @Inherited
    @Retention(RUNTIME)
    @Target(TYPE)
    @Analyze("org.tentackle.buildsupport.ServiceAnalyzeHandler")
    public @interface Service
    Annotation to express that the annotated class is a service implementation.
    • Required Element Summary

      Required Elements 
      Modifier and Type Required Element Description
      java.lang.Class<?> value
      Gets the serviced class.
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      boolean meta
      Determines whether the servicing class is the annotated class or the value of the annotated annotation.
      Notice the difference between the serviced and servicing class!
    • Element Detail

      • value

        java.lang.Class<?> value
        Gets the serviced class.
        Returns:
        the serviced class
      • meta

        boolean meta
        Determines whether the servicing class is the annotated class or the value of the annotated annotation.
        Notice the difference between the serviced and servicing class!

        Meta services go to META-INF/meta-services instead of META-INF/services because the provider usually resides in another module.

        Returns:
        true if this a meta annotation and the servicing class is provided by the annotated annotation
        Default:
        false