You are here

core.services.yml in Drupal 10

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

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
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\CssCollectionOptimizer
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\JsCollectionOptimizer
asset.js.collection_renderer Drupal\Core\Asset\JsCollectionRenderer
asset.js.dumper Drupal\Core\Asset\AssetDumper
asset.js.optimizer Drupal\Core\Asset\JsOptimizer
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.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.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
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
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 Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher
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.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
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.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
kernel_destruct_subscriber Drupal\Core\EventSubscriber\KernelDestructionSubscriber
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.php
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\PhpassHashedPassword
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
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.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_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_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_close_subscriber Drupal\Core\EventSubscriber\RequestCloseSubscriber
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.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
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.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
typed_data_manager Drupal\Core\TypedData\TypedDataManager
unrouted_url_assembler Drupal\Core\Utility\UnroutedUrlAssembler
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.constraint Drupal\Core\Validation\ConstraintManager