Package io.helidon.inject.api


package io.helidon.inject.api
The Helidon Injection API provide these annotation types that are typically used at compile time to assign special meaning to the type. It is used in conjunction with Helidon tooling (see the injection processor and injectio maven-plugin modules) to create and validate the DI module at compile time.
  • Contract - signifies that the type can be used for lookup in the service registry.
  • ExternalContracts - same as Contract, but applied to the implementation class instead.
  • RunLevel - ascribes meaning for when the service should start.
Also note that the set of annotations from both the jakarta.inject and jakarta.annotation modules are the primary way to annotate your DI model types.

Other types from the API are less commonly used, but are still made available for situations where programmatic access is required or desirable in some way. The two most common types for entry into this part of the API are shown below.

  • InjectionServices - suite of services that are typically delivered by the Injection provider.
  • Services - the services registry, which is one such service from this suite.