parameters:
  file.skip_procedural_hook_scan: true

services:
  _defaults:
    autoconfigure: true
    autowire: true

  file.event.subscriber:
    class: Drupal\file\EventSubscriber\FileEventSubscriber
  file.usage:
    class: Drupal\file\FileUsage\DatabaseFileUsageBackend
    tags:
      - { name: backend_overridable }
  Drupal\file\FileUsage\FileUsageInterface: '@file.usage'
  file.upload_handler:
    class: Drupal\file\Upload\FileUploadHandler
  Drupal\file\Upload\FileUploadHandler:
    alias: 'file.upload_handler'
    deprecated: 'The "%alias_id%" service alias is deprecated in drupal:11.2.0 and is removed from drupal:12.0.0. Use Drupal\file\Upload\FileUploadHandlerInterface instead.'
  Drupal\file\Upload\FileUploadHandlerInterface: '@file.upload_handler'
  file.repository:
    class: Drupal\file\FileRepository
  Drupal\file\FileRepositoryInterface: '@file.repository'
  file.recursive_validator_factory:
    class: Drupal\file\Validation\RecursiveValidatorFactory
  Drupal\file\Validation\RecursiveValidatorFactory: '@file.recursive_validator_factory'
  file.recursive_validator:
    class: Symfony\Component\Validator\Validator\ValidatorInterface
    factory: [ '@file.recursive_validator_factory', 'createValidator' ]
  file.validator:
    class: Drupal\file\Validation\FileValidator
  Drupal\file\Validation\FileValidatorInterface: '@file.validator'
  file.input_stream_file_writer:
    class: Drupal\file\Upload\InputStreamFileWriter
  Drupal\file\Upload\InputStreamFileWriterInterface: '@file.input_stream_file_writer'
  Drupal\file\EventSubscriber\DefaultContentSubscriber:
    calls:
      - [setLogger, ['@logger.channel.file']]
