You are here

workspaces.services.yml in Drupal 9

core/modules/workspaces/workspaces.services.yml

File

core/modules/workspaces/workspaces.services.yml
View source
  1. services:
  2. workspaces.manager:
  3. class: Drupal\workspaces\WorkspaceManager
  4. arguments: ['@request_stack', '@entity_type.manager', '@entity.memory_cache', '@current_user', '@state', '@logger.channel.workspaces', '@class_resolver', '@workspaces.association']
  5. tags:
  6. - { name: service_id_collector, tag: workspace_negotiator }
  7. workspaces.operation_factory:
  8. class: Drupal\workspaces\WorkspaceOperationFactory
  9. arguments: ['@entity_type.manager', '@database', '@workspaces.manager', '@workspaces.association', '@cache_tags.invalidator']
  10. workspaces.association:
  11. class: Drupal\workspaces\WorkspaceAssociation
  12. arguments: ['@database', '@entity_type.manager', '@workspaces.repository']
  13. tags:
  14. - { name: backend_overridable }
  15. workspaces.repository:
  16. class: Drupal\workspaces\WorkspaceRepository
  17. arguments: ['@entity_type.manager', '@cache.default']
  18. workspaces.negotiator.session:
  19. class: Drupal\workspaces\Negotiator\SessionWorkspaceNegotiator
  20. arguments: ['@current_user', '@session', '@entity_type.manager']
  21. tags:
  22. - { name: workspace_negotiator, priority: 50 }
  23. workspaces.negotiator.query_parameter:
  24. class: Drupal\workspaces\Negotiator\QueryParameterWorkspaceNegotiator
  25. parent: workspaces.negotiator.session
  26. tags:
  27. - { name: workspace_negotiator, priority: 100 }
  28. access_check.workspaces.active_workspace:
  29. class: Drupal\workspaces\Access\ActiveWorkspaceCheck
  30. arguments: ['@workspaces.manager']
  31. tags:
  32. - { name: access_check, applies_to: _has_active_workspace }
  33. workspaces.entity_schema_listener:
  34. class: Drupal\workspaces\EventSubscriber\EntitySchemaSubscriber
  35. arguments: ['@entity.definition_update_manager', '@entity.last_installed_schema.repository', '@workspaces.manager']
  36. tags:
  37. - { name: 'event_subscriber' }
  38. workspaces.workspace_subscriber:
  39. class: Drupal\workspaces\EventSubscriber\WorkspaceRequestSubscriber
  40. arguments: ['@path_alias.manager', '@path.current', '@router.route_provider', '@workspaces.manager']
  41. tags:
  42. - { name: event_subscriber }
  43. cache_context.workspace:
  44. class: Drupal\workspaces\WorkspaceCacheContext
  45. arguments: ['@workspaces.manager']
  46. tags:
  47. - { name: cache.context }
  48. logger.channel.workspaces:
  49. parent: logger.channel_base
  50. arguments: ['workspaces']
  51. workspaces.entity.query.sql:
  52. decorates: entity.query.sql
  53. class: Drupal\workspaces\EntityQuery\QueryFactory
  54. arguments: ['@database', '@workspaces.manager']
  55. public: false
  56. decoration_priority: 50
  57. tags:
  58. - { name: backend_overridable }
  59. pgsql.workspaces.entity.query.sql:
  60. decorates: pgsql.entity.query.sql
  61. class: Drupal\workspaces\EntityQuery\PgsqlQueryFactory
  62. arguments: ['@database', '@workspaces.manager']
  63. public: false
  64. decoration_priority: 50