services:
  _defaults:
    autowire: true
    autoconfigure: true

  logger.channel.project_browser:
    parent: logger.channel_base
    arguments: ['project_browser']
  Drupal\project_browser\Plugin\ProjectBrowserSourceManager:
    parent: default_plugin_manager
    arguments:
      $configFactory: '@config.factory'
    calls:
      - [setLogger, ['@logger.channel.project_browser']]
  Drupal\project_browser\QueryManager:
    arguments:
      $cache: '@cache.project_browser'
  cache.project_browser:
    class: Drupal\Core\Cache\CacheBackendInterface
    tags:
      - { name: cache.bin }
    factory: cache_factory:get
    arguments: [project_browser]
  Drupal\project_browser\ActivationManager: ~
  Drupal\project_browser\Activator\ModuleActivator:
    tags:
      - { name: project_browser.activator }
    public: false
  Drupal\project_browser\Activator\RecipeActivator:
    arguments:
      '$appRoot': '%app.root%'
    tags:
      - { name: project_browser.activator }
  Drupal\project_browser\Routing\ProjectEnhancer:
    public: false
    tags:
      - { name: route_enhancer }
  Drupal\project_browser\Routing\SourceConverter:
    public: false
    tags:
      - { name: paramconverter }
  Drupal\project_browser\ProjectBrowser\Normalizer: ~
  Drupal\project_browser\InstallProgress:
    arguments:
      $keyValueFactory: '@keyvalue'
  Drupal\project_browser\ProjectRepository:
    arguments:
      $keyValueFactory: '@keyvalue'
  Drupal\project_browser\EventSubscriber\ConfigSubscriber: ~
