Same filename and directory in other branches
  1. 8.9.x core/core.services.yml
  2. 9 core/core.services.yml
core/core.services.yml

File

core/core.services.yml
View source
  1. parameters:
  2. # The app.root and site.path parameters are dynamically set by
  3. # \Drupal\Core\DrupalKernel::initializeContainer(). They are listed here to
  4. # allow IDEs to autocomplete them when writing new service YAML files.
  5. app.root: ''
  6. site.path: ''
  7. # \Drupal\Core\Cache\ListCacheBinsPass::process() will override this but defining this allows the cache system to
  8. # function properly before that runs.
  9. cache_default_bin_backends: []
  10. memory_cache_default_bin_backends: []
  11. security.enable_super_user: true
  12. session.storage.options:
  13. gc_probability: 1
  14. gc_divisor: 100
  15. gc_maxlifetime: 200000
  16. cookie_lifetime: 2000000
  17. cookie_samesite: Lax
  18. sid_length: 48
  19. sid_bits_per_character: 6
  20. twig.config:
  21. debug: false
  22. auto_reload: null
  23. cache: true
  24. allowed_file_extensions:
  25. - css
  26. - html
  27. - js
  28. - svg
  29. - twig
  30. renderer.config:
  31. required_cache_contexts: ['languages:language_interface', 'theme', 'user.permissions']
  32. auto_placeholder_conditions:
  33. max-age: 0
  34. contexts: ['session', 'user']
  35. tags: []
  36. debug: false
  37. factory.keyvalue:
  38. default: keyvalue.database
  39. http.response.debug_cacheability_headers: false
  40. factory.keyvalue.expirable:
  41. default: keyvalue.expirable.database
  42. filter_protocols:
  43. - http
  44. - https
  45. - ftp
  46. - news
  47. - nntp
  48. - tel
  49. - telnet
  50. - mailto
  51. - irc
  52. - ssh
  53. - sftp
  54. - webcal
  55. - rtsp
  56. cors.config:
  57. enabled: false
  58. allowedHeaders: []
  59. allowedMethods: []
  60. allowedOrigins: ['*']
  61. exposedHeaders: false
  62. maxAge: false
  63. supportsCredentials: false
  64. tempstore.expire: 604800
  65. queue.config:
  66. suspendMaximumWait: 30.0
  67. services:
  68. _defaults:
  69. autoconfigure: true
  70. # Simple cache contexts, directly derived from the request context.
  71. cache_context.ip:
  72. class: Drupal\Core\Cache\Context\IpCacheContext
  73. arguments: ['@request_stack']
  74. tags:
  75. - { name: cache.context }
  76. cache_context.protocol_version:
  77. class: Drupal\Core\Cache\Context\ProtocolVersionCacheContext
  78. arguments: ['@request_stack']
  79. tags:
  80. - { name: cache.context }
  81. cache_context.headers:
  82. class: Drupal\Core\Cache\Context\HeadersCacheContext
  83. arguments: ['@request_stack']
  84. tags:
  85. - { name: cache.context }
  86. cache_context.cookies:
  87. class: Drupal\Core\Cache\Context\CookiesCacheContext
  88. arguments: ['@request_stack']
  89. tags:
  90. - { name: cache.context }
  91. cache_context.session:
  92. class: Drupal\Core\Cache\Context\SessionCacheContext
  93. arguments: ['@request_stack']
  94. tags:
  95. - { name: cache.context}
  96. cache_context.session.exists:
  97. class: Drupal\Core\Cache\Context\SessionExistsCacheContext
  98. arguments: ['@session_configuration', '@request_stack']
  99. tags:
  100. - { name: cache.context}
  101. cache_context.request_format:
  102. class: Drupal\Core\Cache\Context\RequestFormatCacheContext
  103. arguments: ['@request_stack']
  104. tags:
  105. - { name: cache.context }
  106. cache_context.url:
  107. class: Drupal\Core\Cache\Context\UrlCacheContext
  108. arguments: ['@request_stack']
  109. tags:
  110. - { name: cache.context }
  111. cache_context.url.site:
  112. class: Drupal\Core\Cache\Context\SiteCacheContext
  113. arguments: ['@request_stack']
  114. tags:
  115. - { name: cache.context }
  116. cache_context.url.path:
  117. class: Drupal\Core\Cache\Context\PathCacheContext
  118. arguments: ['@request_stack']
  119. tags:
  120. - { name: cache.context }
  121. cache_context.url.path.parent:
  122. class: Drupal\Core\Cache\Context\PathParentCacheContext
  123. arguments: ['@request_stack']
  124. tags:
  125. - { name: cache.context }
  126. cache_context.url.path.is_front:
  127. class: Drupal\Core\Cache\Context\IsFrontPathCacheContext
  128. arguments: ['@path.matcher']
  129. tags:
  130. - { name: cache.context }
  131. cache_context.url.query_args:
  132. class: Drupal\Core\Cache\Context\QueryArgsCacheContext
  133. arguments: ['@request_stack']
  134. tags:
  135. - { name: cache.context }
  136. cache_context.url.query_args.pagers:
  137. class: Drupal\Core\Cache\Context\PagersCacheContext
  138. arguments: ['@pager.parameters']
  139. tags:
  140. - { name: cache.context }
  141. # Complex cache contexts, that depend on the routing system.
  142. cache_context.route:
  143. class: Drupal\Core\Cache\Context\RouteCacheContext
  144. arguments: ['@current_route_match']
  145. tags:
  146. - { name: cache.context }
  147. cache_context.route.name:
  148. class: Drupal\Core\Cache\Context\RouteNameCacheContext
  149. arguments: ['@current_route_match']
  150. tags:
  151. - { name: cache.context }
  152. cache_context.route.menu_active_trails:
  153. class: Drupal\Core\Cache\Context\MenuActiveTrailsCacheContext
  154. arguments: ['@menu.active_trail']
  155. tags:
  156. - { name: cache.context }
  157. # Complex cache contexts, that may be calculated from a combination of
  158. # multiple aspects of the request context plus additional logic. Hence they
  159. # are their own roots.
  160. cache_context.user:
  161. class: Drupal\Core\Cache\Context\UserCacheContext
  162. arguments: ['@current_user']
  163. tags:
  164. - { name: cache.context}
  165. cache_context.user.permissions:
  166. class: Drupal\Core\Cache\Context\AccountPermissionsCacheContext
  167. arguments: ['@current_user', '@user_permissions_hash_generator']
  168. tags:
  169. - { name: cache.context}
  170. cache_context.user.roles:
  171. class: Drupal\Core\Cache\Context\UserRolesCacheContext
  172. arguments: ['@current_user']
  173. tags:
  174. - { name: cache.context}
  175. cache_context.user.is_super_user:
  176. class: Drupal\Core\Cache\Context\IsSuperUserCacheContext
  177. arguments: ['@current_user']
  178. tags:
  179. - { name: cache.context}
  180. cache_context.languages:
  181. class: Drupal\Core\Cache\Context\LanguagesCacheContext
  182. arguments: ['@language_manager']
  183. tags:
  184. - { name: cache.context}
  185. cache_context.theme:
  186. class: Drupal\Core\Cache\Context\ThemeCacheContext
  187. arguments: ['@theme.manager']
  188. tags:
  189. - { name: cache.context}
  190. cache_context.timezone:
  191. class: Drupal\Core\Cache\Context\TimeZoneCacheContext
  192. tags:
  193. - { name: cache.context}
  194. cache_factory:
  195. class: Drupal\Core\Cache\CacheFactory
  196. arguments: ['@settings', '%cache_default_bin_backends%', '%memory_cache_default_bin_backends%']
  197. calls:
  198. - [setContainer, ['@service_container']]
  199. Drupal\Core\Cache\CacheFactoryInterface: '@cache_factory'
  200. variation_cache_factory:
  201. class: Drupal\Core\Cache\VariationCacheFactory
  202. arguments: ['@request_stack', '@cache_factory', '@cache_contexts_manager']
  203. Drupal\Core\Cache\VariationCacheFactory: '@variation_cache_factory'
  204. cache_contexts_manager:
  205. class: Drupal\Core\Cache\Context\CacheContextsManager
  206. arguments: ['@service_container', '%cache_contexts%' ]
  207. Drupal\Core\Cache\Context\CacheContextsManager: '@cache_contexts_manager'
  208. cache_tags.invalidator:
  209. class: Drupal\Core\Cache\CacheTagsInvalidator
  210. tags:
  211. - { name: service_collector, call: addInvalidator, tag: cache_tags_invalidator }
  212. - { name: service_collector, call: addBin, tag: cache.bin }
  213. - { name: service_collector, call: addBin, tag: cache.bin.memory }
  214. Drupal\Core\Cache\CacheTagsInvalidatorInterface: '@cache_tags.invalidator'
  215. cache_tags.invalidator.checksum:
  216. class: Drupal\Core\Cache\DatabaseCacheTagsChecksum
  217. arguments: ['@database']
  218. tags:
  219. - { name: cache_tags_invalidator}
  220. - { name: backend_overridable }
  221. Drupal\Core\Cache\CacheTagsChecksumInterface: '@cache_tags.invalidator.checksum'
  222. cache.backend.chainedfast:
  223. class: Drupal\Core\Cache\ChainedFastBackendFactory
  224. arguments: ['@settings']
  225. calls:
  226. - [setContainer, ['@service_container']]
  227. cache.backend.database:
  228. class: Drupal\Core\Cache\DatabaseBackendFactory
  229. arguments: ['@database', '@cache_tags.invalidator.checksum', '@settings', '@serialization.phpserialize', '@datetime.time']
  230. tags:
  231. - { name: backend_overridable }
  232. cache.backend.apcu:
  233. class: Drupal\Core\Cache\ApcuBackendFactory
  234. arguments: ['%app.root%', '%site.path%', '@cache_tags.invalidator.checksum', '@datetime.time']
  235. cache.backend.php:
  236. class: Drupal\Core\Cache\PhpBackendFactory
  237. arguments: ['@cache_tags.invalidator.checksum', '@datetime.time']
  238. cache.backend.memory:
  239. class: Drupal\Core\Cache\MemoryBackendFactory
  240. arguments: ['@datetime.time']
  241. cache.backend.memory.memory:
  242. class: Drupal\Core\Cache\MemoryCache\MemoryCacheFactory
  243. arguments: ['@datetime.time']
  244. # A special cache bin that does not persist beyond the length of the request.
  245. cache.static:
  246. class: Drupal\Core\Cache\CacheBackendInterface
  247. tags:
  248. - { name: cache.bin, default_backend: cache.backend.memory }
  249. factory: ['@cache_factory', 'get']
  250. arguments: [static]
  251. cache.bootstrap:
  252. class: Drupal\Core\Cache\CacheBackendInterface
  253. tags:
  254. - { name: cache.bin, default_backend: cache.backend.chainedfast }
  255. factory: ['@cache_factory', 'get']
  256. arguments: [bootstrap]
  257. cache.config:
  258. class: Drupal\Core\Cache\CacheBackendInterface
  259. tags:
  260. - { name: cache.bin, default_backend: cache.backend.chainedfast }
  261. factory: ['@cache_factory', 'get']
  262. arguments: [config]
  263. cache.default:
  264. class: Drupal\Core\Cache\CacheBackendInterface
  265. tags:
  266. - { name: cache.bin }
  267. factory: ['@cache_factory', 'get']
  268. arguments: [default]
  269. cache.entity:
  270. class: Drupal\Core\Cache\CacheBackendInterface
  271. tags:
  272. - { name: cache.bin }
  273. factory: ['@cache_factory', 'get']
  274. arguments: [entity]
  275. cache.menu:
  276. class: Drupal\Core\Cache\CacheBackendInterface
  277. tags:
  278. - { name: cache.bin }
  279. factory: ['@cache_factory', 'get']
  280. arguments: [menu]
  281. cache.render:
  282. class: Drupal\Core\Cache\CacheBackendInterface
  283. tags:
  284. - { name: cache.bin }
  285. factory: ['@cache_factory', 'get']
  286. arguments: [render]
  287. cache.access_policy:
  288. class: Drupal\Core\Cache\CacheBackendInterface
  289. tags:
  290. - { name: cache.bin }
  291. factory: ['@cache_factory', 'get']
  292. arguments: [access_policy]
  293. cache.access_policy_memory:
  294. class: Drupal\Core\Cache\CacheBackendInterface
  295. tags:
  296. - { name: cache.bin.memory, default_backend: cache.backend.memory.memory }
  297. factory: ['@cache_factory', 'get']
  298. arguments: [access_policy_memory]
  299. cache.data:
  300. class: Drupal\Core\Cache\CacheBackendInterface
  301. tags:
  302. - { name: cache.bin }
  303. factory: ['@cache_factory', 'get']
  304. arguments: [data]
  305. cache.discovery:
  306. class: Drupal\Core\Cache\CacheBackendInterface
  307. tags:
  308. - { name: cache.bin, default_backend: cache.backend.chainedfast }
  309. factory: ['@cache_factory', 'get']
  310. arguments: [discovery]
  311. variation_cache.access_policy:
  312. class: Drupal\Core\Cache\VariationCacheInterface
  313. factory: ['@variation_cache_factory', 'get']
  314. arguments: [access_policy]
  315. variation_cache.access_policy_memory:
  316. class: Drupal\Core\Cache\VariationCacheInterface
  317. factory: ['@variation_cache_factory', 'get']
  318. arguments: [access_policy_memory]
  319. Drupal\Core\Asset\AssetQueryStringInterface: '@asset.query_string'
  320. asset.query_string:
  321. class: Drupal\Core\Asset\AssetQueryString
  322. arguments:
  323. - '@state'
  324. - '@datetime.time'
  325. cache_router_rebuild_subscriber:
  326. class: Drupal\Core\EventSubscriber\CacheRouterRebuildSubscriber
  327. page_cache_request_policy:
  328. class: Drupal\Core\PageCache\DefaultRequestPolicy
  329. arguments: ['@session_configuration']
  330. tags:
  331. - { name: service_collector, tag: page_cache_request_policy, call: addPolicy}
  332. Drupal\Core\PageCache\RequestPolicyInterface: '@page_cache_request_policy'
  333. page_cache_response_policy:
  334. class: Drupal\Core\PageCache\ChainResponsePolicy
  335. tags:
  336. - { name: service_collector, tag: page_cache_response_policy, call: addPolicy}
  337. lazy: true
  338. Drupal\Core\PageCache\ResponsePolicyInterface: '@page_cache_response_policy'
  339. page_cache_kill_switch:
  340. class: Drupal\Core\PageCache\ResponsePolicy\KillSwitch
  341. tags:
  342. - { name: page_cache_response_policy }
  343. - { name: dynamic_page_cache_response_policy }
  344. Drupal\Core\PageCache\ResponsePolicy\KillSwitch: '@page_cache_kill_switch'
  345. page_cache_no_cache_routes:
  346. class: Drupal\Core\PageCache\ResponsePolicy\DenyNoCacheRoutes
  347. arguments: ['@current_route_match']
  348. public: false
  349. tags:
  350. - { name: page_cache_response_policy }
  351. - { name: dynamic_page_cache_response_policy }
  352. page_cache_no_server_error:
  353. class: Drupal\Core\PageCache\ResponsePolicy\NoServerError
  354. public: false
  355. tags:
  356. - { name: page_cache_response_policy }
  357. - { name: dynamic_page_cache_response_policy }
  358. config.manager:
  359. class: Drupal\Core\Config\ConfigManager
  360. arguments: ['@entity_type.manager', '@config.factory', '@config.typed', '@string_translation', '@config.storage', '@event_dispatcher', '@entity.repository', '@extension.path.resolver']
  361. Drupal\Core\Config\ConfigManagerInterface: '@config.manager'
  362. config.factory:
  363. class: Drupal\Core\Config\ConfigFactory
  364. tags:
  365. - { name: service_collector, tag: 'config.factory.override', call: addOverride }
  366. arguments: ['@config.storage', '@event_dispatcher', '@config.typed']
  367. Drupal\Core\Config\ConfigFactoryInterface: '@config.factory'
  368. config.importer_subscriber:
  369. class: Drupal\Core\Config\Importer\FinalMissingContentSubscriber
  370. config.installer:
  371. class: Drupal\Core\Config\ConfigInstaller
  372. arguments: ['@config.factory', '@config.storage', '@config.typed', '@config.manager', '@event_dispatcher', '%install_profile%', '@extension.path.resolver']
  373. lazy: true
  374. Drupal\Core\Config\ConfigInstallerInterface: '@config.installer'
  375. config.storage:
  376. class: Drupal\Core\Config\CachedStorage
  377. arguments: ['@config.storage.active', '@cache.config']
  378. Drupal\Core\Config\StorageCacheInterface: '@config.storage'
  379. config.storage.active:
  380. class: Drupal\Core\Config\DatabaseStorage
  381. arguments: ['@database', 'config']
  382. public: false
  383. tags:
  384. - { name: backend_overridable }
  385. config.import_transformer:
  386. class: Drupal\Core\Config\ImportStorageTransformer
  387. arguments: ['@event_dispatcher', '@database', '@lock', '@lock.persistent']
  388. Drupal\Core\Config\ImportStorageTransformer: '@config.import_transformer'
  389. config.storage.export:
  390. class: Drupal\Core\Config\ManagedStorage
  391. arguments: ['@config.storage.export.manager']
  392. config.storage.export.manager:
  393. class: Drupal\Core\Config\ExportStorageManager
  394. arguments: ['@config.storage', '@database', '@event_dispatcher', '@lock']
  395. public: false
  396. Drupal\Core\Config\StorageManagerInterface: '@config.storage.export.manager'
  397. config.storage.sync:
  398. class: Drupal\Core\Config\FileStorage
  399. factory: Drupal\Core\Config\FileStorageFactory::getSync
  400. config.storage.snapshot:
  401. class: Drupal\Core\Config\DatabaseStorage
  402. arguments: ['@database', config_snapshot]
  403. tags:
  404. - { name: backend_overridable }
  405. config.storage.schema:
  406. class: Drupal\Core\Config\ExtensionInstallStorage
  407. arguments: ['@config.storage', 'config/schema', '', true, '%install_profile%']
  408. config.typed:
  409. class: Drupal\Core\Config\TypedConfigManager
  410. arguments: ['@config.storage', '@config.storage.schema', '@cache.discovery', '@module_handler', '@class_resolver']
  411. tags:
  412. - { name: plugin_manager_cache_clear }
  413. calls:
  414. - [setValidationConstraintManager, ['@validation.constraint']]
  415. Drupal\Core\Config\TypedConfigManagerInterface: '@config.typed'
  416. context.handler:
  417. class: Drupal\Core\Plugin\Context\ContextHandler
  418. Drupal\Core\Plugin\Context\ContextHandlerInterface: '@context.handler'
  419. context.repository:
  420. class: Drupal\Core\Plugin\Context\LazyContextRepository
  421. arguments: ['@service_container']
  422. tags:
  423. - { name: service_id_collector, tag: context_provider }
  424. Drupal\Core\Plugin\Context\ContextRepositoryInterface: '@context.repository'
  425. Drupal\Component\DependencyInjection\ReverseContainer:
  426. arguments: [ '@service_container' ]
  427. cron:
  428. class: Drupal\Core\Cron
  429. arguments: ['@module_handler', '@lock', '@queue', '@state', '@account_switcher', '@logger.channel.cron', '@plugin.manager.queue_worker', '@datetime.time', '%queue.config%']
  430. lazy: true
  431. Drupal\Core\CronInterface: '@cron'
  432. diff.formatter:
  433. class: Drupal\Core\Diff\DiffFormatter
  434. arguments: ['@config.factory']
  435. Drupal\Core\Diff\DiffFormatter: '@diff.formatter'
  436. database:
  437. class: Drupal\Core\Database\Connection
  438. factory: Drupal\Core\Database\Database::getConnection
  439. arguments: [default]
  440. Drupal\Core\Database\Connection: '@database'
  441. database.replica:
  442. class: Drupal\Core\Database\Connection
  443. factory: Drupal\Core\Database\Database::getConnection
  444. arguments: [replica]
  445. database.replica_kill_switch:
  446. class: Drupal\Core\Database\ReplicaKillSwitch
  447. arguments: ['@settings', '@datetime.time', '@session']
  448. Drupal\Core\Database\ReplicaKillSwitch: '@database.replica_kill_switch'
  449. Drupal\Core\Database\EventSubscriber\StatementExecutionSubscriber: ~
  450. datetime.time:
  451. class: Drupal\Component\Datetime\Time
  452. arguments: ['@request_stack']
  453. Drupal\Component\Datetime\TimeInterface: '@datetime.time'
  454. file_system:
  455. class: Drupal\Core\File\FileSystem
  456. arguments: ['@stream_wrapper_manager', '@settings']
  457. Drupal\Core\File\FileSystemInterface: '@file_system'
  458. file_url_generator:
  459. class: Drupal\Core\File\FileUrlGenerator
  460. arguments: ['@stream_wrapper_manager', '@request_stack', '@module_handler']
  461. Drupal\Core\File\FileUrlGeneratorInterface: '@file_url_generator'
  462. form_builder:
  463. class: Drupal\Core\Form\FormBuilder
  464. arguments: ['@form_validator', '@form_submitter', '@form_cache', '@module_handler', '@event_dispatcher', '@request_stack', '@class_resolver', '@element_info', '@theme.manager', '@?csrf_token']
  465. Drupal\Core\Form\FormBuilderInterface: '@form_builder'
  466. form_validator:
  467. class: Drupal\Core\Form\FormValidator
  468. arguments: ['@request_stack', '@string_translation', '@csrf_token', '@logger.channel.form', '@form_error_handler']
  469. Drupal\Core\Form\FormValidatorInterface: '@form_validator'
  470. form_submitter:
  471. class: Drupal\Core\Form\FormSubmitter
  472. arguments: ['@request_stack', '@url_generator', '@redirect_response_subscriber']
  473. Drupal\Core\Form\FormSubmitterInterface: '@form_submitter'
  474. form_error_handler:
  475. class: Drupal\Core\Form\FormErrorHandler
  476. Drupal\Core\Form\FormErrorHandlerInterface: '@form_error_handler'
  477. form_cache:
  478. class: Drupal\Core\Form\FormCache
  479. arguments: ['%app.root%', '@keyvalue.expirable', '@module_handler', '@current_user', '@csrf_token', '@logger.channel.form', '@request_stack', '@page_cache_request_policy']
  480. public: false # Private to form_builder
  481. Drupal\Core\Form\FormCacheInterface: '@form_cache'
  482. keyvalue:
  483. class: Drupal\Core\KeyValueStore\KeyValueFactory
  484. arguments: ['@service_container', '%factory.keyvalue%']
  485. keyvalue.database:
  486. class: Drupal\Core\KeyValueStore\KeyValueDatabaseFactory
  487. arguments: ['@serialization.phpserialize', '@database']
  488. keyvalue.expirable:
  489. class: Drupal\Core\KeyValueStore\KeyValueExpirableFactory
  490. arguments: ['@service_container', '%factory.keyvalue.expirable%']
  491. keyvalue.expirable.database:
  492. class: Drupal\Core\KeyValueStore\KeyValueDatabaseExpirableFactory
  493. arguments: ['@serialization.phpserialize', '@database', '@datetime.time']
  494. logger.factory:
  495. class: Drupal\Core\Logger\LoggerChannelFactory
  496. arguments: ['@request_stack', '@current_user']
  497. tags:
  498. - { name: service_collector, tag: logger, call: addLogger }
  499. Drupal\Core\Logger\LoggerChannelFactoryInterface: '@logger.factory'
  500. logger.channel_base:
  501. abstract: true
  502. class: Drupal\Core\Logger\LoggerChannel
  503. factory: ['@logger.factory', 'get']
  504. logger.channel.default:
  505. parent: logger.channel_base
  506. arguments: ['system']
  507. logger.channel.php:
  508. parent: logger.channel_base
  509. arguments: ['php']
  510. logger.channel.image:
  511. parent: logger.channel_base
  512. arguments: ['image']
  513. logger.channel.cron:
  514. parent: logger.channel_base
  515. arguments: ['cron']
  516. logger.channel.file:
  517. class: Drupal\Core\Logger\LoggerChannel
  518. factory: ['@logger.factory', 'get']
  519. arguments: ['file']
  520. logger.channel.form:
  521. parent: logger.channel_base
  522. arguments: ['form']
  523. logger.channel.security:
  524. parent: logger.channel_base
  525. arguments: ['security']
  526. logger.channel.mail:
  527. parent: logger.channel_base
  528. arguments: ['mail']
  529. logger.channel.menu:
  530. parent: logger.channel_base
  531. arguments: ['menu']
  532. logger.channel.router:
  533. parent: logger.channel_base
  534. arguments: ['router']
  535. logger.log_message_parser:
  536. class: Drupal\Core\Logger\LogMessageParser
  537. Drupal\Core\Logger\LogMessageParserInterface: '@logger.log_message_parser'
  538. serialization.json:
  539. class: Drupal\Component\Serialization\Json
  540. serialization.phpserialize:
  541. class: Drupal\Component\Serialization\PhpSerialize
  542. Drupal\Component\Serialization\ObjectAwareSerializationInterface: '@serialization.phpserialize'
  543. serialization.yaml:
  544. class: Drupal\Component\Serialization\Yaml
  545. settings:
  546. class: Drupal\Core\Site\Settings
  547. factory: Drupal\Core\Site\Settings::getInstance
  548. Drupal\Core\Site\Settings: '@settings'
  549. state:
  550. class: Drupal\Core\State\State
  551. arguments: ['@keyvalue', '@cache.bootstrap', '@lock']
  552. tags:
  553. - { name: needs_destruction }
  554. Drupal\Core\State\StateInterface: '@state'
  555. queue:
  556. class: Drupal\Core\Queue\QueueFactory
  557. arguments: ['@settings']
  558. calls:
  559. - [setContainer, ['@service_container']]
  560. Drupal\Core\Queue\QueueFactory: '@queue'
  561. queue.database:
  562. class: Drupal\Core\Queue\QueueDatabaseFactory
  563. arguments: ['@database']
  564. Drupal\Core\Queue\QueueDatabaseFactory: '@queue.database'
  565. path.current:
  566. class: Drupal\Core\Path\CurrentPathStack
  567. arguments: ['@request_stack']
  568. Drupal\Core\Path\CurrentPathStack: '@path.current'
  569. http_handler_stack:
  570. class: GuzzleHttp\HandlerStack
  571. public: false
  572. factory: GuzzleHttp\HandlerStack::create
  573. configurator: ['@http_handler_stack_configurator', configure]
  574. GuzzleHttp\HandlerStack: '@http_handler_stack'
  575. http_handler_stack_configurator:
  576. class: Drupal\Core\Http\HandlerStackConfigurator
  577. public: false
  578. arguments: ['@service_container']
  579. tags:
  580. - { name: service_id_collector, tag: http_client_middleware }
  581. Drupal\Core\Http\HandlerStackConfigurator: '@http_handler_stack_configurator'
  582. http_client:
  583. class: GuzzleHttp\Client
  584. factory: ['@http_client_factory', 'fromOptions']
  585. GuzzleHttp\ClientInterface: '@http_client'
  586. Psr\Http\Client\ClientInterface: '@http_client'
  587. http_client_factory:
  588. class: Drupal\Core\Http\ClientFactory
  589. arguments: ['@http_handler_stack']
  590. Drupal\Core\Http\ClientFactory: '@http_client_factory'
  591. plugin.manager.link_relation_type:
  592. class: \Drupal\Core\Http\LinkRelationTypeManager
  593. arguments: ['%app.root%', '@module_handler', '@cache.discovery']
  594. theme.negotiator:
  595. class: Drupal\Core\Theme\ThemeNegotiator
  596. arguments: ['@access_check.theme', '@class_resolver']
  597. tags:
  598. - { name: service_id_collector, tag: theme_negotiator }
  599. Drupal\Core\Theme\ThemeNegotiatorInterface: '@theme.negotiator'
  600. theme.negotiator.default:
  601. class: Drupal\Core\Theme\DefaultNegotiator
  602. arguments: ['@config.factory']
  603. tags:
  604. - { name: theme_negotiator, priority: -100 }
  605. theme.negotiator.ajax_base_page:
  606. class: Drupal\Core\Theme\AjaxBasePageNegotiator
  607. arguments: ['@csrf_token', '@config.factory', '@request_stack']
  608. tags:
  609. - { name: theme_negotiator, priority: 1000 }
  610. container.namespaces:
  611. class: ArrayObject
  612. arguments: [ '%container.namespaces%' ]
  613. container.trait:
  614. abstract: true
  615. calls:
  616. - [setContainer, ['@service_container']]
  617. default_plugin_manager:
  618. abstract: true
  619. arguments: ['@container.namespaces', '@cache.discovery', '@module_handler']
  620. module_handler:
  621. class: Drupal\Core\Extension\ModuleHandler
  622. arguments: ['%app.root%', '%container.modules%', '@cache.bootstrap']
  623. tags:
  624. - { name: needs_destruction }
  625. Drupal\Core\Extension\ModuleHandlerInterface: '@module_handler'
  626. module_installer:
  627. class: Drupal\Core\Extension\ModuleInstaller
  628. tags:
  629. - { name: service_collector, tag: 'module_install.uninstall_validator', call: addUninstallValidator }
  630. arguments: ['%app.root%', '@module_handler', '@kernel', '@database', '@update.update_hook_registry', '@logger.channel.default']
  631. lazy: true
  632. Drupal\Core\Extension\ModuleInstallerInterface: '@module_installer'
  633. extension.list.module:
  634. class: Drupal\Core\Extension\ModuleExtensionList
  635. arguments: ['%app.root%', 'module', '@cache.default', '@info_parser', '@module_handler', '@state', '@config.factory', '@extension.list.profile', '%install_profile%', '%container.modules%']
  636. Drupal\Core\Extension\ModuleExtensionList: '@extension.list.module'
  637. extension.list.profile:
  638. class: Drupal\Core\Extension\ProfileExtensionList
  639. arguments: ['%app.root%', 'profile', '@cache.default', '@info_parser', '@module_handler', '@state', '%install_profile%']
  640. Drupal\Core\Extension\ProfileExtensionList: '@extension.list.profile'
  641. extension.list.theme:
  642. class: Drupal\Core\Extension\ThemeExtensionList
  643. arguments: ['%app.root%', 'theme', '@cache.default', '@info_parser', '@module_handler', '@state', '@config.factory', '@extension.list.theme_engine', '%install_profile%']
  644. Drupal\Core\Extension\ThemeExtensionList: '@extension.list.theme'
  645. extension.list.theme_engine:
  646. class: Drupal\Core\Extension\ThemeEngineExtensionList
  647. arguments: ['%app.root%', 'theme_engine', '@cache.default', '@info_parser', '@module_handler', '@state', '%install_profile%']
  648. Drupal\Core\Extension\ThemeEngineExtensionList: '@extension.list.theme_engine'
  649. extension.list.database_driver:
  650. class: Drupal\Core\Extension\DatabaseDriverList
  651. arguments: ['%app.root%', 'database_driver', '@cache.default']
  652. Drupal\Core\Extension\DatabaseDriverList: '@extension.list.database_driver'
  653. extension.path.resolver:
  654. class: Drupal\Core\Extension\ExtensionPathResolver
  655. arguments: ['@extension.list.module', '@extension.list.profile', '@extension.list.theme', '@extension.list.theme_engine']
  656. Drupal\Core\Extension\ExtensionPathResolver: '@extension.path.resolver'
  657. content_uninstall_validator:
  658. class: Drupal\Core\Entity\ContentUninstallValidator
  659. tags:
  660. - { name: module_install.uninstall_validator }
  661. arguments: ['@entity_type.manager', '@string_translation']
  662. lazy: true
  663. required_module_uninstall_validator:
  664. class: Drupal\Core\Extension\RequiredModuleUninstallValidator
  665. tags:
  666. - { name: module_install.uninstall_validator }
  667. arguments: ['@string_translation', '@extension.list.module']
  668. lazy: true
  669. module_required_by_themes_uninstall_validator:
  670. class: Drupal\Core\Extension\ModuleRequiredByThemesUninstallValidator
  671. tags:
  672. - { name: module_install.uninstall_validator }
  673. arguments: ['@string_translation', '@extension.list.module', '@extension.list.theme']
  674. lazy: true
  675. database_driver_uninstall_validator:
  676. class: Drupal\Core\Extension\DatabaseDriverUninstallValidator
  677. tags:
  678. - { name: module_install.uninstall_validator }
  679. arguments: ['@string_translation', '@extension.list.module', '@database']
  680. lazy: true
  681. install_profile_uninstall_validator:
  682. class: Drupal\Core\Extension\InstallProfileUninstallValidator
  683. tags:
  684. - { name: module_install.uninstall_validator }
  685. arguments: ['@string_translation', '@extension.list.module', '@extension.list.theme', '%install_profile%', '%app.root%', '%site.path%']
  686. lazy: true
  687. theme_handler:
  688. class: Drupal\Core\Extension\ThemeHandler
  689. arguments: ['%app.root%', '@config.factory', '@extension.list.theme']
  690. Drupal\Core\Extension\ThemeHandlerInterface: '@theme_handler'
  691. theme_installer:
  692. class: Drupal\Core\Extension\ThemeInstaller
  693. arguments: ['@theme_handler', '@config.factory', '@config.installer', '@module_handler', '@config.manager', '@asset.css.collection_optimizer', '@router.builder', '@logger.channel.default', '@state', '@extension.list.module', '@theme.registry', '@extension.list.theme']
  694. Drupal\Core\Extension\ThemeInstallerInterface: '@theme_installer'
  695. entity.memory_cache:
  696. class: Drupal\Core\Cache\MemoryCache\MemoryCache
  697. arguments: ['@datetime.time']
  698. Drupal\Core\Cache\MemoryCache\MemoryCacheInterface: '@entity.memory_cache'
  699. entity_type.manager:
  700. class: Drupal\Core\Entity\EntityTypeManager
  701. arguments: ['@container.namespaces', '@module_handler', '@cache.discovery', '@string_translation', '@class_resolver', '@entity.last_installed_schema.repository', '@service_container']
  702. tags:
  703. - { name: plugin_manager_cache_clear }
  704. Drupal\Core\Entity\EntityTypeManagerInterface: '@entity_type.manager'
  705. entity_type.repository:
  706. class: Drupal\Core\Entity\EntityTypeRepository
  707. arguments: ['@entity_type.manager', '@entity_type.bundle.info']
  708. Drupal\Core\Entity\EntityTypeRepositoryInterface: '@entity_type.repository'
  709. entity_type.bundle.info:
  710. class: Drupal\Core\Entity\EntityTypeBundleInfo
  711. arguments: ['@entity_type.manager', '@language_manager', '@module_handler', '@typed_data_manager', '@cache.discovery']
  712. Drupal\Core\Entity\EntityTypeBundleInfoInterface: '@entity_type.bundle.info'
  713. entity.repository:
  714. class: Drupal\Core\Entity\EntityRepository
  715. arguments: ['@entity_type.manager', '@language_manager', '@context.repository']
  716. Drupal\Core\Entity\EntityRepositoryInterface: '@entity.repository'
  717. entity_display.repository:
  718. class: Drupal\Core\Entity\EntityDisplayRepository
  719. arguments: ['@entity_type.manager', '@module_handler', '@cache.discovery', '@language_manager']
  720. Drupal\Core\Entity\EntityDisplayRepositoryInterface: '@entity_display.repository'
  721. entity_field.manager:
  722. class: Drupal\Core\Entity\EntityFieldManager
  723. arguments: ['@entity_type.manager', '@entity_type.bundle.info', '@entity_display.repository', '@typed_data_manager', '@language_manager', '@keyvalue', '@module_handler', '@cache.discovery', '@entity.last_installed_schema.repository']
  724. Drupal\Core\Entity\EntityFieldManagerInterface: '@entity_field.manager'
  725. entity_type.listener:
  726. class: Drupal\Core\Entity\EntityTypeListener
  727. arguments: ['@entity_type.manager', '@entity_field.manager', '@event_dispatcher', '@entity.last_installed_schema.repository']
  728. Drupal\Core\Entity\EntityTypeListenerInterface: '@entity_type.listener'
  729. entity_bundle.listener:
  730. class: Drupal\Core\Entity\EntityBundleListener
  731. arguments: ['@entity_type.manager', '@entity_type.bundle.info', '@entity_field.manager', '@module_handler']
  732. Drupal\Core\Entity\EntityBundleListenerInterface: '@entity_bundle.listener'
  733. entity_route_subscriber:
  734. class: Drupal\Core\EventSubscriber\EntityRouteProviderSubscriber
  735. arguments: ['@entity_type.manager']
  736. entity.definition_update_manager:
  737. class: Drupal\Core\Entity\EntityDefinitionUpdateManager
  738. arguments: ['@entity_type.manager', '@entity.last_installed_schema.repository', '@entity_field.manager', '@entity_type.listener', '@field_storage_definition.listener']
  739. Drupal\Core\Entity\EntityDefinitionUpdateManagerInterface: '@entity.definition_update_manager'
  740. entity.last_installed_schema.repository:
  741. class: Drupal\Core\Entity\EntityLastInstalledSchemaRepository
  742. arguments: ['@keyvalue', '@cache.discovery']
  743. Drupal\Core\Entity\EntityLastInstalledSchemaRepositoryInterface: '@entity.last_installed_schema.repository'
  744. entity_field.deleted_fields_repository:
  745. class: Drupal\Core\Field\DeletedFieldsRepository
  746. arguments: ['@state']
  747. Drupal\Core\Field\DeletedFieldsRepositoryInterface: '@entity_field.deleted_fields_repository'
  748. field_storage_definition.listener:
  749. class: Drupal\Core\Field\FieldStorageDefinitionListener
  750. arguments: ['@entity_type.manager', '@event_dispatcher', '@entity.last_installed_schema.repository', '@entity_field.manager', '@entity_field.deleted_fields_repository']
  751. Drupal\Core\Field\FieldStorageDefinitionListenerInterface: '@field_storage_definition.listener'
  752. field_definition.listener:
  753. class: Drupal\Core\Field\FieldDefinitionListener
  754. arguments: ['@entity_type.manager', '@entity_field.manager', '@keyvalue', '@cache.discovery']
  755. Drupal\Core\Field\FieldDefinitionListenerInterface: '@field_definition.listener'
  756. entity.form_builder:
  757. class: Drupal\Core\Entity\EntityFormBuilder
  758. arguments: ['@entity_type.manager', '@form_builder']
  759. Drupal\Core\Entity\EntityFormBuilderInterface: '@entity.form_builder'
  760. entity.bundle_config_import_validator:
  761. class: Drupal\Core\Entity\Event\BundleConfigImportValidate
  762. arguments: ['@config.manager', '@entity_type.manager']
  763. entity.autocomplete_matcher:
  764. class: Drupal\Core\Entity\EntityAutocompleteMatcher
  765. arguments: ['@plugin.manager.entity_reference_selection']
  766. Drupal\Core\Entity\EntityAutocompleteMatcherInterface: '@entity.autocomplete_matcher'
  767. plugin_form.factory:
  768. class: Drupal\Core\Plugin\PluginFormFactory
  769. arguments: ['@class_resolver']
  770. Drupal\Core\Plugin\PluginFormFactoryInterface: '@plugin_form.factory'
  771. plugin.manager.entity_reference_selection:
  772. class: Drupal\Core\Entity\EntityReferenceSelection\SelectionPluginManager
  773. parent: default_plugin_manager
  774. Drupal\Core\Entity\EntityReferenceSelection\SelectionPluginManagerInterface: '@plugin.manager.entity_reference_selection'
  775. plugin.manager.block:
  776. class: Drupal\Core\Block\BlockManager
  777. parent: default_plugin_manager
  778. arguments: ['@logger.channel.default']
  779. Drupal\Core\Block\BlockManagerInterface: '@plugin.manager.block'
  780. plugin.manager.field.field_type:
  781. class: Drupal\Core\Field\FieldTypePluginManager
  782. arguments: ['@container.namespaces', '@cache.discovery', '@module_handler', '@typed_data_manager', '@plugin.manager.field.field_type_category']
  783. Drupal\Core\Field\FieldTypePluginManagerInterface: '@plugin.manager.field.field_type'
  784. plugin.manager.field.field_type_category:
  785. class: \Drupal\Core\Field\FieldTypeCategoryManager
  786. arguments: [ '%app.root%', '@module_handler', '@cache.discovery' ]
  787. Drupal\Core\Field\FieldTypeCategoryManagerInterface: '@plugin.manager.field.field_type_category'
  788. plugin.manager.field.widget:
  789. class: Drupal\Core\Field\WidgetPluginManager
  790. arguments: ['@container.namespaces', '@cache.discovery', '@module_handler', '@plugin.manager.field.field_type']
  791. plugin.manager.field.formatter:
  792. class: Drupal\Core\Field\FormatterPluginManager
  793. arguments: ['@container.namespaces', '@cache.discovery', '@module_handler', '@plugin.manager.field.field_type']
  794. plugin.manager.archiver:
  795. class: Drupal\Core\Archiver\ArchiverManager
  796. parent: default_plugin_manager
  797. arguments: ['@file_system']
  798. plugin.manager.action:
  799. class: Drupal\Core\Action\ActionManager
  800. arguments: ['@container.namespaces', '@cache.discovery', '@module_handler']
  801. plugin.manager.menu.link:
  802. class: Drupal\Core\Menu\MenuLinkManager
  803. arguments: ['@menu.tree_storage', '@menu_link.static.overrides', '@module_handler']
  804. Drupal\Core\Menu\MenuLinkManagerInterface: '@plugin.manager.menu.link'
  805. menu.link_tree:
  806. class: Drupal\Core\Menu\MenuLinkTree
  807. arguments: ['@menu.tree_storage', '@plugin.manager.menu.link', '@router.route_provider', '@menu.active_trail', '@callable_resolver']
  808. Drupal\Core\Menu\MenuLinkTreeInterface: '@menu.link_tree'
  809. menu.default_tree_manipulators:
  810. class: Drupal\Core\Menu\DefaultMenuLinkTreeManipulators
  811. arguments: ['@access_manager', '@current_user', '@entity_type.manager', '@module_handler']
  812. Drupal\Core\Menu\DefaultMenuLinkTreeManipulators: '@menu.default_tree_manipulators'
  813. menu.active_trail:
  814. class: Drupal\Core\Menu\MenuActiveTrail
  815. arguments: ['@plugin.manager.menu.link', '@current_route_match', '@cache.menu', '@lock']
  816. tags:
  817. - { name: needs_destruction }
  818. lazy: true
  819. Drupal\Core\Menu\MenuActiveTrailInterface: '@menu.active_trail'
  820. menu.parent_form_selector:
  821. class: Drupal\Core\Menu\MenuParentFormSelector
  822. arguments: ['@menu.link_tree', '@entity_type.manager', '@string_translation']
  823. Drupal\Core\Menu\MenuParentFormSelectorInterface: '@menu.parent_form_selector'
  824. plugin.manager.menu.local_action:
  825. class: Drupal\Core\Menu\LocalActionManager
  826. arguments: ['@http_kernel.controller.argument_resolver', '@request_stack', '@current_route_match', '@router.route_provider', '@module_handler', '@cache.discovery', '@language_manager', '@access_manager', '@current_user']
  827. Drupal\Core\Menu\LocalActionManagerInterface: '@plugin.manager.menu.local_action'
  828. plugin.manager.menu.local_task:
  829. class: Drupal\Core\Menu\LocalTaskManager
  830. arguments: ['@http_kernel.controller.argument_resolver', '@request_stack', '@current_route_match', '@router.route_provider', '@module_handler', '@cache.discovery', '@language_manager', '@access_manager', '@current_user']
  831. Drupal\Core\Menu\LocalTaskManagerInterface: '@plugin.manager.menu.local_task'
  832. plugin.manager.menu.contextual_link:
  833. class: Drupal\Core\Menu\ContextualLinkManager
  834. arguments: ['@controller_resolver', '@module_handler', '@cache.discovery', '@language_manager', '@access_manager', '@current_user', '@request_stack']
  835. Drupal\Core\Menu\ContextualLinkManagerInterface: '@plugin.manager.menu.contextual_link'
  836. plugin.manager.display_variant:
  837. class: Drupal\Core\Display\VariantManager
  838. parent: default_plugin_manager
  839. plugin.manager.queue_worker:
  840. class: Drupal\Core\Queue\QueueWorkerManager
  841. parent: default_plugin_manager
  842. Drupal\Core\Queue\QueueWorkerManagerInterface: '@plugin.manager.queue_worker'
  843. plugin.cache_clearer:
  844. class: Drupal\Core\Plugin\CachedDiscoveryClearer
  845. lazy: true
  846. Drupal\Core\Plugin\CachedDiscoveryClearerInterface: '@plugin.cache_clearer'
  847. paramconverter.menu_link:
  848. class: Drupal\Core\ParamConverter\MenuLinkPluginConverter
  849. tags:
  850. - { name: paramconverter }
  851. arguments: ['@plugin.manager.menu.link']
  852. lazy: true
  853. menu.tree_storage:
  854. class: Drupal\Core\Menu\MenuTreeStorage
  855. arguments: ['@database', '@cache.menu', '@cache_tags.invalidator', 'menu_tree']
  856. public: false # Private to plugin.manager.menu.link and menu.link_tree
  857. tags:
  858. - { name: backend_overridable }
  859. Drupal\Core\Menu\MenuTreeStorageInterface: '@menu.tree_storage'
  860. menu_link.static.overrides:
  861. class: Drupal\Core\Menu\StaticMenuLinkOverrides
  862. arguments: ['@config.factory']
  863. Drupal\Core\Menu\StaticMenuLinkOverridesInterface: '@menu_link.static.overrides'
  864. request_stack:
  865. class: Symfony\Component\HttpFoundation\RequestStack
  866. tags:
  867. - { name: persist }
  868. Symfony\Component\HttpFoundation\RequestStack: '@request_stack'
  869. current_route_match:
  870. class: Drupal\Core\Routing\CurrentRouteMatch
  871. arguments: ['@request_stack']
  872. Drupal\Core\Routing\RouteMatchInterface: '@current_route_match'
  873. event_dispatcher:
  874. class: Symfony\Component\EventDispatcher\EventDispatcher
  875. Psr\EventDispatcher\EventDispatcherInterface: '@event_dispatcher'
  876. Symfony\Contracts\EventDispatcher\EventDispatcherInterface: '@event_dispatcher'
  877. controller_resolver:
  878. class: Drupal\Core\Controller\ControllerResolver
  879. arguments: ['@callable_resolver']
  880. Drupal\Core\Controller\ControllerResolverInterface: '@controller_resolver'
  881. Symfony\Component\HttpKernel\Controller\ControllerResolverInterface: '@controller_resolver'
  882. class_resolver:
  883. class: Drupal\Core\DependencyInjection\ClassResolver
  884. arguments: ['@service_container']
  885. Drupal\Core\DependencyInjection\ClassResolverInterface: '@class_resolver'
  886. callable_resolver:
  887. class: Drupal\Core\Utility\CallableResolver
  888. arguments: ['@class_resolver']
  889. Drupal\Core\Utility\CallableResolver: '@callable_resolver'
  890. title_resolver:
  891. class: Drupal\Core\Controller\TitleResolver
  892. arguments: ['@controller_resolver', '@string_translation', '@http_kernel.controller.argument_resolver']
  893. Drupal\Core\Controller\TitleResolverInterface: '@title_resolver'
  894. http_kernel:
  895. class: Drupal\Core\StackMiddleware\StackedHttpKernel
  896. Symfony\Component\HttpKernel\HttpKernelInterface: '@http_kernel'
  897. http_kernel.basic:
  898. class: Symfony\Component\HttpKernel\HttpKernel
  899. arguments: ['@event_dispatcher', '@controller_resolver', '@request_stack', '@http_kernel.controller.argument_resolver', true]
  900. http_kernel.controller.argument_resolver:
  901. class: Symfony\Component\HttpKernel\Controller\ArgumentResolver
  902. arguments: ['@http_kernel.controller.argument_metadata_factory', ['@argument_resolver.request_attribute', '@argument_resolver.request', '@argument_resolver.psr7_request', '@argument_resolver.route_match', '@argument_resolver.default']]
  903. Symfony\Component\HttpKernel\Controller\ArgumentResolverInterface: '@http_kernel.controller.argument_resolver'
  904. http_kernel.controller.argument_metadata_factory:
  905. class: Symfony\Component\HttpKernel\ControllerMetadata\ArgumentMetadataFactory
  906. public: false
  907. Symfony\Component\HttpKernel\ControllerMetadata\ArgumentMetadataFactoryInterface: '@http_kernel.controller.argument_metadata_factory'
  908. argument_resolver.request_attribute:
  909. class: Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestAttributeValueResolver
  910. public: false
  911. argument_resolver.request:
  912. class: Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestValueResolver
  913. public: false
  914. argument_resolver.psr7_request:
  915. class: Drupal\Core\Controller\ArgumentResolver\Psr7RequestValueResolver
  916. arguments: ['@psr7.http_message_factory']
  917. public: false
  918. argument_resolver.route_match:
  919. class: Drupal\Core\Controller\ArgumentResolver\RouteMatchValueResolver
  920. public: false
  921. argument_resolver.default:
  922. class: Symfony\Component\HttpKernel\Controller\ArgumentResolver\DefaultValueResolver
  923. public: false
  924. http_middleware.content_length:
  925. class: Drupal\Core\StackMiddleware\ContentLength
  926. tags:
  927. # Must run before the page_cache and big_pipe middleware.
  928. - { name: http_middleware, priority: 140 }
  929. http_middleware.ajax_page_state:
  930. class: Drupal\Core\StackMiddleware\AjaxPageState
  931. tags:
  932. - { name: http_middleware, priority: 500 }
  933. http_middleware.negotiation:
  934. class: Drupal\Core\StackMiddleware\NegotiationMiddleware
  935. tags:
  936. - { name: http_middleware, priority: 400 }
  937. http_middleware.reverse_proxy:
  938. class: Drupal\Core\StackMiddleware\ReverseProxyMiddleware
  939. arguments: ['@settings']
  940. tags:
  941. - { name: http_middleware, priority: 300 }
  942. http_middleware.kernel_pre_handle:
  943. class: Drupal\Core\StackMiddleware\KernelPreHandle
  944. arguments: ['@kernel']
  945. tags:
  946. - { name: http_middleware, priority: 100 }
  947. http_middleware.session:
  948. class: Drupal\Core\StackMiddleware\Session
  949. autowire: true
  950. tags:
  951. - { name: http_middleware, priority: 50 }
  952. http_middleware.cors:
  953. class: Asm89\Stack\Cors
  954. arguments: ['%cors.config%']
  955. tags:
  956. - { name: http_middleware, priority: 250 }
  957. psr7.http_foundation_factory:
  958. class: Symfony\Bridge\PsrHttpMessage\Factory\HttpFoundationFactory
  959. Symfony\Bridge\PsrHttpMessage\HttpFoundationFactoryInterface: '@psr7.http_foundation_factory'
  960. psr17.server_request_factory:
  961. class: GuzzleHttp\Psr7\HttpFactory
  962. public: false
  963. Psr\Http\Message\ServerRequestFactoryInterface: '@psr17.server_request_factory'
  964. psr17.stream_factory:
  965. class: GuzzleHttp\Psr7\HttpFactory
  966. public: false
  967. Psr\Http\Message\StreamFactoryInterface: '@psr17.stream_factory'
  968. psr17.uploaded_file_factory:
  969. class: GuzzleHttp\Psr7\HttpFactory
  970. public: false
  971. Psr\Http\Message\UploadedFileFactoryInterface: '@psr17.uploaded_file_factory'
  972. psr17.response_factory:
  973. class: GuzzleHttp\Psr7\HttpFactory
  974. public: false
  975. Psr\Http\Message\ResponseFactoryInterface: '@psr17.response_factory'
  976. psr7.http_message_factory:
  977. class: Symfony\Bridge\PsrHttpMessage\Factory\PsrHttpFactory
  978. arguments: ['@psr17.server_request_factory', '@psr17.stream_factory', '@psr17.uploaded_file_factory', '@psr17.response_factory']
  979. Symfony\Bridge\PsrHttpMessage\HttpMessageFactoryInterface: '@psr7.http_message_factory'
  980. language_manager:
  981. class: Drupal\Core\Language\LanguageManager
  982. arguments: ['@language.default']
  983. Drupal\Core\Language\LanguageManagerInterface: '@language_manager'
  984. language.current_language_context:
  985. class: Drupal\Core\Language\ContextProvider\CurrentLanguageContext
  986. arguments: ['@language_manager']
  987. tags:
  988. - { name: 'context_provider' }
  989. language.default:
  990. class: Drupal\Core\Language\LanguageDefault
  991. arguments: ['%language.default_values%']
  992. Drupal\Core\Language\LanguageDefault: '@language.default'
  993. string_translator.custom_strings:
  994. class: Drupal\Core\StringTranslation\Translator\CustomStrings
  995. arguments: ['@settings']
  996. tags:
  997. - { name: string_translator, priority: 30 }
  998. string_translation:
  999. class: Drupal\Core\StringTranslation\TranslationManager
  1000. arguments: ['@language.default']
  1001. tags:
  1002. - { name: service_collector, tag: string_translator, call: addTranslator }
  1003. Drupal\Core\StringTranslation\TranslationInterface: '@string_translation'
  1004. typed_data_manager:
  1005. class: Drupal\Core\TypedData\TypedDataManager
  1006. arguments: ['@container.namespaces', '@cache.discovery', '@module_handler', '@class_resolver']
  1007. calls:
  1008. - [setValidationConstraintManager, ['@validation.constraint']]
  1009. tags:
  1010. - { name: plugin_manager_cache_clear }
  1011. Drupal\Core\TypedData\TypedDataManagerInterface: '@typed_data_manager'
  1012. validation.constraint:
  1013. class: Drupal\Core\Validation\ConstraintManager
  1014. parent: default_plugin_manager
  1015. tags:
  1016. - { name: plugin_manager_cache_clear }
  1017. validation.basic_recursive_validator_factory:
  1018. class: Drupal\Core\Validation\BasicRecursiveValidatorFactory
  1019. arguments: ['@class_resolver']
  1020. Drupal\Core\Validation\BasicRecursiveValidatorFactory: '@validation.basic_recursive_validator_factory'
  1021. lock:
  1022. class: Drupal\Core\Lock\DatabaseLockBackend
  1023. arguments: ['@database']
  1024. tags:
  1025. - { name: backend_overridable }
  1026. lazy: true
  1027. lock.persistent:
  1028. class: Drupal\Core\Lock\PersistentDatabaseLockBackend
  1029. arguments: ['@database']
  1030. tags:
  1031. - { name: backend_overridable }
  1032. lazy: true
  1033. router.request_context:
  1034. class: Drupal\Core\Routing\RequestContext
  1035. tags:
  1036. - { name: persist }
  1037. calls:
  1038. - [fromRequestStack, ['@request_stack']]
  1039. Drupal\Core\Routing\RequestContext: '@router.request_context'
  1040. router.admin_context:
  1041. class: Drupal\Core\Routing\AdminContext
  1042. arguments: ['@current_route_match']
  1043. Drupal\Core\Routing\AdminContext: '@router.admin_context'
  1044. router.route_provider:
  1045. class: Drupal\Core\Routing\RouteProvider
  1046. arguments: ['@database', '@state', '@path.current', '@cache.data', '@path_processor_manager', '@cache_tags.invalidator', 'router', '@language_manager']
  1047. tags:
  1048. - { name: backend_overridable }
  1049. Drupal\Core\Routing\RouteProviderInterface: '@router.route_provider'
  1050. router.route_provider.lazy_builder:
  1051. class: Drupal\Core\Routing\RouteProviderLazyBuilder
  1052. arguments: ['@router.route_provider', '@router.builder']
  1053. router.route_preloader:
  1054. class: Drupal\Core\Routing\RoutePreloader
  1055. arguments: ['@router.route_provider', '@state']
  1056. url_generator.non_bubbling:
  1057. class: Drupal\Core\Routing\UrlGenerator
  1058. arguments: ['@router.route_provider', '@path_processor_manager', '@route_processor_manager', '@request_stack', '%filter_protocols%']
  1059. public: false
  1060. calls:
  1061. - [setContext, ['@?router.request_context']]
  1062. url_generator:
  1063. class: Drupal\Core\Render\MetadataBubblingUrlGenerator
  1064. arguments: ['@url_generator.non_bubbling', '@renderer']
  1065. calls:
  1066. - [setContext, ['@?router.request_context']]
  1067. Drupal\Core\Routing\UrlGeneratorInterface: '@url_generator'
  1068. Symfony\Component\Routing\Generator\UrlGeneratorInterface: '@url_generator'
  1069. redirect.destination:
  1070. class: Drupal\Core\Routing\RedirectDestination
  1071. arguments: ['@request_stack', '@url_generator']
  1072. Drupal\Core\Routing\RedirectDestinationInterface: '@redirect.destination'
  1073. unrouted_url_assembler:
  1074. class: Drupal\Core\Utility\UnroutedUrlAssembler
  1075. arguments: ['@request_stack', '@path_processor_manager', '%filter_protocols%']
  1076. Drupal\Core\Utility\UnroutedUrlAssemblerInterface: '@unrouted_url_assembler'
  1077. link_generator:
  1078. class: Drupal\Core\Utility\LinkGenerator
  1079. arguments: ['@url_generator', '@module_handler', '@renderer']
  1080. Drupal\Core\Utility\LinkGeneratorInterface: '@link_generator'
  1081. router:
  1082. class: Drupal\Core\Routing\AccessAwareRouter
  1083. arguments: ['@router.no_access_checks', '@access_manager', '@current_user']
  1084. Drupal\Core\Routing\AccessAwareRouterInterface: '@router'
  1085. router.no_access_checks:
  1086. class: \Drupal\Core\Routing\Router
  1087. arguments: ['@router.route_provider', '@path.current', '@url_generator']
  1088. tags:
  1089. - { name: service_collector, tag: non_lazy_route_enhancer, call: addDeprecatedRouteEnhancer }
  1090. - { name: service_collector, tag: route_enhancer, call: addRouteEnhancer }
  1091. - { name: service_collector, tag: non_lazy_route_filter, call: addDeprecatedRouteFilter }
  1092. - { name: service_collector, tag: route_filter, call: addRouteFilter }
  1093. calls:
  1094. - [setContext, ['@router.request_context']]
  1095. router.path_roots_subscriber:
  1096. class: Drupal\Core\EventSubscriber\PathRootsSubscriber
  1097. arguments: ['@state']
  1098. entity.query.config:
  1099. class: Drupal\Core\Config\Entity\Query\QueryFactory
  1100. arguments: ['@config.factory', '@keyvalue', '@config.manager']
  1101. entity.query.sql:
  1102. class: Drupal\Core\Entity\Query\Sql\QueryFactory
  1103. arguments: ['@database']
  1104. tags:
  1105. - { name: backend_overridable }
  1106. pgsql.entity.query.sql:
  1107. class: Drupal\Core\Entity\Query\Sql\pgsql\QueryFactory
  1108. arguments: ['@database']
  1109. entity.query.null:
  1110. class: Drupal\Core\Entity\Query\Null\QueryFactory
  1111. entity.query.keyvalue:
  1112. class: Drupal\Core\Entity\KeyValueStore\Query\QueryFactory
  1113. arguments: ['@keyvalue']
  1114. router.dumper:
  1115. class: Drupal\Core\Routing\MatcherDumper
  1116. arguments: ['@database', '@state', '@logger.channel.router']
  1117. tags:
  1118. - { name: backend_overridable }
  1119. lazy: true
  1120. Drupal\Core\Routing\MatcherDumperInterface: '@router.dumper'
  1121. router.builder:
  1122. class: Drupal\Core\Routing\RouteBuilder
  1123. arguments: ['@router.dumper', '@lock', '@event_dispatcher', '@module_handler', '@controller_resolver', '@access_manager.check_provider']
  1124. lazy: true
  1125. tags:
  1126. - { name: needs_destruction }
  1127. Drupal\Core\Routing\RouteBuilderInterface: '@router.builder'
  1128. menu.rebuild_subscriber:
  1129. class: Drupal\Core\EventSubscriber\MenuRouterRebuildSubscriber
  1130. arguments: ['@lock', '@plugin.manager.menu.link', '@database', '@database.replica_kill_switch', '@logger.channel.menu']
  1131. path.matcher:
  1132. class: Drupal\Core\Path\PathMatcher
  1133. arguments: ['@config.factory', '@current_route_match']
  1134. Drupal\Core\Path\PathMatcherInterface: '@path.matcher'
  1135. path.validator:
  1136. class: Drupal\Core\Path\PathValidator
  1137. arguments: ['@router', '@router.no_access_checks', '@current_user', '@path_processor_manager']
  1138. Drupal\Core\Path\PathValidatorInterface: '@path.validator'
  1139. password:
  1140. class: Drupal\Core\Password\PhpPassword
  1141. Drupal\Core\Password\PasswordInterface: '@password'
  1142. password_generator:
  1143. class: Drupal\Core\Password\DefaultPasswordGenerator
  1144. Drupal\Core\Password\PasswordGeneratorInterface: '@password_generator'
  1145. request_format_route_filter:
  1146. class: Drupal\Core\Routing\RequestFormatRouteFilter
  1147. tags:
  1148. - { name: route_filter }
  1149. method_filter:
  1150. class: Drupal\Core\Routing\MethodFilter
  1151. tags:
  1152. # The HTTP method route filter must run very early: it removes any routes
  1153. # whose requirements do not allow the HTTP method of the current request.
  1154. # Throws a 405 if no routes match the current request's HTTP method.
  1155. # (If it runs before content_type_header_matcher, it can ensure that only
  1156. # receives routes which can have a Content-Type request header.)
  1157. - { name: route_filter, priority: 10 }
  1158. content_type_header_matcher:
  1159. class: Drupal\Core\Routing\ContentTypeHeaderMatcher
  1160. tags:
  1161. # The Content-Type request header route filter must run early: it removes
  1162. # any routes whose requirements do not allow the Content-Type request
  1163. # header of the current request.
  1164. # Throws a 415 if no routes match the Content-Type request header of the
  1165. # current request, or if it has no Content-Type request header.
  1166. # Note it does nothing for GET requests.
  1167. - { name: route_filter, priority: 5 }
  1168. paramconverter_manager:
  1169. class: Drupal\Core\ParamConverter\ParamConverterManager
  1170. tags:
  1171. - { name: service_collector, tag: paramconverter, call: addConverter }
  1172. Drupal\Core\ParamConverter\ParamConverterManagerInterface: '@paramconverter_manager'
  1173. paramconverter_subscriber:
  1174. class: Drupal\Core\EventSubscriber\ParamConverterSubscriber
  1175. arguments: ['@paramconverter_manager']
  1176. paramconverter.entity:
  1177. class: Drupal\Core\ParamConverter\EntityConverter
  1178. tags:
  1179. - { name: paramconverter }
  1180. arguments: ['@entity_type.manager', '@entity.repository']
  1181. paramconverter.entity_revision:
  1182. class: Drupal\Core\ParamConverter\EntityRevisionParamConverter
  1183. tags:
  1184. - { name: paramconverter }
  1185. arguments: ['@entity_type.manager', '@entity.repository']
  1186. paramconverter.configentity_admin:
  1187. class: Drupal\Core\ParamConverter\AdminPathConfigEntityConverter
  1188. tags:
  1189. # Use a higher priority than EntityConverter, see the class for details.
  1190. - { name: paramconverter, priority: 5 }
  1191. arguments: ['@entity_type.manager', '@config.factory', '@router.admin_context', '@entity.repository']
  1192. lazy: true
  1193. route_subscriber.module:
  1194. class: Drupal\Core\EventSubscriber\ModuleRouteSubscriber
  1195. arguments: ['@module_handler']
  1196. resolver_manager.entity:
  1197. class: Drupal\Core\Entity\EntityResolverManager
  1198. arguments: ['@entity_type.manager', '@class_resolver']
  1199. Drupal\Core\Entity\EntityResolverManager: '@resolver_manager.entity'
  1200. route_subscriber.entity:
  1201. class: Drupal\Core\EventSubscriber\EntityRouteAlterSubscriber
  1202. arguments: ['@resolver_manager.entity']
  1203. ajax_response.subscriber:
  1204. class: Drupal\Core\EventSubscriber\AjaxResponseSubscriber
  1205. autowire: true
  1206. form_ajax_subscriber:
  1207. class: Drupal\Core\Form\EventSubscriber\FormAjaxSubscriber
  1208. arguments: ['@form_ajax_response_builder', '@string_translation', '@messenger']
  1209. route_enhancer.param_conversion:
  1210. class: Drupal\Core\Routing\Enhancer\ParamConversionEnhancer
  1211. arguments: ['@paramconverter_manager']
  1212. tags:
  1213. - { name: route_enhancer, priority: 5000 }
  1214. route_enhancer.form:
  1215. class: Drupal\Core\Routing\Enhancer\FormRouteEnhancer
  1216. tags:
  1217. - { name: route_enhancer }
  1218. route_enhancer.entity:
  1219. class: Drupal\Core\Entity\Enhancer\EntityRouteEnhancer
  1220. tags:
  1221. - { name: route_enhancer, priority: 20 }
  1222. route_enhancer.entity_bundle:
  1223. class: Drupal\Core\Entity\Enhancer\EntityBundleRouteEnhancer
  1224. arguments: ['@entity_type.manager']
  1225. tags:
  1226. - { name: route_enhancer }
  1227. route_enhancer.entity_revision:
  1228. class: Drupal\Core\Routing\Enhancer\EntityRevisionRouteEnhancer
  1229. tags:
  1230. - { name: route_enhancer }
  1231. route_special_attributes_subscriber:
  1232. class: Drupal\Core\EventSubscriber\SpecialAttributesRouteSubscriber
  1233. route_http_method_subscriber:
  1234. class: Drupal\Core\EventSubscriber\RouteMethodSubscriber
  1235. psr_response_view_subscriber:
  1236. class: Drupal\Core\EventSubscriber\PsrResponseSubscriber
  1237. arguments: ['@psr7.http_foundation_factory']
  1238. # Main content view subscriber plus the renderers it uses.
  1239. main_content_view_subscriber:
  1240. class: Drupal\Core\EventSubscriber\MainContentViewSubscriber
  1241. arguments: ['@class_resolver', '@current_route_match', '%main_content_renderers%']
  1242. renderer_non_html:
  1243. class: Drupal\Core\EventSubscriber\RenderArrayNonHtmlSubscriber
  1244. main_content_renderer.html:
  1245. class: Drupal\Core\Render\MainContent\HtmlRenderer
  1246. arguments: ['@title_resolver', '@plugin.manager.display_variant', '@event_dispatcher', '@module_handler', '@renderer', '@render_cache', '%renderer.config%', '@theme.manager']
  1247. tags:
  1248. - { name: render.main_content_renderer, format: html }
  1249. main_content_renderer.ajax:
  1250. class: Drupal\Core\Render\MainContent\AjaxRenderer
  1251. arguments: ['@element_info', '@renderer']
  1252. tags:
  1253. - { name: render.main_content_renderer, format: drupal_ajax }
  1254. - { name: render.main_content_renderer, format: iframeupload }
  1255. main_content_renderer.dialog:
  1256. class: Drupal\Core\Render\MainContent\DialogRenderer
  1257. arguments: ['@title_resolver', '@renderer']
  1258. tags:
  1259. - { name: render.main_content_renderer, format: drupal_dialog }
  1260. main_content_renderer.off_canvas:
  1261. class: Drupal\Core\Render\MainContent\OffCanvasRenderer
  1262. arguments: ['@title_resolver', '@renderer']
  1263. tags:
  1264. - { name: render.main_content_renderer, format: drupal_dialog.off_canvas }
  1265. main_content_renderer.off_canvas_top:
  1266. class: Drupal\Core\Render\MainContent\OffCanvasRenderer
  1267. arguments: ['@title_resolver', '@renderer', 'top']
  1268. tags:
  1269. - { name: render.main_content_renderer, format: drupal_dialog.off_canvas_top }
  1270. main_content_renderer.modal:
  1271. class: Drupal\Core\Render\MainContent\ModalRenderer
  1272. arguments: ['@title_resolver', '@renderer']
  1273. tags:
  1274. - { name: render.main_content_renderer, format: drupal_modal }
  1275. controller.form:
  1276. class: Drupal\Core\Controller\HtmlFormController
  1277. arguments: ['@http_kernel.controller.argument_resolver', '@form_builder', '@class_resolver']
  1278. Drupal\Core\Controller\HtmlFormController: '@controller.form'
  1279. controller.entity_form:
  1280. class: Drupal\Core\Entity\HtmlEntityFormController
  1281. arguments: ['@http_kernel.controller.argument_resolver', '@form_builder', '@entity_type.manager']
  1282. Drupal\Core\Entity\HtmlEntityFormController: '@controller.entity_form'
  1283. form_ajax_response_builder:
  1284. class: Drupal\Core\Form\FormAjaxResponseBuilder
  1285. arguments: ['@main_content_renderer.ajax', '@current_route_match']
  1286. Drupal\Core\Form\FormAjaxResponseBuilderInterface: '@form_ajax_response_builder'
  1287. router_listener:
  1288. class: Symfony\Component\HttpKernel\EventListener\RouterListener
  1289. arguments: ['@router', '@request_stack', '@router.request_context', NULL]
  1290. options_request_listener:
  1291. class: Drupal\Core\EventSubscriber\OptionsRequestSubscriber
  1292. arguments: ['@router.route_provider']
  1293. bare_html_page_renderer:
  1294. class: Drupal\Core\Render\BareHtmlPageRenderer
  1295. arguments: ['@renderer', '@html_response.attachments_processor']
  1296. lazy: true
  1297. Drupal\Core\Render\BareHtmlPageRendererInterface: '@bare_html_page_renderer'
  1298. private_key:
  1299. class: Drupal\Core\PrivateKey
  1300. arguments: ['@state']
  1301. Drupal\Core\PrivateKey: '@private_key'
  1302. csrf_token:
  1303. class: Drupal\Core\Access\CsrfTokenGenerator
  1304. arguments: ['@private_key', '@session_manager.metadata_bag']
  1305. Drupal\Core\Access\CsrfTokenGenerator: '@csrf_token'
  1306. access_arguments_resolver_factory:
  1307. class: Drupal\Core\Access\AccessArgumentsResolverFactory
  1308. Drupal\Core\Access\AccessArgumentsResolverFactoryInterface: '@access_arguments_resolver_factory'
  1309. access_manager:
  1310. class: Drupal\Core\Access\AccessManager
  1311. arguments: ['@router.route_provider', '@paramconverter_manager', '@access_arguments_resolver_factory', '@current_user', '@access_manager.check_provider']
  1312. Drupal\Core\Access\AccessManagerInterface: '@access_manager'
  1313. access_manager.check_provider:
  1314. class: Drupal\Core\Access\CheckProvider
  1315. arguments: ['%dynamic_access_check_services%']
  1316. public: false
  1317. Drupal\Core\Access\CheckProviderInterface: '@access_manager.check_provider'
  1318. access_check.default:
  1319. class: Drupal\Core\Access\DefaultAccessCheck
  1320. tags:
  1321. - { name: access_check, applies_to: _access }
  1322. access_check.entity:
  1323. class: Drupal\Core\Entity\EntityAccessCheck
  1324. tags:
  1325. - { name: access_check, applies_to: _entity_access }
  1326. access_check.entity_create:
  1327. class: Drupal\Core\Entity\EntityCreateAccessCheck
  1328. arguments: ['@entity_type.manager']
  1329. tags:
  1330. - { name: access_check, applies_to: _entity_create_access }
  1331. access_check.entity_create_any:
  1332. class: Drupal\Core\Entity\EntityCreateAnyAccessCheck
  1333. arguments: ['@entity_type.manager', '@entity_type.bundle.info']
  1334. tags:
  1335. - { name: access_check, applies_to: _entity_create_any_access }
  1336. access_check.entity_delete_multiple:
  1337. class: Drupal\Core\Entity\EntityDeleteMultipleAccessCheck
  1338. arguments: ['@entity_type.manager', '@tempstore.private', '@request_stack']
  1339. tags:
  1340. - { name: access_check, applies_to: _entity_delete_multiple_access }
  1341. access_check.theme:
  1342. class: Drupal\Core\Theme\ThemeAccessCheck
  1343. arguments: ['@theme_handler']
  1344. tags:
  1345. - { name: access_check, applies_to: _access_theme }
  1346. access_check.custom:
  1347. class: Drupal\Core\Access\CustomAccessCheck
  1348. arguments: ['@callable_resolver', '@access_arguments_resolver_factory']
  1349. tags:
  1350. - { name: access_check, applies_to: _custom_access }
  1351. access_check.csrf:
  1352. class: Drupal\Core\Access\CsrfAccessCheck
  1353. tags:
  1354. - { name: access_check, applies_to: _csrf_token, needs_incoming_request: TRUE }
  1355. arguments: ['@csrf_token']
  1356. access_check.header.csrf:
  1357. class: Drupal\Core\Access\CsrfRequestHeaderAccessCheck
  1358. arguments: ['@session_configuration', '@csrf_token']
  1359. tags:
  1360. - { name: access_check, needs_incoming_request: TRUE }
  1361. maintenance_mode:
  1362. class: Drupal\Core\Site\MaintenanceMode
  1363. arguments: ['@state', '@config.factory']
  1364. Drupal\Core\Site\MaintenanceModeInterface: '@maintenance_mode'
  1365. maintenance_mode_subscriber:
  1366. class: Drupal\Core\EventSubscriber\MaintenanceModeSubscriber
  1367. arguments: ['@maintenance_mode', '@config.factory', '@string_translation', '@url_generator', '@current_user', '@bare_html_page_renderer', '@messenger', '@event_dispatcher']
  1368. route_access_response_subscriber:
  1369. class: Drupal\Core\EventSubscriber\RouteAccessResponseSubscriber
  1370. client_error_response_subscriber:
  1371. class: Drupal\Core\EventSubscriber\ClientErrorResponseSubscriber
  1372. anonymous_user_response_subscriber:
  1373. class: Drupal\Core\EventSubscriber\AnonymousUserResponseSubscriber
  1374. arguments: ['@current_user']
  1375. ajax_response.attachments_processor:
  1376. class: Drupal\Core\Ajax\AjaxResponseAttachmentsProcessor
  1377. arguments: ['@asset.resolver', '@config.factory', '@asset.css.collection_renderer', '@asset.js.collection_renderer', '@request_stack', '@renderer', '@module_handler', '@language_manager']
  1378. html_response.attachments_processor:
  1379. class: Drupal\Core\Render\HtmlResponseAttachmentsProcessor
  1380. arguments: ['@asset.resolver', '@config.factory', '@asset.css.collection_renderer', '@asset.js.collection_renderer', '@request_stack', '@renderer', '@module_handler', '@language_manager']
  1381. html_response.subscriber:
  1382. class: Drupal\Core\EventSubscriber\HtmlResponseSubscriber
  1383. arguments: ['@html_response.attachments_processor']
  1384. finish_response_subscriber:
  1385. class: Drupal\Core\EventSubscriber\FinishResponseSubscriber
  1386. arguments: ['@language_manager', '@config.factory', '@page_cache_request_policy', '@page_cache_response_policy', '@cache_contexts_manager', '@datetime.time', '%http.response.debug_cacheability_headers%']
  1387. response_generator_subscriber:
  1388. class: Drupal\Core\EventSubscriber\ResponseGeneratorSubscriber
  1389. redirect_response_subscriber:
  1390. class: Drupal\Core\EventSubscriber\RedirectResponseSubscriber
  1391. autowire: true
  1392. redirect_leading_slashes_subscriber:
  1393. class: Drupal\Core\EventSubscriber\RedirectLeadingSlashesSubscriber
  1394. config_import_subscriber:
  1395. class: Drupal\Core\EventSubscriber\ConfigImportSubscriber
  1396. tags:
  1397. - { name: service_collector, tag: 'module_install.uninstall_validator', call: addUninstallValidator }
  1398. arguments: ['@extension.list.theme', '@extension.list.module']
  1399. config_snapshot_subscriber:
  1400. class: Drupal\Core\EventSubscriber\ConfigSnapshotSubscriber
  1401. arguments: ['@config.manager', '@config.storage', '@config.storage.snapshot']
  1402. config_exclude_modules_subscriber:
  1403. class: Drupal\Core\EventSubscriber\ExcludedModulesEventSubscriber
  1404. arguments: ['@config.storage', '@settings', '@config.manager']
  1405. exception.needs_installer:
  1406. class: Drupal\Core\EventSubscriber\ExceptionDetectNeedsInstallSubscriber
  1407. arguments: ['@database']
  1408. exception.default_json:
  1409. class: Drupal\Core\EventSubscriber\ExceptionJsonSubscriber
  1410. exception.default_html:
  1411. class: Drupal\Core\EventSubscriber\DefaultExceptionHtmlSubscriber
  1412. arguments: ['@http_kernel', '@logger.channel.php', '@redirect.destination', '@router.no_access_checks']
  1413. exception.final:
  1414. class: Drupal\Core\EventSubscriber\FinalExceptionSubscriber
  1415. arguments: ['@config.factory']
  1416. exception.logger:
  1417. class: Drupal\Core\EventSubscriber\ExceptionLoggingSubscriber
  1418. arguments: ['@logger.factory']
  1419. exception.custom_page_html:
  1420. class: Drupal\Core\EventSubscriber\CustomPageExceptionHtmlSubscriber
  1421. arguments: ['@config.factory', '@http_kernel', '@logger.channel.php', '@redirect.destination', '@router.no_access_checks', '@access_manager']
  1422. exception.fast_404_html:
  1423. class: Drupal\Core\EventSubscriber\Fast404ExceptionHtmlSubscriber
  1424. arguments: ['@config.factory', '@cache_tags.invalidator']
  1425. exception.enforced_form_response:
  1426. class: Drupal\Core\EventSubscriber\EnforcedFormResponseSubscriber
  1427. route_processor_manager:
  1428. class: Drupal\Core\RouteProcessor\RouteProcessorManager
  1429. tags:
  1430. - { name: service_collector, tag: route_processor_outbound, call: addOutbound }
  1431. Drupal\Core\RouteProcessor\OutboundRouteProcessorInterface: '@route_processor_manager'
  1432. path_processor_manager:
  1433. class: Drupal\Core\PathProcessor\PathProcessorManager
  1434. tags:
  1435. - { name: service_collector, tag: path_processor_inbound, call: addInbound }
  1436. - { name: service_collector, tag: path_processor_outbound, call: addOutbound }
  1437. Drupal\Core\PathProcessor\InboundPathProcessorInterface: '@path_processor_manager'
  1438. Drupal\Core\PathProcessor\OutboundPathProcessorInterface: '@path_processor_manager'
  1439. path_processor_decode:
  1440. class: Drupal\Core\PathProcessor\PathProcessorDecode
  1441. tags:
  1442. - { name: path_processor_inbound, priority: 1000 }
  1443. path_processor_front:
  1444. class: Drupal\Core\PathProcessor\PathProcessorFront
  1445. tags:
  1446. - { name: path_processor_inbound, priority: 200 }
  1447. arguments: ['@config.factory']
  1448. route_processor_current:
  1449. class: Drupal\Core\RouteProcessor\RouteProcessorCurrent
  1450. arguments: ['@current_route_match']
  1451. tags:
  1452. - { name: route_processor_outbound, priority: 200 }
  1453. route_processor_csrf:
  1454. class: Drupal\Core\Access\RouteProcessorCsrf
  1455. tags:
  1456. - { name: route_processor_outbound }
  1457. arguments: ['@csrf_token']
  1458. transliteration:
  1459. class: Drupal\Core\Transliteration\PhpTransliteration
  1460. arguments: [null, '@module_handler']
  1461. flood:
  1462. class: Drupal\Core\Flood\DatabaseBackend
  1463. arguments: ['@database', '@request_stack', '@datetime.time']
  1464. tags:
  1465. - { name: backend_overridable }
  1466. Drupal\Core\Flood\FloodInterface: '@flood'
  1467. plugin.manager.mail:
  1468. class: Drupal\Core\Mail\MailManager
  1469. arguments: ['@container.namespaces', '@cache.discovery', '@module_handler', '@config.factory', '@logger.factory', '@string_translation', '@renderer']
  1470. Drupal\Core\Mail\MailManagerInterface: '@plugin.manager.mail'
  1471. plugin.manager.condition:
  1472. class: Drupal\Core\Condition\ConditionManager
  1473. parent: default_plugin_manager
  1474. Drupal\Core\Executable\ExecutableManagerInterface: '@plugin.manager.condition'
  1475. plugin.manager.element_info:
  1476. class: Drupal\Core\Render\ElementInfoManager
  1477. arguments: ['@container.namespaces', '@cache.discovery', '@theme_handler', '@module_handler', '@theme.manager']
  1478. Drupal\Core\Render\ElementInfoManagerInterface: '@plugin.manager.element_info'
  1479. stream_wrapper_manager:
  1480. class: Drupal\Core\StreamWrapper\StreamWrapperManager
  1481. Drupal\Core\StreamWrapper\StreamWrapperManagerInterface: '@stream_wrapper_manager'
  1482. stream_wrapper.assets:
  1483. class: Drupal\Core\StreamWrapper\AssetsStream
  1484. tags:
  1485. - { name: stream_wrapper, scheme: assets }
  1486. Drupal\Core\StreamWrapper\AssetsStream: '@stream_wrapper.assets'
  1487. stream_wrapper.public:
  1488. class: Drupal\Core\StreamWrapper\PublicStream
  1489. tags:
  1490. - { name: stream_wrapper, scheme: public }
  1491. stream_wrapper.temporary:
  1492. class: Drupal\Core\StreamWrapper\TemporaryStream
  1493. tags:
  1494. - { name: stream_wrapper, scheme: temporary }
  1495. image.toolkit.manager:
  1496. class: Drupal\Core\ImageToolkit\ImageToolkitManager
  1497. arguments: ['@config.factory']
  1498. parent: default_plugin_manager
  1499. tags:
  1500. - { name: plugin_manager_cache_clear }
  1501. Drupal\Core\ImageToolkit\ImageToolkitManager: '@image.toolkit.manager'
  1502. image.toolkit.operation.manager:
  1503. class: Drupal\Core\ImageToolkit\ImageToolkitOperationManager
  1504. arguments: ['@logger.channel.image', '@image.toolkit.manager']
  1505. parent: default_plugin_manager
  1506. tags:
  1507. - { name: plugin_manager_cache_clear }
  1508. Drupal\Core\ImageToolkit\ImageToolkitOperationManagerInterface: '@image.toolkit.operation.manager'
  1509. image.factory:
  1510. class: Drupal\Core\Image\ImageFactory
  1511. arguments: ['@image.toolkit.manager']
  1512. Drupal\Core\Image\ImageFactory: '@image.factory'
  1513. breadcrumb:
  1514. class: Drupal\Core\Breadcrumb\BreadcrumbManager
  1515. arguments: ['@module_handler']
  1516. tags:
  1517. - { name: service_collector, tag: breadcrumb_builder, call: addBuilder }
  1518. Drupal\Core\Breadcrumb\ChainBreadcrumbBuilderInterface: '@breadcrumb'
  1519. token:
  1520. class: Drupal\Core\Utility\Token
  1521. arguments: ['@module_handler', '@cache.default', '@language_manager', '@cache_tags.invalidator', '@renderer']
  1522. Drupal\Core\Utility\Token: '@token'
  1523. batch.storage:
  1524. class: Drupal\Core\Batch\BatchStorage
  1525. arguments: ['@database', '@session', '@csrf_token', '@datetime.time']
  1526. tags:
  1527. - { name: backend_overridable }
  1528. lazy: true
  1529. Drupal\Core\Batch\BatchStorageInterface: '@batch.storage'
  1530. country_manager:
  1531. class: Drupal\Core\Locale\CountryManager
  1532. arguments: ['@module_handler']
  1533. Drupal\Core\Locale\CountryManagerInterface: '@country_manager'
  1534. date.formatter:
  1535. class: Drupal\Core\Datetime\DateFormatter
  1536. arguments: ['@entity_type.manager', '@language_manager', '@string_translation', '@config.factory', '@request_stack']
  1537. Drupal\Core\Datetime\DateFormatterInterface: '@date.formatter'
  1538. theme.manager:
  1539. class: Drupal\Core\Theme\ThemeManager
  1540. arguments: ['%app.root%', '@theme.negotiator', '@theme.initialization', '@module_handler']
  1541. calls:
  1542. - [setThemeRegistry, ['@theme.registry']]
  1543. Drupal\Core\Theme\ThemeManagerInterface: '@theme.manager'
  1544. theme.initialization:
  1545. class: Drupal\Core\Theme\ThemeInitialization
  1546. arguments: ['%app.root%', '@theme_handler', '@cache.bootstrap', '@module_handler']
  1547. Drupal\Core\Theme\ThemeInitializationInterface: '@theme.initialization'
  1548. theme.registry:
  1549. class: Drupal\Core\Theme\Registry
  1550. arguments: ['%app.root%', '@cache.default', '@lock', '@module_handler', '@theme_handler', '@theme.initialization', '@cache.bootstrap', '@extension.list.module']
  1551. tags:
  1552. - { name: needs_destruction }
  1553. calls:
  1554. - [setThemeManager, ['@theme.manager']]
  1555. Drupal\Core\Theme\Registry: '@theme.registry'
  1556. authentication:
  1557. class: Drupal\Core\Authentication\AuthenticationManager
  1558. arguments: ['@authentication_collector']
  1559. Drupal\Core\Authentication\AuthenticationProviderInterface: '@authentication'
  1560. authentication_collector:
  1561. class: Drupal\Core\Authentication\AuthenticationCollector
  1562. tags:
  1563. - { name: service_collector, tag: authentication_provider, call: addProvider }
  1564. Drupal\Core\Authentication\AuthenticationCollectorInterface: '@authentication_collector'
  1565. authentication_subscriber:
  1566. class: Drupal\Core\EventSubscriber\AuthenticationSubscriber
  1567. arguments: ['@authentication', '@current_user']
  1568. account_switcher:
  1569. class: Drupal\Core\Session\AccountSwitcher
  1570. arguments: ['@current_user', '@session_handler.write_safe']
  1571. Drupal\Core\Session\AccountSwitcherInterface: '@account_switcher'
  1572. access_policy_processor:
  1573. class: Drupal\Core\Session\AccessPolicyProcessor
  1574. arguments: ['@variation_cache.access_policy', '@variation_cache.access_policy_memory', '@cache.access_policy_memory', '@current_user', '@account_switcher']
  1575. tags:
  1576. - { name: service_collector, call: addAccessPolicy, tag: access_policy }
  1577. Drupal\Core\Session\AccessPolicyChainInterface: '@access_policy_processor'
  1578. access_policy.super_user:
  1579. class: Drupal\Core\Session\SuperUserAccessPolicy
  1580. tags:
  1581. - { name: access_policy }
  1582. Drupal\Core\Session\SuperUserAccessPolicy: '@access_policy.super_user'
  1583. access_policy.user_roles:
  1584. class: Drupal\Core\Session\UserRolesAccessPolicy
  1585. arguments: ['@entity_type.manager']
  1586. tags:
  1587. - { name: access_policy }
  1588. Drupal\Core\Session\UserRolesAccessPolicy: '@access_policy.user_roles'
  1589. permission_checker:
  1590. class: Drupal\Core\Session\PermissionChecker
  1591. arguments: ['@access_policy_processor']
  1592. Drupal\Core\Session\PermissionCheckerInterface: '@permission_checker'
  1593. user_permissions_hash_generator:
  1594. class: Drupal\Core\Session\PermissionsHashGenerator
  1595. arguments: ['@private_key', '@cache.static', '@access_policy_processor']
  1596. Drupal\Core\Session\PermissionsHashGeneratorInterface: '@user_permissions_hash_generator'
  1597. current_user:
  1598. class: Drupal\Core\Session\AccountProxy
  1599. arguments: ['@event_dispatcher']
  1600. Drupal\Core\Session\AccountInterface: '@current_user'
  1601. Drupal\Core\Session\AccountProxyInterface: '@current_user'
  1602. session_configuration:
  1603. class: Drupal\Core\Session\SessionConfiguration
  1604. arguments: ['%session.storage.options%']
  1605. Drupal\Core\Session\SessionConfigurationInterface: '@session_configuration'
  1606. session:
  1607. class: Symfony\Component\HttpFoundation\Session\Session
  1608. arguments: ['@session_manager', '@session.attribute_bag', '@session.flash_bag']
  1609. tags:
  1610. - { name: service_collector, tag: session_bag, call: registerBag }
  1611. Symfony\Component\HttpFoundation\Session\SessionInterface: '@session'
  1612. # session.flash_bag has special treatment: it is passed to the session
  1613. # service as an argument. Other services using FlashBag should be tagged
  1614. # with the session_bag tag, so that they will persist across page loads.
  1615. session.flash_bag:
  1616. class: Symfony\Component\HttpFoundation\Session\Flash\FlashBag
  1617. public: false
  1618. Symfony\Component\HttpFoundation\Session\Flash\FlashBagInterface: '@session.flash_bag'
  1619. session.attribute_bag:
  1620. class: Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag
  1621. public: false
  1622. Symfony\Component\HttpFoundation\Session\Attribute\AttributeBagInterface: '@session.attribute_bag'
  1623. session_handler:
  1624. alias: session_handler.storage
  1625. session_handler.storage:
  1626. class: Drupal\Core\Session\SessionHandler
  1627. arguments: ['@request_stack', '@database', '@datetime.time']
  1628. tags:
  1629. - { name: backend_overridable }
  1630. session_handler.write_safe:
  1631. class: Drupal\Core\Session\WriteSafeSessionHandler
  1632. tags:
  1633. - { name: session_handler_proxy, priority: 150 }
  1634. Drupal\Core\Session\WriteSafeSessionHandlerInterface: '@session_handler.write_safe'
  1635. session_manager:
  1636. class: Drupal\Core\Session\SessionManager
  1637. arguments: ['@request_stack', '@database', '@session_manager.metadata_bag', '@session_configuration', '@datetime.time', '@session_handler']
  1638. tags:
  1639. - { name: backend_overridable }
  1640. calls:
  1641. - [setWriteSafeHandler, ['@session_handler.write_safe']]
  1642. Drupal\Core\Session\SessionManagerInterface: '@session_manager'
  1643. session_manager.metadata_bag:
  1644. class: Drupal\Core\Session\MetadataBag
  1645. arguments: ['@settings']
  1646. Drupal\Core\Session\MetadataBag: '@session_manager.metadata_bag'
  1647. asset.css.collection_renderer:
  1648. class: Drupal\Core\Asset\CssCollectionRenderer
  1649. arguments: [ '@asset.query_string', '@file_url_generator' ]
  1650. asset.css.collection_optimizer:
  1651. class: Drupal\Core\Asset\CssCollectionOptimizerLazy
  1652. arguments: [ '@asset.css.collection_grouper', '@asset.css.optimizer', '@theme.manager', '@library.dependency_resolver', '@request_stack', '@file_system', '@config.factory', '@file_url_generator', '@datetime.time', '@language_manager']
  1653. asset.css.optimizer:
  1654. class: Drupal\Core\Asset\CssOptimizer
  1655. arguments: ['@file_url_generator']
  1656. asset.css.collection_grouper:
  1657. class: Drupal\Core\Asset\CssCollectionGrouper
  1658. asset.css.dumper:
  1659. class: Drupal\Core\Asset\AssetDumper
  1660. arguments: ['@file_system']
  1661. asset.js.collection_renderer:
  1662. class: Drupal\Core\Asset\JsCollectionRenderer
  1663. arguments: [ '@asset.query_string','@file_url_generator', '@datetime.time' ]
  1664. asset.js.collection_optimizer:
  1665. class: Drupal\Core\Asset\JsCollectionOptimizerLazy
  1666. arguments: [ '@asset.js.collection_grouper', '@asset.js.optimizer', '@theme.manager', '@library.dependency_resolver', '@request_stack', '@file_system', '@config.factory', '@file_url_generator', '@datetime.time', '@language_manager']
  1667. asset.js.optimizer:
  1668. class: Drupal\Core\Asset\JsOptimizer
  1669. arguments: ['@logger.channel.default']
  1670. asset.js.collection_grouper:
  1671. class: Drupal\Core\Asset\JsCollectionGrouper
  1672. asset.js.dumper:
  1673. class: Drupal\Core\Asset\AssetDumper
  1674. arguments: ['@file_system']
  1675. library.discovery:
  1676. class: Drupal\Core\Asset\LibraryDiscovery
  1677. arguments: ['@library.discovery.collector']
  1678. Drupal\Core\Asset\LibraryDiscoveryInterface: '@library.discovery'
  1679. library.discovery.collector:
  1680. class: Drupal\Core\Asset\LibraryDiscoveryCollector
  1681. arguments: ['@cache.discovery', '@lock', '@library.discovery.parser', '@theme.manager']
  1682. tags:
  1683. - { name: needs_destruction }
  1684. library.discovery.parser:
  1685. class: Drupal\Core\Asset\LibraryDiscoveryParser
  1686. arguments: ['%app.root%', '@module_handler', '@theme.manager', '@stream_wrapper_manager', '@library.libraries_directory_file_finder', '@extension.path.resolver', '@plugin.manager.sdc']
  1687. Drupal\Core\Asset\LibraryDiscoveryParser: '@library.discovery.parser'
  1688. library.libraries_directory_file_finder:
  1689. class: Drupal\Core\Asset\LibrariesDirectoryFileFinder
  1690. arguments: ['%app.root%', '%site.path%', '@extension.list.profile', '%install_profile%']
  1691. Drupal\Core\Asset\LibrariesDirectoryFileFinder: '@library.libraries_directory_file_finder'
  1692. library.dependency_resolver:
  1693. class: Drupal\Core\Asset\LibraryDependencyResolver
  1694. arguments: ['@library.discovery']
  1695. Drupal\Core\Asset\LibraryDependencyResolverInterface: '@library.dependency_resolver'
  1696. asset.resolver:
  1697. class: Drupal\Core\Asset\AssetResolver
  1698. arguments: ['@library.discovery', '@library.dependency_resolver', '@module_handler', '@theme.manager', '@language_manager', '@cache.data']
  1699. Drupal\Core\Asset\AssetResolverInterface: '@asset.resolver'
  1700. info_parser:
  1701. class: Drupal\Core\Extension\InfoParser
  1702. arguments: ['%app.root%']
  1703. Drupal\Core\Extension\InfoParserInterface: '@info_parser'
  1704. twig:
  1705. class: Drupal\Core\Template\TwigEnvironment
  1706. arguments: ['%app.root%', '@cache.default', '%twig_extension_hash%', '@state', '@twig.loader', '%twig.config%']
  1707. tags:
  1708. - { name: service_collector, tag: 'twig.extension', call: addExtension }
  1709. Drupal\Core\Template\TwigEnvironment: '@twig'
  1710. twig.extension:
  1711. class: Drupal\Core\Template\TwigExtension
  1712. arguments: ['@renderer', '@url_generator', '@theme.manager', '@date.formatter', '@file_url_generator']
  1713. tags:
  1714. - { name: twig.extension, priority: 100 }
  1715. Drupal\Core\Template\ComponentsTwigExtension:
  1716. arguments: ['@plugin.manager.sdc', '@Drupal\Core\Theme\Component\ComponentValidator']
  1717. tags:
  1718. - { name: twig.extension, priority: 101 }
  1719. twig.extension.debug:
  1720. class: Twig\Extension\DebugExtension
  1721. tags:
  1722. - { name: twig.extension, priority: 50 }
  1723. twig.extension.varDumper:
  1724. class: Drupal\Core\Template\DebugExtension
  1725. tags:
  1726. # This extension is loaded after the Twig Debug Extension because for Twig
  1727. # Extensions, last extension loaded takes precedent. This allows this
  1728. # extension to override the default Twig Debug Extension conditionally
  1729. # when Symfony VarDumper is available.
  1730. - { name: twig.extension, priority: 25 }
  1731. twig.loader:
  1732. class: Twig\Loader\ChainLoader
  1733. public: false
  1734. tags:
  1735. - { name: service_collector, tag: twig.loader, call: addLoader, required: TRUE }
  1736. Twig\Loader\LoaderInterface: '@twig.loader'
  1737. twig.loader.filesystem:
  1738. class: Drupal\Core\Template\Loader\FilesystemLoader
  1739. # We use '.' instead of '%app.root%' as the path for non-namespaced template
  1740. # files so that they match the relative paths of templates loaded via the
  1741. # theme registry or via Twig namespaces.
  1742. arguments: ['.', '@module_handler', '@theme_handler', '%twig.config%']
  1743. tags:
  1744. - { name: twig.loader, priority: 100 }
  1745. twig.loader.theme_registry:
  1746. class: Drupal\Core\Template\Loader\ThemeRegistryLoader
  1747. arguments: ['@theme.registry']
  1748. tags:
  1749. - { name: twig.loader, priority: 0 }
  1750. twig.loader.string:
  1751. class: Drupal\Core\Template\Loader\StringLoader
  1752. tags:
  1753. - { name: twig.loader, priority: -100 }
  1754. element_info:
  1755. alias: plugin.manager.element_info
  1756. file.htaccess_writer:
  1757. class: Drupal\Core\File\HtaccessWriter
  1758. arguments: ['@logger.channel.security', '@stream_wrapper_manager']
  1759. Drupal\Core\File\HtaccessWriterInterface: '@file.htaccess_writer'
  1760. file.mime_type.guesser:
  1761. class: Drupal\Core\File\MimeType\MimeTypeGuesser
  1762. arguments: ['@stream_wrapper_manager']
  1763. tags:
  1764. - { name: service_collector, tag: mime_type_guesser, call: addMimeTypeGuesser }
  1765. lazy: true
  1766. file.mime_type.guesser.extension:
  1767. class: Drupal\Core\File\MimeType\ExtensionMimeTypeGuesser
  1768. arguments: ['@module_handler']
  1769. tags:
  1770. - { name: mime_type_guesser }
  1771. lazy: true
  1772. # Currently needs to be public as it is called by
  1773. # \Drupal\Core\Render\Element\StatusMessages.
  1774. # @todo Consider making this service private again after
  1775. # https://www.drupal.org/node/2367555 lands.
  1776. render_placeholder_generator:
  1777. class: Drupal\Core\Render\PlaceholderGenerator
  1778. arguments: ['@cache_contexts_manager', '%renderer.config%']
  1779. Drupal\Core\Render\PlaceholderGeneratorInterface: '@render_placeholder_generator'
  1780. render_cache:
  1781. class: Drupal\Core\Render\PlaceholderingRenderCache
  1782. arguments: ['@request_stack', '@variation_cache_factory', '@cache_contexts_manager', '@render_placeholder_generator']
  1783. Drupal\Core\Render\RenderCacheInterface: '@render_cache'
  1784. renderer:
  1785. class: Drupal\Core\Render\Renderer
  1786. arguments: ['@callable_resolver', '@theme.manager', '@plugin.manager.element_info', '@render_placeholder_generator', '@render_cache', '@request_stack', '%renderer.config%']
  1787. Drupal\Core\Render\RendererInterface: '@renderer'
  1788. early_rendering_controller_wrapper_subscriber:
  1789. class: Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber
  1790. arguments: ['@http_kernel.controller.argument_resolver', '@renderer']
  1791. # Placeholder strategies for rendering placeholders.
  1792. html_response.placeholder_strategy_subscriber:
  1793. class: Drupal\Core\EventSubscriber\HtmlResponsePlaceholderStrategySubscriber
  1794. arguments: ['@placeholder_strategy']
  1795. placeholder_strategy:
  1796. class: Drupal\Core\Render\Placeholder\ChainedPlaceholderStrategy
  1797. tags:
  1798. - { name: service_collector, tag: placeholder_strategy, call: addPlaceholderStrategy }
  1799. Drupal\Core\Render\Placeholder\PlaceholderStrategyInterface: '@placeholder_strategy'
  1800. placeholder_strategy.single_flush:
  1801. class: Drupal\Core\Render\Placeholder\SingleFlushStrategy
  1802. tags:
  1803. - { name: placeholder_strategy, priority: -1000 }
  1804. email.validator:
  1805. class: Drupal\Component\Utility\EmailValidator
  1806. Drupal\Component\Utility\EmailValidatorInterface: '@email.validator'
  1807. update.update_hook_registry:
  1808. class: Drupal\Core\Update\UpdateHookRegistry
  1809. arguments: ['%container.modules%', '@keyvalue']
  1810. Drupal\Core\Update\UpdateHookRegistry: '@update.update_hook_registry'
  1811. update.update_hook_registry_factory:
  1812. class: Drupal\Core\Update\UpdateHookRegistryFactory
  1813. parent: container.trait
  1814. deprecated: The "%service_id%" service is deprecated. You should use the 'update.update_hook_registry' service instead. See https://www.drupal.org/node/3423659
  1815. update.post_update_registry:
  1816. class: Drupal\Core\Update\UpdateRegistry
  1817. arguments: ['%app.root%', '%site.path%', '%container.modules%', '@update.key_value.post_update', '@theme_handler', 'post_update']
  1818. update.key_value.post_update:
  1819. class: Drupal\Core\KeyValueStore\KeyValueStoreInterface
  1820. factory: ['@keyvalue', 'get']
  1821. arguments: ['post_update']
  1822. public: false
  1823. update.post_update_registry_factory:
  1824. class: Drupal\Core\Update\UpdateRegistryFactory
  1825. parent: container.trait
  1826. deprecated: The "%service_id%" service is deprecated. You should use the 'update.post_update_registry' service instead. See https://www.drupal.org/node/3423659
  1827. uuid:
  1828. class: Drupal\Component\Uuid\Php
  1829. Drupal\Component\Uuid\UuidInterface: '@uuid'
  1830. response_filter.active_link:
  1831. class: Drupal\Core\EventSubscriber\ActiveLinkResponseFilter
  1832. arguments: ['@current_user', '@path.current', '@path.matcher', '@language_manager']
  1833. response_filter.rss.relative_url:
  1834. class: Drupal\Core\EventSubscriber\RssResponseRelativeUrlFilter
  1835. messenger:
  1836. class: Drupal\Core\Messenger\Messenger
  1837. arguments: ['@session.flash_bag', '@page_cache_kill_switch']
  1838. Drupal\Core\Messenger\MessengerInterface: '@messenger'
  1839. tempstore.private:
  1840. class: Drupal\Core\TempStore\PrivateTempStoreFactory
  1841. arguments: ['@keyvalue.expirable', '@lock', '@current_user', '@request_stack', '%tempstore.expire%']
  1842. tags:
  1843. - { name: backend_overridable }
  1844. Drupal\Core\TempStore\PrivateTempStoreFactory: '@tempstore.private'
  1845. tempstore.shared:
  1846. class: Drupal\Core\TempStore\SharedTempStoreFactory
  1847. arguments: ['@keyvalue.expirable', '@lock', '@request_stack', '@current_user', '%tempstore.expire%']
  1848. tags:
  1849. - { name: backend_overridable }
  1850. Drupal\Core\TempStore\SharedTempStoreFactory: '@tempstore.shared'
  1851. pager.manager:
  1852. class: Drupal\Core\Pager\PagerManager
  1853. arguments: ['@pager.parameters']
  1854. Drupal\Core\Pager\PagerManagerInterface: '@pager.manager'
  1855. pager.parameters:
  1856. class: Drupal\Core\Pager\PagerParameters
  1857. arguments: ['@request_stack']
  1858. Drupal\Core\Pager\PagerParametersInterface: '@pager.parameters'
  1859. Drupal\Core\Theme\Component\SchemaCompatibilityChecker: {}
  1860. Drupal\Core\Theme\Component\ComponentValidator:
  1861. calls:
  1862. - [setValidator, []]
  1863. Drupal\Core\Theme\ComponentNegotiator:
  1864. arguments:
  1865. - '@theme.manager'
  1866. - '@extension.list.module'
  1867. plugin.manager.sdc:
  1868. public: true
  1869. class: Drupal\Core\Theme\ComponentPluginManager
  1870. arguments:
  1871. - '@module_handler'
  1872. - '@theme_handler'
  1873. - '@cache.discovery'
  1874. - '@config.factory'
  1875. - '@theme.manager'
  1876. - '@Drupal\Core\Theme\ComponentNegotiator'
  1877. - '@file_system'
  1878. - '@Drupal\Core\Theme\Component\SchemaCompatibilityChecker'
  1879. - '@Drupal\Core\Theme\Component\ComponentValidator'
  1880. - '%app.root%'
  1881. Drupal\Core\Theme\ComponentPluginManager: '@plugin.manager.sdc'
  1882. Drupal\Core\Template\Loader\ComponentLoader:
  1883. arguments:
  1884. - '@plugin.manager.sdc'
  1885. - '@logger.channel.default'
  1886. tags:
  1887. - { name: twig.loader, priority: 5 }

Services

Namesort descending Description
access_arguments_resolver_factory Drupal\Core\Access\AccessArgumentsResolverFactory
access_check.csrf Drupal\Core\Access\CsrfAccessCheck
access_check.custom Drupal\Core\Access\CustomAccessCheck
access_check.default Drupal\Core\Access\DefaultAccessCheck
access_check.entity Drupal\Core\Entity\EntityAccessCheck
access_check.entity_create Drupal\Core\Entity\EntityCreateAccessCheck
access_check.entity_create_any Drupal\Core\Entity\EntityCreateAnyAccessCheck
access_check.entity_delete_multiple Drupal\Core\Entity\EntityDeleteMultipleAccessCheck
access_check.header.csrf Drupal\Core\Access\CsrfRequestHeaderAccessCheck
access_check.theme Drupal\Core\Theme\ThemeAccessCheck
access_manager Drupal\Core\Access\AccessManager
access_manager.check_provider Drupal\Core\Access\CheckProvider
access_policy.super_user Drupal\Core\Session\SuperUserAccessPolicy
access_policy.user_roles Drupal\Core\Session\UserRolesAccessPolicy
access_policy_processor Drupal\Core\Session\AccessPolicyProcessor
account_switcher Drupal\Core\Session\AccountSwitcher
ajax_response.attachments_processor Drupal\Core\Ajax\AjaxResponseAttachmentsProcessor
ajax_response.subscriber Drupal\Core\EventSubscriber\AjaxResponseSubscriber
anonymous_user_response_subscriber Drupal\Core\EventSubscriber\AnonymousUserResponseSubscriber
argument_resolver.default Symfony\Component\HttpKernel\Controller\ArgumentResolver\DefaultValueResolver
argument_resolver.psr7_request Drupal\Core\Controller\ArgumentResolver\Psr7RequestValueResolver
argument_resolver.request Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestValueResolver
argument_resolver.request_attribute Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestAttributeValueResolver
argument_resolver.route_match Drupal\Core\Controller\ArgumentResolver\RouteMatchValueResolver
asset.css.collection_grouper Drupal\Core\Asset\CssCollectionGrouper
asset.css.collection_optimizer Drupal\Core\Asset\CssCollectionOptimizerLazy
asset.css.collection_renderer Drupal\Core\Asset\CssCollectionRenderer
asset.css.dumper Drupal\Core\Asset\AssetDumper
asset.css.optimizer Drupal\Core\Asset\CssOptimizer
asset.js.collection_grouper Drupal\Core\Asset\JsCollectionGrouper
asset.js.collection_optimizer Drupal\Core\Asset\JsCollectionOptimizerLazy
asset.js.collection_renderer Drupal\Core\Asset\JsCollectionRenderer
asset.js.dumper Drupal\Core\Asset\AssetDumper
asset.js.optimizer Drupal\Core\Asset\JsOptimizer
asset.query_string Drupal\Core\Asset\AssetQueryString
asset.resolver Drupal\Core\Asset\AssetResolver
authentication Drupal\Core\Authentication\AuthenticationManager
authentication_collector Drupal\Core\Authentication\AuthenticationCollector
authentication_subscriber Drupal\Core\EventSubscriber\AuthenticationSubscriber
bare_html_page_renderer Drupal\Core\Render\BareHtmlPageRenderer
batch.storage Drupal\Core\Batch\BatchStorage
breadcrumb Drupal\Core\Breadcrumb\BreadcrumbManager
cache.access_policy Drupal\Core\Cache\CacheBackendInterface
cache.access_policy_memory Drupal\Core\Cache\CacheBackendInterface
cache.backend.apcu Drupal\Core\Cache\ApcuBackendFactory
cache.backend.chainedfast Drupal\Core\Cache\ChainedFastBackendFactory
cache.backend.database Drupal\Core\Cache\DatabaseBackendFactory
cache.backend.memory Drupal\Core\Cache\MemoryBackendFactory
cache.backend.memory.memory Drupal\Core\Cache\MemoryCache\MemoryCacheFactory
cache.backend.php Drupal\Core\Cache\PhpBackendFactory
cache.bootstrap Drupal\Core\Cache\CacheBackendInterface
cache.config Drupal\Core\Cache\CacheBackendInterface
cache.data Drupal\Core\Cache\CacheBackendInterface
cache.default Drupal\Core\Cache\CacheBackendInterface
cache.discovery Drupal\Core\Cache\CacheBackendInterface
cache.entity Drupal\Core\Cache\CacheBackendInterface
cache.menu Drupal\Core\Cache\CacheBackendInterface
cache.render Drupal\Core\Cache\CacheBackendInterface
cache.static Drupal\Core\Cache\CacheBackendInterface
cache_context.cookies Drupal\Core\Cache\Context\CookiesCacheContext
cache_context.headers Drupal\Core\Cache\Context\HeadersCacheContext
cache_context.ip Drupal\Core\Cache\Context\IpCacheContext
cache_context.languages Drupal\Core\Cache\Context\LanguagesCacheContext
cache_context.protocol_version Drupal\Core\Cache\Context\ProtocolVersionCacheContext
cache_context.request_format Drupal\Core\Cache\Context\RequestFormatCacheContext
cache_context.route Drupal\Core\Cache\Context\RouteCacheContext
cache_context.route.menu_active_trails Drupal\Core\Cache\Context\MenuActiveTrailsCacheContext
cache_context.route.name Drupal\Core\Cache\Context\RouteNameCacheContext
cache_context.session Drupal\Core\Cache\Context\SessionCacheContext
cache_context.session.exists Drupal\Core\Cache\Context\SessionExistsCacheContext
cache_context.theme Drupal\Core\Cache\Context\ThemeCacheContext
cache_context.timezone Drupal\Core\Cache\Context\TimeZoneCacheContext
cache_context.url Drupal\Core\Cache\Context\UrlCacheContext
cache_context.url.path Drupal\Core\Cache\Context\PathCacheContext
cache_context.url.path.is_front Drupal\Core\Cache\Context\IsFrontPathCacheContext
cache_context.url.path.parent Drupal\Core\Cache\Context\PathParentCacheContext
cache_context.url.query_args Drupal\Core\Cache\Context\QueryArgsCacheContext
cache_context.url.query_args.pagers Drupal\Core\Cache\Context\PagersCacheContext
cache_context.url.site Drupal\Core\Cache\Context\SiteCacheContext
cache_context.user Drupal\Core\Cache\Context\UserCacheContext
cache_context.user.is_super_user Drupal\Core\Cache\Context\IsSuperUserCacheContext
cache_context.user.permissions Drupal\Core\Cache\Context\AccountPermissionsCacheContext
cache_context.user.roles Drupal\Core\Cache\Context\UserRolesCacheContext
cache_contexts_manager Drupal\Core\Cache\Context\CacheContextsManager
cache_factory Drupal\Core\Cache\CacheFactory
cache_router_rebuild_subscriber Drupal\Core\EventSubscriber\CacheRouterRebuildSubscriber
cache_tags.invalidator Drupal\Core\Cache\CacheTagsInvalidator
cache_tags.invalidator.checksum Drupal\Core\Cache\DatabaseCacheTagsChecksum
callable_resolver Drupal\Core\Utility\CallableResolver
class_resolver Drupal\Core\DependencyInjection\ClassResolver
client_error_response_subscriber Drupal\Core\EventSubscriber\ClientErrorResponseSubscriber
config.factory Drupal\Core\Config\ConfigFactory
config.importer_subscriber Drupal\Core\Config\Importer\FinalMissingContentSubscriber
config.import_transformer Drupal\Core\Config\ImportStorageTransformer
config.installer Drupal\Core\Config\ConfigInstaller
config.manager Drupal\Core\Config\ConfigManager
config.storage Drupal\Core\Config\CachedStorage
config.storage.active Drupal\Core\Config\DatabaseStorage
config.storage.export Drupal\Core\Config\ManagedStorage
config.storage.export.manager Drupal\Core\Config\ExportStorageManager
config.storage.schema Drupal\Core\Config\ExtensionInstallStorage
config.storage.snapshot Drupal\Core\Config\DatabaseStorage
config.storage.sync Drupal\Core\Config\FileStorage
config.typed Drupal\Core\Config\TypedConfigManager
config_exclude_modules_subscriber Drupal\Core\EventSubscriber\ExcludedModulesEventSubscriber
config_import_subscriber Drupal\Core\EventSubscriber\ConfigImportSubscriber
config_snapshot_subscriber Drupal\Core\EventSubscriber\ConfigSnapshotSubscriber
container.namespaces ArrayObject
container.trait Abstract
content_type_header_matcher Drupal\Core\Routing\ContentTypeHeaderMatcher
content_uninstall_validator Drupal\Core\Entity\ContentUninstallValidator
context.handler Drupal\Core\Plugin\Context\ContextHandler
context.repository Drupal\Core\Plugin\Context\LazyContextRepository
controller.entity_form Drupal\Core\Entity\HtmlEntityFormController
controller.form Drupal\Core\Controller\HtmlFormController
controller_resolver Drupal\Core\Controller\ControllerResolver
country_manager Drupal\Core\Locale\CountryManager
cron Drupal\Core\Cron
csrf_token Drupal\Core\Access\CsrfTokenGenerator
current_route_match Drupal\Core\Routing\CurrentRouteMatch
current_user Drupal\Core\Session\AccountProxy
database Drupal\Core\Database\Connection
database.replica Drupal\Core\Database\Connection
database.replica_kill_switch Drupal\Core\Database\ReplicaKillSwitch
database_driver_uninstall_validator Drupal\Core\Extension\DatabaseDriverUninstallValidator
date.formatter Drupal\Core\Datetime\DateFormatter
datetime.time Drupal\Component\Datetime\Time
default_plugin_manager Abstract
diff.formatter Drupal\Core\Diff\DiffFormatter
Drupal\Component\Datetime\TimeInterface
Drupal\Component\DependencyInjection\ReverseContainer
Drupal\Component\Serialization\ObjectAwareSerializationInterface
Drupal\Component\Utility\EmailValidatorInterface
Drupal\Component\Uuid\UuidInterface
Drupal\Core\Access\AccessArgumentsResolverFactoryInterface
Drupal\Core\Access\AccessManagerInterface
Drupal\Core\Access\CheckProviderInterface
Drupal\Core\Access\CsrfTokenGenerator
Drupal\Core\Asset\AssetQueryStringInterface
Drupal\Core\Asset\AssetResolverInterface
Drupal\Core\Asset\LibrariesDirectoryFileFinder
Drupal\Core\Asset\LibraryDependencyResolverInterface
Drupal\Core\Asset\LibraryDiscoveryInterface
Drupal\Core\Asset\LibraryDiscoveryParser
Drupal\Core\Authentication\AuthenticationCollectorInterface
Drupal\Core\Authentication\AuthenticationProviderInterface
Drupal\Core\Batch\BatchStorageInterface
Drupal\Core\Block\BlockManagerInterface
Drupal\Core\Breadcrumb\ChainBreadcrumbBuilderInterface
Drupal\Core\Cache\CacheFactoryInterface
Drupal\Core\Cache\CacheTagsChecksumInterface
Drupal\Core\Cache\CacheTagsInvalidatorInterface
Drupal\Core\Cache\Context\CacheContextsManager
Drupal\Core\Cache\MemoryCache\MemoryCacheInterface
Drupal\Core\Cache\VariationCacheFactory
Drupal\Core\Config\ConfigFactoryInterface
Drupal\Core\Config\ConfigInstallerInterface
Drupal\Core\Config\ConfigManagerInterface
Drupal\Core\Config\ImportStorageTransformer
Drupal\Core\Config\StorageCacheInterface
Drupal\Core\Config\StorageManagerInterface
Drupal\Core\Config\TypedConfigManagerInterface
Drupal\Core\Controller\ControllerResolverInterface
Drupal\Core\Controller\HtmlFormController
Drupal\Core\Controller\TitleResolverInterface
Drupal\Core\CronInterface
Drupal\Core\Database\Connection
Drupal\Core\Database\EventSubscriber\StatementExecutionSubscriber
Drupal\Core\Database\ReplicaKillSwitch
Drupal\Core\Datetime\DateFormatterInterface
Drupal\Core\DependencyInjection\ClassResolverInterface
Drupal\Core\Diff\DiffFormatter
Drupal\Core\Entity\EntityAutocompleteMatcherInterface
Drupal\Core\Entity\EntityBundleListenerInterface
Drupal\Core\Entity\EntityDefinitionUpdateManagerInterface
Drupal\Core\Entity\EntityDisplayRepositoryInterface
Drupal\Core\Entity\EntityFieldManagerInterface
Drupal\Core\Entity\EntityFormBuilderInterface
Drupal\Core\Entity\EntityLastInstalledSchemaRepositoryInterface
Drupal\Core\Entity\EntityReferenceSelection\SelectionPluginManagerInterface
Drupal\Core\Entity\EntityRepositoryInterface
Drupal\Core\Entity\EntityResolverManager
Drupal\Core\Entity\EntityTypeBundleInfoInterface
Drupal\Core\Entity\EntityTypeListenerInterface
Drupal\Core\Entity\EntityTypeManagerInterface
Drupal\Core\Entity\EntityTypeRepositoryInterface
Drupal\Core\Entity\HtmlEntityFormController
Drupal\Core\Executable\ExecutableManagerInterface
Drupal\Core\Extension\DatabaseDriverList
Drupal\Core\Extension\ExtensionPathResolver
Drupal\Core\Extension\InfoParserInterface
Drupal\Core\Extension\ModuleExtensionList
Drupal\Core\Extension\ModuleHandlerInterface
Drupal\Core\Extension\ModuleInstallerInterface
Drupal\Core\Extension\ProfileExtensionList
Drupal\Core\Extension\ThemeEngineExtensionList
Drupal\Core\Extension\ThemeExtensionList
Drupal\Core\Extension\ThemeHandlerInterface
Drupal\Core\Extension\ThemeInstallerInterface
Drupal\Core\Field\DeletedFieldsRepositoryInterface
Drupal\Core\Field\FieldDefinitionListenerInterface
Drupal\Core\Field\FieldStorageDefinitionListenerInterface
Drupal\Core\Field\FieldTypeCategoryManagerInterface
Drupal\Core\Field\FieldTypePluginManagerInterface
Drupal\Core\File\FileSystemInterface
Drupal\Core\File\FileUrlGeneratorInterface
Drupal\Core\File\HtaccessWriterInterface
Drupal\Core\Flood\FloodInterface
Drupal\Core\Form\FormAjaxResponseBuilderInterface
Drupal\Core\Form\FormBuilderInterface
Drupal\Core\Form\FormCacheInterface
Drupal\Core\Form\FormErrorHandlerInterface
Drupal\Core\Form\FormSubmitterInterface
Drupal\Core\Form\FormValidatorInterface
Drupal\Core\Http\ClientFactory
Drupal\Core\Http\HandlerStackConfigurator
Drupal\Core\ImageToolkit\ImageToolkitManager
Drupal\Core\ImageToolkit\ImageToolkitOperationManagerInterface
Drupal\Core\Image\ImageFactory
Drupal\Core\Language\LanguageDefault
Drupal\Core\Language\LanguageManagerInterface
Drupal\Core\Locale\CountryManagerInterface
Drupal\Core\Logger\LoggerChannelFactoryInterface
Drupal\Core\Logger\LogMessageParserInterface
Drupal\Core\Mail\MailManagerInterface
Drupal\Core\Menu\ContextualLinkManagerInterface
Drupal\Core\Menu\DefaultMenuLinkTreeManipulators
Drupal\Core\Menu\LocalActionManagerInterface
Drupal\Core\Menu\LocalTaskManagerInterface
Drupal\Core\Menu\MenuActiveTrailInterface
Drupal\Core\Menu\MenuLinkManagerInterface
Drupal\Core\Menu\MenuLinkTreeInterface
Drupal\Core\Menu\MenuParentFormSelectorInterface
Drupal\Core\Menu\MenuTreeStorageInterface
Drupal\Core\Menu\StaticMenuLinkOverridesInterface
Drupal\Core\Messenger\MessengerInterface
Drupal\Core\PageCache\RequestPolicyInterface
Drupal\Core\PageCache\ResponsePolicyInterface
Drupal\Core\PageCache\ResponsePolicy\KillSwitch
Drupal\Core\Pager\PagerManagerInterface
Drupal\Core\Pager\PagerParametersInterface
Drupal\Core\ParamConverter\ParamConverterManagerInterface
Drupal\Core\Password\PasswordGeneratorInterface
Drupal\Core\Password\PasswordInterface
Drupal\Core\PathProcessor\InboundPathProcessorInterface
Drupal\Core\PathProcessor\OutboundPathProcessorInterface
Drupal\Core\Path\CurrentPathStack
Drupal\Core\Path\PathMatcherInterface
Drupal\Core\Path\PathValidatorInterface
Drupal\Core\Plugin\CachedDiscoveryClearerInterface
Drupal\Core\Plugin\Context\ContextHandlerInterface
Drupal\Core\Plugin\Context\ContextRepositoryInterface
Drupal\Core\Plugin\PluginFormFactoryInterface
Drupal\Core\PrivateKey
Drupal\Core\Queue\QueueDatabaseFactory
Drupal\Core\Queue\QueueFactory
Drupal\Core\Queue\QueueWorkerManagerInterface
Drupal\Core\Render\BareHtmlPageRendererInterface
Drupal\Core\Render\ElementInfoManagerInterface
Drupal\Core\Render\PlaceholderGeneratorInterface
Drupal\Core\Render\Placeholder\PlaceholderStrategyInterface
Drupal\Core\Render\RenderCacheInterface
Drupal\Core\Render\RendererInterface
Drupal\Core\RouteProcessor\OutboundRouteProcessorInterface
Drupal\Core\Routing\AccessAwareRouterInterface
Drupal\Core\Routing\AdminContext
Drupal\Core\Routing\MatcherDumperInterface
Drupal\Core\Routing\RedirectDestinationInterface
Drupal\Core\Routing\RequestContext
Drupal\Core\Routing\RouteBuilderInterface
Drupal\Core\Routing\RouteMatchInterface
Drupal\Core\Routing\RouteProviderInterface
Drupal\Core\Routing\UrlGeneratorInterface
Drupal\Core\Session\AccessPolicyChainInterface
Drupal\Core\Session\AccountInterface
Drupal\Core\Session\AccountProxyInterface
Drupal\Core\Session\AccountSwitcherInterface
Drupal\Core\Session\MetadataBag
Drupal\Core\Session\PermissionCheckerInterface
Drupal\Core\Session\PermissionsHashGeneratorInterface
Drupal\Core\Session\SessionConfigurationInterface
Drupal\Core\Session\SessionManagerInterface
Drupal\Core\Session\SuperUserAccessPolicy
Drupal\Core\Session\UserRolesAccessPolicy
Drupal\Core\Session\WriteSafeSessionHandlerInterface
Drupal\Core\Site\MaintenanceModeInterface
Drupal\Core\Site\Settings
Drupal\Core\State\StateInterface
Drupal\Core\StreamWrapper\AssetsStream
Drupal\Core\StreamWrapper\StreamWrapperManagerInterface
Drupal\Core\StringTranslation\TranslationInterface
Drupal\Core\Template\ComponentsTwigExtension
Drupal\Core\Template\Loader\ComponentLoader
Drupal\Core\Template\TwigEnvironment
Drupal\Core\TempStore\PrivateTempStoreFactory
Drupal\Core\TempStore\SharedTempStoreFactory
Drupal\Core\Theme\ComponentNegotiator
Drupal\Core\Theme\ComponentPluginManager
Drupal\Core\Theme\Component\ComponentValidator
Drupal\Core\Theme\Component\SchemaCompatibilityChecker
Drupal\Core\Theme\Registry
Drupal\Core\Theme\ThemeInitializationInterface
Drupal\Core\Theme\ThemeManagerInterface
Drupal\Core\Theme\ThemeNegotiatorInterface
Drupal\Core\TypedData\TypedDataManagerInterface
Drupal\Core\Update\UpdateHookRegistry
Drupal\Core\Utility\CallableResolver
Drupal\Core\Utility\LinkGeneratorInterface
Drupal\Core\Utility\Token
Drupal\Core\Utility\UnroutedUrlAssemblerInterface
Drupal\Core\Validation\BasicRecursiveValidatorFactory
early_rendering_controller_wrapper_subscriber Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber
element_info Alias of plugin.manager.element_info
email.validator Drupal\Component\Utility\EmailValidator
entity.autocomplete_matcher Drupal\Core\Entity\EntityAutocompleteMatcher
entity.bundle_config_import_validator Drupal\Core\Entity\Event\BundleConfigImportValidate
entity.definition_update_manager Drupal\Core\Entity\EntityDefinitionUpdateManager
entity.form_builder Drupal\Core\Entity\EntityFormBuilder
entity.last_installed_schema.repository Drupal\Core\Entity\EntityLastInstalledSchemaRepository
entity.memory_cache Drupal\Core\Cache\MemoryCache\MemoryCache
entity.query.config Drupal\Core\Config\Entity\Query\QueryFactory
entity.query.keyvalue Drupal\Core\Entity\KeyValueStore\Query\QueryFactory
entity.query.null Drupal\Core\Entity\Query\Null\QueryFactory
entity.query.sql Drupal\Core\Entity\Query\Sql\QueryFactory
entity.repository Drupal\Core\Entity\EntityRepository
entity_bundle.listener Drupal\Core\Entity\EntityBundleListener
entity_display.repository Drupal\Core\Entity\EntityDisplayRepository
entity_field.deleted_fields_repository Drupal\Core\Field\DeletedFieldsRepository
entity_field.manager Drupal\Core\Entity\EntityFieldManager
entity_route_subscriber Drupal\Core\EventSubscriber\EntityRouteProviderSubscriber
entity_type.bundle.info Drupal\Core\Entity\EntityTypeBundleInfo
entity_type.listener Drupal\Core\Entity\EntityTypeListener
entity_type.manager Drupal\Core\Entity\EntityTypeManager
entity_type.repository Drupal\Core\Entity\EntityTypeRepository
event_dispatcher Symfony\Component\EventDispatcher\EventDispatcher
exception.custom_page_html Drupal\Core\EventSubscriber\CustomPageExceptionHtmlSubscriber
exception.default_html Drupal\Core\EventSubscriber\DefaultExceptionHtmlSubscriber
exception.default_json Drupal\Core\EventSubscriber\ExceptionJsonSubscriber
exception.enforced_form_response Drupal\Core\EventSubscriber\EnforcedFormResponseSubscriber
exception.fast_404_html Drupal\Core\EventSubscriber\Fast404ExceptionHtmlSubscriber
exception.final Drupal\Core\EventSubscriber\FinalExceptionSubscriber
exception.logger Drupal\Core\EventSubscriber\ExceptionLoggingSubscriber
exception.needs_installer Drupal\Core\EventSubscriber\ExceptionDetectNeedsInstallSubscriber
extension.list.database_driver Drupal\Core\Extension\DatabaseDriverList
extension.list.module Drupal\Core\Extension\ModuleExtensionList
extension.list.profile Drupal\Core\Extension\ProfileExtensionList
extension.list.theme Drupal\Core\Extension\ThemeExtensionList
extension.list.theme_engine Drupal\Core\Extension\ThemeEngineExtensionList
extension.path.resolver Drupal\Core\Extension\ExtensionPathResolver
field_definition.listener Drupal\Core\Field\FieldDefinitionListener
field_storage_definition.listener Drupal\Core\Field\FieldStorageDefinitionListener
file.htaccess_writer Drupal\Core\File\HtaccessWriter
file.mime_type.guesser Drupal\Core\File\MimeType\MimeTypeGuesser
file.mime_type.guesser.extension Drupal\Core\File\MimeType\ExtensionMimeTypeGuesser
file_system Drupal\Core\File\FileSystem
file_url_generator Drupal\Core\File\FileUrlGenerator
finish_response_subscriber Drupal\Core\EventSubscriber\FinishResponseSubscriber
flood Drupal\Core\Flood\DatabaseBackend
form_ajax_response_builder Drupal\Core\Form\FormAjaxResponseBuilder
form_ajax_subscriber Drupal\Core\Form\EventSubscriber\FormAjaxSubscriber
form_builder Drupal\Core\Form\FormBuilder
form_cache Drupal\Core\Form\FormCache
form_error_handler Drupal\Core\Form\FormErrorHandler
form_submitter Drupal\Core\Form\FormSubmitter
form_validator Drupal\Core\Form\FormValidator
GuzzleHttp\ClientInterface
GuzzleHttp\HandlerStack
html_response.attachments_processor Drupal\Core\Render\HtmlResponseAttachmentsProcessor
html_response.placeholder_strategy_subscriber Drupal\Core\EventSubscriber\HtmlResponsePlaceholderStrategySubscriber
html_response.subscriber Drupal\Core\EventSubscriber\HtmlResponseSubscriber
http_client GuzzleHttp\Client
http_client_factory Drupal\Core\Http\ClientFactory
http_handler_stack GuzzleHttp\HandlerStack
http_handler_stack_configurator Drupal\Core\Http\HandlerStackConfigurator
http_kernel Drupal\Core\StackMiddleware\StackedHttpKernel
http_kernel.basic Symfony\Component\HttpKernel\HttpKernel
http_kernel.controller.argument_metadata_factory Symfony\Component\HttpKernel\ControllerMetadata\ArgumentMetadataFactory
http_kernel.controller.argument_resolver Symfony\Component\HttpKernel\Controller\ArgumentResolver
http_middleware.ajax_page_state Drupal\Core\StackMiddleware\AjaxPageState
http_middleware.content_length Drupal\Core\StackMiddleware\ContentLength
http_middleware.cors Asm89\Stack\Cors
http_middleware.kernel_pre_handle Drupal\Core\StackMiddleware\KernelPreHandle
http_middleware.negotiation Drupal\Core\StackMiddleware\NegotiationMiddleware
http_middleware.reverse_proxy Drupal\Core\StackMiddleware\ReverseProxyMiddleware
http_middleware.session Drupal\Core\StackMiddleware\Session
image.factory Drupal\Core\Image\ImageFactory
image.toolkit.manager Drupal\Core\ImageToolkit\ImageToolkitManager
image.toolkit.operation.manager Drupal\Core\ImageToolkit\ImageToolkitOperationManager
info_parser Drupal\Core\Extension\InfoParser
install_profile_uninstall_validator Drupal\Core\Extension\InstallProfileUninstallValidator
keyvalue Drupal\Core\KeyValueStore\KeyValueFactory
keyvalue.database Drupal\Core\KeyValueStore\KeyValueDatabaseFactory
keyvalue.expirable Drupal\Core\KeyValueStore\KeyValueExpirableFactory
keyvalue.expirable.database Drupal\Core\KeyValueStore\KeyValueDatabaseExpirableFactory
language.current_language_context Drupal\Core\Language\ContextProvider\CurrentLanguageContext
language.default Drupal\Core\Language\LanguageDefault
language_manager Drupal\Core\Language\LanguageManager
library.dependency_resolver Drupal\Core\Asset\LibraryDependencyResolver
library.discovery Drupal\Core\Asset\LibraryDiscovery
library.discovery.collector Drupal\Core\Asset\LibraryDiscoveryCollector
library.discovery.parser Drupal\Core\Asset\LibraryDiscoveryParser
library.libraries_directory_file_finder Drupal\Core\Asset\LibrariesDirectoryFileFinder
link_generator Drupal\Core\Utility\LinkGenerator
lock Drupal\Core\Lock\DatabaseLockBackend
lock.persistent Drupal\Core\Lock\PersistentDatabaseLockBackend
logger.channel.cron
logger.channel.default
logger.channel.file Drupal\Core\Logger\LoggerChannel
logger.channel.form
logger.channel.image
logger.channel.mail
logger.channel.menu
logger.channel.php
logger.channel.router
logger.channel.security
logger.channel_base Drupal\Core\Logger\LoggerChannel
logger.factory Drupal\Core\Logger\LoggerChannelFactory
logger.log_message_parser Drupal\Core\Logger\LogMessageParser
maintenance_mode Drupal\Core\Site\MaintenanceMode
maintenance_mode_subscriber Drupal\Core\EventSubscriber\MaintenanceModeSubscriber
main_content_renderer.ajax Drupal\Core\Render\MainContent\AjaxRenderer
main_content_renderer.dialog Drupal\Core\Render\MainContent\DialogRenderer
main_content_renderer.html Drupal\Core\Render\MainContent\HtmlRenderer
main_content_renderer.modal Drupal\Core\Render\MainContent\ModalRenderer
main_content_renderer.off_canvas Drupal\Core\Render\MainContent\OffCanvasRenderer
main_content_renderer.off_canvas_top Drupal\Core\Render\MainContent\OffCanvasRenderer
main_content_view_subscriber Drupal\Core\EventSubscriber\MainContentViewSubscriber
menu.active_trail Drupal\Core\Menu\MenuActiveTrail
menu.default_tree_manipulators Drupal\Core\Menu\DefaultMenuLinkTreeManipulators
menu.link_tree Drupal\Core\Menu\MenuLinkTree
menu.parent_form_selector Drupal\Core\Menu\MenuParentFormSelector
menu.rebuild_subscriber Drupal\Core\EventSubscriber\MenuRouterRebuildSubscriber
menu.tree_storage Drupal\Core\Menu\MenuTreeStorage
menu_link.static.overrides Drupal\Core\Menu\StaticMenuLinkOverrides
messenger Drupal\Core\Messenger\Messenger
method_filter Drupal\Core\Routing\MethodFilter
module_handler Drupal\Core\Extension\ModuleHandler
module_installer Drupal\Core\Extension\ModuleInstaller
module_required_by_themes_uninstall_validator Drupal\Core\Extension\ModuleRequiredByThemesUninstallValidator
options_request_listener Drupal\Core\EventSubscriber\OptionsRequestSubscriber
pager.manager Drupal\Core\Pager\PagerManager
pager.parameters Drupal\Core\Pager\PagerParameters
page_cache_kill_switch Drupal\Core\PageCache\ResponsePolicy\KillSwitch
page_cache_no_cache_routes Drupal\Core\PageCache\ResponsePolicy\DenyNoCacheRoutes
page_cache_no_server_error Drupal\Core\PageCache\ResponsePolicy\NoServerError
page_cache_request_policy Drupal\Core\PageCache\DefaultRequestPolicy
page_cache_response_policy Drupal\Core\PageCache\ChainResponsePolicy
paramconverter.configentity_admin Drupal\Core\ParamConverter\AdminPathConfigEntityConverter
paramconverter.entity Drupal\Core\ParamConverter\EntityConverter
paramconverter.entity_revision Drupal\Core\ParamConverter\EntityRevisionParamConverter
paramconverter.menu_link Drupal\Core\ParamConverter\MenuLinkPluginConverter
paramconverter_manager Drupal\Core\ParamConverter\ParamConverterManager
paramconverter_subscriber Drupal\Core\EventSubscriber\ParamConverterSubscriber
password Drupal\Core\Password\PhpPassword
password_generator Drupal\Core\Password\DefaultPasswordGenerator
path.current Drupal\Core\Path\CurrentPathStack
path.matcher Drupal\Core\Path\PathMatcher
path.validator Drupal\Core\Path\PathValidator
path_processor_decode Drupal\Core\PathProcessor\PathProcessorDecode
path_processor_front Drupal\Core\PathProcessor\PathProcessorFront
path_processor_manager Drupal\Core\PathProcessor\PathProcessorManager
permission_checker Drupal\Core\Session\PermissionChecker
pgsql.entity.query.sql Drupal\Core\Entity\Query\Sql\pgsql\QueryFactory
placeholder_strategy Drupal\Core\Render\Placeholder\ChainedPlaceholderStrategy
placeholder_strategy.single_flush Drupal\Core\Render\Placeholder\SingleFlushStrategy
plugin.cache_clearer Drupal\Core\Plugin\CachedDiscoveryClearer
plugin.manager.action Drupal\Core\Action\ActionManager
plugin.manager.archiver Drupal\Core\Archiver\ArchiverManager
plugin.manager.block Drupal\Core\Block\BlockManager
plugin.manager.condition Drupal\Core\Condition\ConditionManager
plugin.manager.display_variant Drupal\Core\Display\VariantManager
plugin.manager.element_info Drupal\Core\Render\ElementInfoManager
plugin.manager.entity_reference_selection Drupal\Core\Entity\EntityReferenceSelection\SelectionPluginManager
plugin.manager.field.field_type Drupal\Core\Field\FieldTypePluginManager
plugin.manager.field.field_type_category \Drupal\Core\Field\FieldTypeCategoryManager
plugin.manager.field.formatter Drupal\Core\Field\FormatterPluginManager
plugin.manager.field.widget Drupal\Core\Field\WidgetPluginManager
plugin.manager.link_relation_type \Drupal\Core\Http\LinkRelationTypeManager
plugin.manager.mail Drupal\Core\Mail\MailManager
plugin.manager.menu.contextual_link Drupal\Core\Menu\ContextualLinkManager
plugin.manager.menu.link Drupal\Core\Menu\MenuLinkManager
plugin.manager.menu.local_action Drupal\Core\Menu\LocalActionManager
plugin.manager.menu.local_task Drupal\Core\Menu\LocalTaskManager
plugin.manager.queue_worker Drupal\Core\Queue\QueueWorkerManager
plugin.manager.sdc Drupal\Core\Theme\ComponentPluginManager
plugin_form.factory Drupal\Core\Plugin\PluginFormFactory
private_key Drupal\Core\PrivateKey
psr17.response_factory GuzzleHttp\Psr7\HttpFactory
psr17.server_request_factory GuzzleHttp\Psr7\HttpFactory
psr17.stream_factory GuzzleHttp\Psr7\HttpFactory
psr17.uploaded_file_factory GuzzleHttp\Psr7\HttpFactory
psr7.http_foundation_factory Symfony\Bridge\PsrHttpMessage\Factory\HttpFoundationFactory
psr7.http_message_factory Symfony\Bridge\PsrHttpMessage\Factory\PsrHttpFactory
Psr\EventDispatcher\EventDispatcherInterface
Psr\Http\Client\ClientInterface
Psr\Http\Message\ResponseFactoryInterface
Psr\Http\Message\ServerRequestFactoryInterface
Psr\Http\Message\StreamFactoryInterface
Psr\Http\Message\UploadedFileFactoryInterface
psr_response_view_subscriber Drupal\Core\EventSubscriber\PsrResponseSubscriber
queue Drupal\Core\Queue\QueueFactory
queue.database Drupal\Core\Queue\QueueDatabaseFactory
redirect.destination Drupal\Core\Routing\RedirectDestination
redirect_leading_slashes_subscriber Drupal\Core\EventSubscriber\RedirectLeadingSlashesSubscriber
redirect_response_subscriber Drupal\Core\EventSubscriber\RedirectResponseSubscriber
renderer Drupal\Core\Render\Renderer
renderer_non_html Drupal\Core\EventSubscriber\RenderArrayNonHtmlSubscriber
render_cache Drupal\Core\Render\PlaceholderingRenderCache
render_placeholder_generator Drupal\Core\Render\PlaceholderGenerator
request_format_route_filter Drupal\Core\Routing\RequestFormatRouteFilter
request_stack Symfony\Component\HttpFoundation\RequestStack
required_module_uninstall_validator Drupal\Core\Extension\RequiredModuleUninstallValidator
resolver_manager.entity Drupal\Core\Entity\EntityResolverManager
response_filter.active_link Drupal\Core\EventSubscriber\ActiveLinkResponseFilter
response_filter.rss.relative_url Drupal\Core\EventSubscriber\RssResponseRelativeUrlFilter
response_generator_subscriber Drupal\Core\EventSubscriber\ResponseGeneratorSubscriber
router Drupal\Core\Routing\AccessAwareRouter
router.admin_context Drupal\Core\Routing\AdminContext
router.builder Drupal\Core\Routing\RouteBuilder
router.dumper Drupal\Core\Routing\MatcherDumper
router.no_access_checks \Drupal\Core\Routing\Router
router.path_roots_subscriber Drupal\Core\EventSubscriber\PathRootsSubscriber
router.request_context Drupal\Core\Routing\RequestContext
router.route_preloader Drupal\Core\Routing\RoutePreloader
router.route_provider Drupal\Core\Routing\RouteProvider
router.route_provider.lazy_builder Drupal\Core\Routing\RouteProviderLazyBuilder
router_listener Symfony\Component\HttpKernel\EventListener\RouterListener
route_access_response_subscriber Drupal\Core\EventSubscriber\RouteAccessResponseSubscriber
route_enhancer.entity Drupal\Core\Entity\Enhancer\EntityRouteEnhancer
route_enhancer.entity_bundle Drupal\Core\Entity\Enhancer\EntityBundleRouteEnhancer
route_enhancer.entity_revision Drupal\Core\Routing\Enhancer\EntityRevisionRouteEnhancer
route_enhancer.form Drupal\Core\Routing\Enhancer\FormRouteEnhancer
route_enhancer.param_conversion Drupal\Core\Routing\Enhancer\ParamConversionEnhancer
route_http_method_subscriber Drupal\Core\EventSubscriber\RouteMethodSubscriber
route_processor_csrf Drupal\Core\Access\RouteProcessorCsrf
route_processor_current Drupal\Core\RouteProcessor\RouteProcessorCurrent
route_processor_manager Drupal\Core\RouteProcessor\RouteProcessorManager
route_special_attributes_subscriber Drupal\Core\EventSubscriber\SpecialAttributesRouteSubscriber
route_subscriber.entity Drupal\Core\EventSubscriber\EntityRouteAlterSubscriber
route_subscriber.module Drupal\Core\EventSubscriber\ModuleRouteSubscriber
serialization.json Drupal\Component\Serialization\Json
serialization.phpserialize Drupal\Component\Serialization\PhpSerialize
serialization.yaml Drupal\Component\Serialization\Yaml
session Symfony\Component\HttpFoundation\Session\Session
session.attribute_bag Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag
session.flash_bag Symfony\Component\HttpFoundation\Session\Flash\FlashBag
session_configuration Drupal\Core\Session\SessionConfiguration
session_handler Alias of session_handler.storage
session_handler.storage Drupal\Core\Session\SessionHandler
session_handler.write_safe Drupal\Core\Session\WriteSafeSessionHandler
session_manager Drupal\Core\Session\SessionManager
session_manager.metadata_bag Drupal\Core\Session\MetadataBag
settings Drupal\Core\Site\Settings
state Drupal\Core\State\State
stream_wrapper.assets Drupal\Core\StreamWrapper\AssetsStream
stream_wrapper.public Drupal\Core\StreamWrapper\PublicStream
stream_wrapper.temporary Drupal\Core\StreamWrapper\TemporaryStream
stream_wrapper_manager Drupal\Core\StreamWrapper\StreamWrapperManager
string_translation Drupal\Core\StringTranslation\TranslationManager
string_translator.custom_strings Drupal\Core\StringTranslation\Translator\CustomStrings
Symfony\Bridge\PsrHttpMessage\HttpFoundationFactoryInterface
Symfony\Bridge\PsrHttpMessage\HttpMessageFactoryInterface
Symfony\Component\HttpFoundation\RequestStack
Symfony\Component\HttpFoundation\Session\Attribute\AttributeBagInterface
Symfony\Component\HttpFoundation\Session\Flash\FlashBagInterface
Symfony\Component\HttpFoundation\Session\SessionInterface
Symfony\Component\HttpKernel\ControllerMetadata\ArgumentMetadataFactoryInterface
Symfony\Component\HttpKernel\Controller\ArgumentResolverInterface
Symfony\Component\HttpKernel\Controller\ControllerResolverInterface
Symfony\Component\HttpKernel\HttpKernelInterface
Symfony\Component\Routing\Generator\UrlGeneratorInterface
Symfony\Contracts\EventDispatcher\EventDispatcherInterface
tempstore.private Drupal\Core\TempStore\PrivateTempStoreFactory
tempstore.shared Drupal\Core\TempStore\SharedTempStoreFactory
theme.initialization Drupal\Core\Theme\ThemeInitialization
theme.manager Drupal\Core\Theme\ThemeManager
theme.negotiator Drupal\Core\Theme\ThemeNegotiator
theme.negotiator.ajax_base_page Drupal\Core\Theme\AjaxBasePageNegotiator
theme.negotiator.default Drupal\Core\Theme\DefaultNegotiator
theme.registry Drupal\Core\Theme\Registry
theme_handler Drupal\Core\Extension\ThemeHandler
theme_installer Drupal\Core\Extension\ThemeInstaller
title_resolver Drupal\Core\Controller\TitleResolver
token Drupal\Core\Utility\Token
transliteration Drupal\Core\Transliteration\PhpTransliteration
twig Drupal\Core\Template\TwigEnvironment
twig.extension Drupal\Core\Template\TwigExtension
twig.extension.debug Twig\Extension\DebugExtension
twig.extension.varDumper Drupal\Core\Template\DebugExtension
twig.loader Twig\Loader\ChainLoader
twig.loader.filesystem Drupal\Core\Template\Loader\FilesystemLoader
twig.loader.string Drupal\Core\Template\Loader\StringLoader
twig.loader.theme_registry Drupal\Core\Template\Loader\ThemeRegistryLoader
Twig\Loader\LoaderInterface
typed_data_manager Drupal\Core\TypedData\TypedDataManager
unrouted_url_assembler Drupal\Core\Utility\UnroutedUrlAssembler
update.key_value.post_update Drupal\Core\KeyValueStore\KeyValueStoreInterface
update.post_update_registry Drupal\Core\Update\UpdateRegistry
update.post_update_registry_factory Drupal\Core\Update\UpdateRegistryFactory
update.update_hook_registry Drupal\Core\Update\UpdateHookRegistry
update.update_hook_registry_factory Drupal\Core\Update\UpdateHookRegistryFactory
url_generator Drupal\Core\Render\MetadataBubblingUrlGenerator
url_generator.non_bubbling Drupal\Core\Routing\UrlGenerator
user_permissions_hash_generator Drupal\Core\Session\PermissionsHashGenerator
uuid Drupal\Component\Uuid\Php
validation.basic_recursive_validator_factory Drupal\Core\Validation\BasicRecursiveValidatorFactory
validation.constraint Drupal\Core\Validation\ConstraintManager
variation_cache.access_policy Drupal\Core\Cache\VariationCacheInterface
variation_cache.access_policy_memory Drupal\Core\Cache\VariationCacheInterface
variation_cache_factory Drupal\Core\Cache\VariationCacheFactory
_defaults