Interface DependenciesInfo

All Superinterfaces:
Prototype.Api
All Known Implementing Classes:
DependenciesInfo.BuilderBase.DependenciesInfoImpl

public interface DependenciesInfo extends Prototype.Api
Represents a per ServiceInfo mapping of DependencyInfo's. These are typically assigned to a ServiceProvider via compile-time code generation within the Injection framework.
See Also:
  • Method Details

    • builder

      static DependenciesInfo.Builder builder()
      Create a new fluent API builder to customize configuration.
      Returns:
      a new builder
    • builder

      static DependenciesInfo.Builder builder(DependenciesInfo instance)
      Create a new fluent API builder from an existing instance.
      Parameters:
      instance - an existing instance used as a base for the builder
      Returns:
      a builder based on an instance
    • create

      static DependenciesInfo create()
      Create a new instance with default values.
      Returns:
      a new instance
    • serviceInfoDependencies

      Map<ServiceInfoCriteria,Set<DependencyInfo>> serviceInfoDependencies()
      Represents the set of dependencies for each ServiceInfo.
      Returns:
      map from the service info to its dependencies
    • fromServiceTypeName

      Optional<TypeName> fromServiceTypeName()
      Optionally, the service type name aggregating allDependencies().
      Returns:
      the optional service type name for which these dependencies belong
    • allDependencies

      default Set<DependencyInfo> allDependencies()
      Represents a flattened set of all dependencies.
      Returns:
      the flattened set of all dependencies
    • allDependenciesFor

      default List<DependencyInfo> allDependenciesFor(String elemName)
      Represents the list of all dependencies for a given injection point element name ordered by the element position.
      Parameters:
      elemName - the element name of the injection point
      Returns:
      the list of all dependencies got a given element name of a given injection point