services:

  geocoder:
    class: Drupal\geocoder\Geocoder
    arguments: ['@config.factory','@plugin.manager.geocoder.provider']

  geocoder.http_adapter:
    class: Drupal\geocoder\GeocoderHttpAdapter
    arguments: ['@http_client']

  plugin.manager.geocoder.provider:
    class: Drupal\geocoder\ProviderPluginManager
    parent: default_plugin_manager
    arguments: ['@config.factory', '@string_translation', '@renderer', '@link_generator']

  plugin.manager.geocoder.dumper:
    class: Drupal\geocoder\DumperPluginManager
    parent: default_plugin_manager
    arguments: ['@logger.factory', '@messenger']

  plugin.manager.geocoder.formatter:
    class: Drupal\geocoder\FormatterPluginManager
    parent: default_plugin_manager

  cache.geocoder:
    class: Drupal\Core\Cache\CacheBackendInterface
    tags:
      - { name: cache.bin }
    factory: cache_factory:get
    arguments: [geocoder]
