Services - 10.3.x - 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 900

Title File name Summary All service tags
router.route_preloader core/core.services.yml Drupal\Core\Routing\RoutePreloader
router.route_provider core/core.services.yml Drupal\Core\Routing\RouteProvider backend_overridable
router.route_provider.lazy_builder core/core.services.yml Drupal\Core\Routing\RouteProviderLazyBuilder
router_listener core/core.services.yml Symfony\Component\HttpKernel\EventListener\RouterListener
route_access_response_subscriber core/core.services.yml Drupal\Core\EventSubscriber\RouteAccessResponseSubscriber
route_enhancer.entity core/core.services.yml Drupal\Core\Entity\Enhancer\EntityRouteEnhancer route_enhancer
route_enhancer.entity_bundle core/core.services.yml Drupal\Core\Entity\Enhancer\EntityBundleRouteEnhancer route_enhancer
route_enhancer.entity_revision core/core.services.yml Drupal\Core\Routing\Enhancer\EntityRevisionRouteEnhancer route_enhancer
route_enhancer.form core/core.services.yml Drupal\Core\Routing\Enhancer\FormRouteEnhancer route_enhancer
route_enhancer.param_conversion core/core.services.yml Drupal\Core\Routing\Enhancer\ParamConversionEnhancer route_enhancer
route_http_method_subscriber core/core.services.yml Drupal\Core\EventSubscriber\RouteMethodSubscriber
route_processor_csrf core/core.services.yml Drupal\Core\Access\RouteProcessorCsrf route_processor_outbound
route_processor_current core/core.services.yml Drupal\Core\RouteProcessor\RouteProcessorCurrent route_processor_outbound
route_processor_manager core/core.services.yml Drupal\Core\RouteProcessor\RouteProcessorManager service_collector
route_special_attributes_subscriber core/core.services.yml Drupal\Core\EventSubscriber\SpecialAttributesRouteSubscriber
route_subscriber.entity core/core.services.yml Drupal\Core\EventSubscriber\EntityRouteAlterSubscriber
route_subscriber.module core/core.services.yml Drupal\Core\EventSubscriber\ModuleRouteSubscriber
route_subscriber.no_big_pipe core/modules/big_pipe/big_pipe.services.yml Drupal\big_pipe\EventSubscriber\NoBigPipeRouteAlterSubscriber
sdc_other_node_visitor.twig.extension.profiler core/modules/system/tests/modules/sdc_other_node_visitor/sdc_other_node_visitor.services.yml Drupal\sdc_other_node_visitor\Twig\Extension\TestProfilerExtension twig.extension
sdc_other_node_visitor.twig.extension.profiler core/modules/sdc/tests/modules/sdc_other_node_visitor/sdc_other_node_visitor.services.yml Drupal\sdc_other_node_visitor\Twig\Extension\TestProfilerExtension twig.extension
search.index core/modules/search/search.services.yml Drupal\search\SearchIndex backend_overridable
search.search_page_repository core/modules/search/search.services.yml Drupal\search\SearchPageRepository
search.text_processor core/modules/search/search.services.yml Drupal\search\SearchTextProcessor
serialization.entity_resolver.target_id core/modules/serialization/serialization.services.yml Drupal\serialization\EntityResolver\TargetIdResolver entity_resolver
serialization.exception.default core/modules/serialization/serialization.services.yml Drupal\serialization\EventSubscriber\DefaultExceptionSubscriber
serialization.json core/core.services.yml Drupal\Component\Serialization\Json
serialization.normalizer.field core/modules/serialization/serialization.services.yml Drupal\serialization\Normalizer\FieldNormalizer normalizer
serialization.normalizer.field_item core/modules/serialization/serialization.services.yml Drupal\serialization\Normalizer\FieldItemNormalizer normalizer
serialization.phpserialize core/core.services.yml Drupal\Component\Serialization\PhpSerialize
serialization.user_route_alter_subscriber core/modules/serialization/serialization.services.yml Drupal\serialization\EventSubscriber\UserRouteAlterSubscriber
serialization.yaml core/core.services.yml Drupal\Component\Serialization\Yaml
serializer core/modules/serialization/serialization.services.yml Symfony\Component\Serializer\Serializer
serializer.encoder.json core/modules/serialization/serialization.services.yml Drupal\serialization\Encoder\JsonEncoder encoder
serializer.encoder.jsonapi core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Encoder\JsonEncoder jsonapi_encoder
serializer.encoder.serialization_test core/modules/serialization/tests/serialization_test/serialization_test.services.yml Drupal\serialization_test\SerializationTestEncoder encoder
serializer.encoder.xml core/modules/serialization/serialization.services.yml Drupal\serialization\Encoder\XmlEncoder encoder
serializer.entity_resolver core/modules/serialization/serialization.services.yml Drupal\serialization\EntityResolver\ChainEntityResolver
serializer.entity_resolver.uuid core/modules/serialization/serialization.services.yml Drupal\serialization\EntityResolver\UuidResolver entity_resolver
serializer.normalizer.boolean.datatype.emoji core/modules/serialization/tests/modules/test_datatype_boolean_emoji_normalizer/test_datatype_boolean_emoji_normalizer.services.yml Drupal\test_datatype_boolean_emoji_normalizer\Normalizer\BooleanNormalizer normalizer
serializer.normalizer.boolean.fieldtype.emoji core/modules/serialization/tests/modules/test_fieldtype_boolean_emoji_normalizer/test_fieldtype_boolean_emoji_normalizer.services.yml Drupal\test_fieldtype_boolean_emoji_normalizer\Normalizer\BooleanItemNormalizer normalizer
serializer.normalizer.complex_data core/modules/serialization/serialization.services.yml Drupal\serialization\Normalizer\ComplexDataNormalizer normalizer
serializer.normalizer.config_entity core/modules/serialization/serialization.services.yml Drupal\serialization\Normalizer\ConfigEntityNormalizer normalizer
serializer.normalizer.config_entity.jsonapi core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Normalizer\ConfigEntityDenormalizer jsonapi_normalizer
serializer.normalizer.content_entity core/modules/serialization/serialization.services.yml Drupal\serialization\Normalizer\ContentEntityNormalizer normalizer
serializer.normalizer.content_entity.jsonapi core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Normalizer\ContentEntityDenormalizer jsonapi_normalizer
serializer.normalizer.data.jsonapi core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Normalizer\DataNormalizer jsonapi_normalizer
serializer.normalizer.datetimeiso8601 core/modules/serialization/serialization.services.yml \Drupal\serialization\Normalizer\DateTimeIso8601Normalizer normalizer
serializer.normalizer.entity core/modules/serialization/serialization.services.yml Drupal\serialization\Normalizer\EntityNormalizer normalizer
serializer.normalizer.entity_access_exception.jsonapi core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Normalizer\EntityAccessDeniedHttpExceptionNormalizer jsonapi_normalizer
serializer.normalizer.entity_reference_field_item core/modules/serialization/serialization.services.yml Drupal\serialization\Normalizer\EntityReferenceFieldItemNormalizer normalizer

Other projects


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