Interface ComponentSelector

All Known Subinterfaces:
LibraryComponentSelector, ModuleComponentSelector, ProjectComponentSelector

public interface ComponentSelector
Represents some opaque criteria used to select a component instance during dependency resolution. Various sub-interfaces expose specific details about the criteria.
Since:
1.10
  • Method Details

    • getDisplayName

      String getDisplayName()
      Returns a human-consumable display name for this selector.
      Returns:
      Display name
      Since:
      1.10
    • matchesStrictly

      boolean matchesStrictly(ComponentIdentifier identifier)
      Checks if selector matches component identifier.
      Parameters:
      identifier - Component identifier
      Returns:
      if this selector matches exactly the given component identifier.
      Since:
      1.10
    • getAttributes

      AttributeContainer getAttributes()
      The attributes of the module to select the component from. The attributes only include selector specific attributes. This means it typically doesn't include any consumer specific attribute.
      Returns:
      the attributes
      Since:
      4.9
    • getRequestedCapabilities

      List<Capability> getRequestedCapabilities()
      The explicitly requested capabilities for this component.

      Prefer getCapabilitySelectors().

      Returns:
      the explicitly requested capabilities.
      Since:
      5.3
    • getCapabilitySelectors

      @Incubating Set<CapabilitySelector> getCapabilitySelectors()
      Returns the set of capabilities that are requested for this component.
      Returns:
      All capability selectors. If empty, the default capability will be selected.
      Since:
      8.11