Services - main - drupal

Primary tabs

Introduction to services

A "service" (such as accessing the database, sending email, or translating user interface text) can be defined by a module or Drupal core. Defining a service means giving it a name and designating a default class to provide the service; ideally, there should also be an interface that defines the methods that may be called. Services are collected into the Dependency Injection Container, and can be overridden to use different classes or different instantiation by modules. See the Services and Dependency Injection Container topic for details.

Some services have tags, which are defined in the service definition. Tags are used to define a group of related services, or to specify some aspect of how the service behaves. See the Service Tags topic for more information.

See also

Services and Dependency Injection Container

Service Tags

File

core/core.api.php, line 912

Title File name Summary All service tags
service_provider_test_class_5 core/modules/system/tests/modules/service_provider_test/service_provider_test.services.yml needs_destruction
service_provider_test_class_6 core/modules/system/tests/modules/service_provider_test/service_provider_test.services.yml needs_destruction
session core/core.services.yml Symfony\Component\HttpFoundation\Session\Session service_collector
session.attribute_bag core/core.services.yml Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag
session.flash_bag core/core.services.yml Symfony\Component\HttpFoundation\Session\Flash\FlashBag
session_configuration core/core.services.yml Drupal\Core\Session\SessionConfiguration
session_handler core/core.services.yml Alias of session_handler.storage
session_handler.storage core/core.services.yml Drupal\Core\Session\SessionHandler backend_overridable
session_handler.write_safe core/core.services.yml Drupal\Core\Session\WriteSafeSessionHandler session_handler_proxy
session_manager core/core.services.yml Drupal\Core\Session\SessionManager
session_manager.metadata_bag core/core.services.yml Drupal\Core\Session\MetadataBag
session_test.session_bag core/modules/system/tests/modules/session_test/session_test.services.yml Drupal\session_test\Session\TestSessionBag session_bag
session_test.session_handler.test_proxy core/modules/system/tests/modules/session_test/session_test.services.yml Drupal\session_test\Session\TestSessionHandlerProxy session_handler_proxy
session_test.session_handler.test_proxy2 core/modules/system/tests/modules/session_test/session_test.services.yml Drupal\session_test\Session\TestSessionHandlerProxy session_handler_proxy
session_test.session_handler_proxy_trace core/modules/system/tests/modules/session_test/session_test.services.yml ArrayObject
session_test.subscriber core/modules/system/tests/modules/session_test/session_test.services.yml Drupal\session_test\EventSubscriber\SessionTestSubscriber
settings core/core.services.yml Drupal\Core\Site\Settings
settings_tray_override_test.overrider core/modules/settings_tray/tests/modules/settings_tray_override_test/settings_tray_override_test.services.yml Drupal\settings_tray_override_test\ConfigOverrider config.factory.override
shortcut.lazy_builders core/modules/shortcut/shortcut.services.yml Drupal\shortcut\ShortcutLazyBuilders
sqlite.views.date_sql core/modules/views/views.services.yml Drupal\views\Plugin\views\query\SqliteDateSql
state core/core.services.yml Drupal\Core\State\State needs_destruction
stream_wrapper.assets core/core.services.yml Drupal\Core\StreamWrapper\AssetsStream stream_wrapper
stream_wrapper.dummy core/modules/file/tests/file_test/file_test.services.yml Drupal\file_test\StreamWrapper\DummyStreamWrapper stream_wrapper
stream_wrapper.dummy_external_readonly core/modules/file/tests/file_test/file_test.services.yml Drupal\file_test\StreamWrapper\DummyExternalReadOnlyWrapper stream_wrapper
stream_wrapper.dummy_multiple core/modules/file/tests/file_test/file_test.services.yml Drupal\file_test\StreamWrapper\DummyMultipleStreamWrapper stream_wrapper
stream_wrapper.dummy_private core/modules/file/tests/file_test/file_test.services.yml Drupal\file_test\StreamWrapper\DummyPrivateStreamWrapper stream_wrapper
stream_wrapper.dummy_public core/modules/file/tests/file_test/file_test.services.yml Drupal\file_test\StreamWrapper\DummyPublicStreamWrapper stream_wrapper
stream_wrapper.dummy_readonly core/modules/file/tests/file_test/file_test.services.yml Drupal\file_test\StreamWrapper\DummyReadOnlyStreamWrapper stream_wrapper
stream_wrapper.dummy_remote core/modules/file/tests/file_test/file_test.services.yml Drupal\file_test\StreamWrapper\DummyRemoteStreamWrapper stream_wrapper
stream_wrapper.module core/core.services.yml Drupal\Core\StreamWrapper\ModuleStream stream_wrapper
stream_wrapper.public core/core.services.yml Drupal\Core\StreamWrapper\PublicStream stream_wrapper
stream_wrapper.temporary core/core.services.yml Drupal\Core\StreamWrapper\TemporaryStream stream_wrapper
stream_wrapper.theme core/core.services.yml Drupal\Core\StreamWrapper\ThemeStream stream_wrapper
stream_wrapper.translations core/modules/locale/locale.services.yml Drupal\locale\StreamWrapper\TranslationsStream stream_wrapper
stream_wrapper_manager core/core.services.yml Drupal\Core\StreamWrapper\StreamWrapperManager
string_translation core/core.services.yml Drupal\Core\StringTranslation\TranslationManager service_collector
string_translator.custom_strings core/core.services.yml Drupal\Core\StringTranslation\Translator\CustomStrings string_translator
string_translator.locale.lookup core/modules/locale/locale.services.yml Drupal\locale\LocaleTranslation string_translator, needs_destruction
Symfony\Component\Filesystem\Filesystem core/modules/package_manager/package_manager.services.yml
Symfony\Component\Mailer\Mailer core/modules/mailer/mailer.services.yml
Symfony\Component\Mailer\Messenger\MessageHandler core/modules/mailer/mailer.services.yml messenger.message_handler
Symfony\Component\Mailer\Transport\AbstractTransportFactory core/modules/mailer/mailer.services.yml Abstract
Symfony\Component\Mailer\Transport\NativeTransportFactory core/modules/mailer/mailer.services.yml mailer.transport_factory
Symfony\Component\Mailer\Transport\NullTransportFactory core/modules/mailer/mailer.services.yml mailer.transport_factory
Symfony\Component\Mailer\Transport\SendmailTransportFactory core/modules/mailer/mailer.services.yml mailer.transport_factory
Symfony\Component\Mailer\Transport\Smtp\EsmtpTransportFactory core/modules/mailer/mailer.services.yml mailer.transport_factory
Symfony\Component\Mailer\Transport\TransportInterface core/modules/mailer/mailer.services.yml
Symfony\Component\Process\ExecutableFinder core/modules/package_manager/package_manager.services.yml
system.access_route_alter_subscriber core/modules/system/system.services.yml Drupal\system\EventSubscriber\AccessRouteAlterSubscriber
system.admin_path.route_subscriber core/modules/system/system.services.yml Drupal\system\EventSubscriber\AdminRouteSubscriber

Other projects


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