Interface ConfiguredProvider<T extends NamedService>

Type Parameters:
T - type of the service this provider provides

public interface ConfiguredProvider<T extends NamedService>
Providers that can be loaded from configuration should implement this interface. The configuration is expected to be similar to this (using YAML as an example):
   configured-option:
     discover-services: true # this is the default
     providers:
       provider1-config-key:
         provider1-config: value
       provider2-config-key:
         provider2-config: value
 
  • Method Summary

    Modifier and Type
    Method
    Description
    Key this service implementation is stored under.
    create(Config config, String name)
    Create a new instance from the configuration located on the provided node.
  • Method Details

    • configKey

      String configKey()
      Key this service implementation is stored under. This is also considered the service "type" when used in a list in configuration, to allow the same service defined more than once.
      Returns:
      key of this implementation
    • create

      T create(Config config, String name)
      Create a new instance from the configuration located on the provided node.
      Parameters:
      config - located at configKey() node
      name - name of the configured implementation
      Returns:
      a new instance created from this config node