workspaces.services.yml

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

File

core/modules/workspaces/workspaces.services.yml

View source
  1. parameters:
  2. workspaces.skip_procedural_hook_scan: true
  3. services:
  4. _defaults:
  5. autoconfigure: true
  6. workspaces.manager:
  7. class: Drupal\workspaces\WorkspaceManager
  8. autowire: true
  9. tags:
  10. - { name: service_collector, call: addNegotiator, tag: workspace_negotiator }
  11. Drupal\workspaces\WorkspaceManagerInterface: '@workspaces.manager'
  12. workspaces.information:
  13. class: Drupal\workspaces\WorkspaceInformation
  14. arguments: [ '@entity_type.manager', '@workspaces.association' ]
  15. Drupal\workspaces\WorkspaceInformationInterface: '@workspaces.information'
  16. workspaces.operation_factory:
  17. class: Drupal\workspaces\WorkspaceOperationFactory
  18. autowire: true
  19. Drupal\workspaces\WorkspaceOperationFactory: '@workspaces.operation_factory'
  20. workspaces.association:
  21. class: Drupal\workspaces\WorkspaceAssociation
  22. arguments: ['@database', '@entity_type.manager', '@workspaces.repository', '@logger.channel.workspaces']
  23. tags:
  24. - { name: backend_overridable }
  25. Drupal\workspaces\WorkspaceAssociationInterface: '@workspaces.association'
  26. workspaces.repository:
  27. class: Drupal\workspaces\WorkspaceRepository
  28. arguments: ['@entity_type.manager', '@cache.default']
  29. Drupal\workspaces\WorkspaceRepositoryInterface: '@workspaces.repository'
  30. workspaces.negotiator.session:
  31. class: Drupal\workspaces\Negotiator\SessionWorkspaceNegotiator
  32. arguments: ['@current_user', '@session', '@entity_type.manager']
  33. tags:
  34. - { name: workspace_negotiator, priority: 50 }
  35. workspaces.negotiator.query_parameter:
  36. class: Drupal\workspaces\Negotiator\QueryParameterWorkspaceNegotiator
  37. parent: workspaces.negotiator.session
  38. tags:
  39. - { name: workspace_negotiator, priority: 100 }
  40. access_check.workspaces.active_workspace:
  41. class: Drupal\workspaces\Access\ActiveWorkspaceCheck
  42. arguments: ['@workspaces.manager']
  43. tags:
  44. - { name: access_check, applies_to: _has_active_workspace }
  45. workspaces.entity_schema_listener:
  46. class: Drupal\workspaces\EventSubscriber\EntitySchemaSubscriber
  47. arguments: ['@entity.definition_update_manager', '@entity.last_installed_schema.repository', '@workspaces.information']
  48. workspaces.workspace_subscriber:
  49. class: Drupal\workspaces\EventSubscriber\WorkspaceRequestSubscriber
  50. arguments: ['@router.route_provider', '@workspaces.manager']
  51. cache_context.workspace:
  52. class: Drupal\workspaces\WorkspaceCacheContext
  53. arguments: ['@workspaces.manager']
  54. tags:
  55. - { name: cache.context }
  56. logger.channel.workspaces:
  57. parent: logger.channel_base
  58. arguments: ['workspaces']
  59. workspaces.lazy_builders:
  60. class: Drupal\workspaces\WorkspacesLazyBuilders
  61. arguments: [ '@workspaces.manager', '@plugin.manager.element_info' ]
  62. Drupal\workspaces\WorkspacesLazyBuilders: '@workspaces.lazy_builders'
  63. workspaces.entity.repository:
  64. decorates: entity.repository
  65. class: Drupal\workspaces\WorkspacesEntityRepository
  66. arguments: ['@.inner', '@workspaces.manager']
  67. public: false
  68. workspaces.entity.query.sql:
  69. decorates: entity.query.sql
  70. class: Drupal\workspaces\EntityQuery\QueryFactory
  71. arguments: ['@database', '@workspaces.manager', '@workspaces.information']
  72. public: false
  73. decoration_priority: 50
  74. tags:
  75. - { name: backend_overridable }
  76. workspaces.menu.tree_storage:
  77. decorates: menu.tree_storage
  78. class: Drupal\workspaces\WorkspacesMenuTreeStorage
  79. arguments: ['@workspaces.manager', '@workspaces.association', '@entity_type.manager', '@database', '@cache.menu', '@cache_tags.invalidator', 'menu_tree']
  80. public: false
  81. decoration_priority: 50
  82. tags:
  83. - { name: backend_overridable }
  84. workspaces.controller.entity_form:
  85. # Decorate the entity form controller to handle entity operations inside a
  86. # workspace.
  87. decorates: controller.entity_form
  88. class: Drupal\workspaces\Controller\WorkspacesHtmlEntityFormController
  89. public: false
  90. arguments: ['@.inner', '@workspaces.manager', '@workspaces.information', '@typed_data_manager']
  91. Drupal\workspaces\Controller\WorkspacesHtmlEntityFormController: '@workspaces.controller.entity_form'

Services

Title Deprecated Summary
access_check.workspaces.active_workspace Drupal\workspaces\Access\ActiveWorkspaceCheck
cache_context.workspace Drupal\workspaces\WorkspaceCacheContext
logger.channel.workspaces
workspaces.association Drupal\workspaces\WorkspaceAssociation
workspaces.controller.entity_form Drupal\workspaces\Controller\WorkspacesHtmlEntityFormController
workspaces.entity.query.sql Drupal\workspaces\EntityQuery\QueryFactory
workspaces.entity.repository Drupal\workspaces\WorkspacesEntityRepository
workspaces.entity_schema_listener Drupal\workspaces\EventSubscriber\EntitySchemaSubscriber
workspaces.information Drupal\workspaces\WorkspaceInformation
workspaces.lazy_builders Drupal\workspaces\WorkspacesLazyBuilders
workspaces.manager Drupal\workspaces\WorkspaceManager
workspaces.menu.tree_storage Drupal\workspaces\WorkspacesMenuTreeStorage
workspaces.negotiator.query_parameter Drupal\workspaces\Negotiator\QueryParameterWorkspaceNegotiator
workspaces.negotiator.session Drupal\workspaces\Negotiator\SessionWorkspaceNegotiator
workspaces.operation_factory Drupal\workspaces\WorkspaceOperationFactory
workspaces.repository Drupal\workspaces\WorkspaceRepository
workspaces.workspace_subscriber Drupal\workspaces\EventSubscriber\WorkspaceRequestSubscriber
_defaults

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.