Annotation Interface RequiresService


@Retention(RUNTIME) @Target(TYPE) public @interface RequiresService
Use this annotation on implementations of DaemonModules to inform the system about which services it uses from the HippoServiceRegistry and which are provided by other DaemonModules. Together with the ProvidesService annotation, this annotation determines the order in which modules are started (and destroyed because that happens in reversed order).

The optional optional attribute informs the system not to fail loading the module in the absence of the service. I.e. if there is no module that provides the service. If you specify the optional attribute it needs to be an array of booleans that is equal in length to the array of types that is specified in the types attribute.

  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    Class<?>[]
     
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    boolean[]
     
  • Element Details

    • types

      Class<?>[] types
    • optional

      boolean[] optional
      Default:
      {}