services: serializer.normalizer.entity_reference_item.hal: class: Drupal\hal\Normalizer\EntityReferenceItemNormalizer arguments: ['@hal.link_manager', '@serializer.entity_resolver'] tags: - { name: normalizer, priority: 10 } serializer.normalizer.field_item.hal: class: Drupal\hal\Normalizer\FieldItemNormalizer tags: - { name: normalizer, priority: 10 } serializer.normalizer.field.hal: class: Drupal\hal\Normalizer\FieldNormalizer tags: - { name: normalizer, priority: 10 } serializer.normalizer.file_entity.hal: class: Drupal\hal\Normalizer\FileEntityNormalizer tags: - { name: normalizer, priority: 20 } arguments: ['@entity.manager', '@http_client', '@hal.link_manager', '@module_handler'] serializer.normalizer.timestamp_item.hal: class: Drupal\hal\Normalizer\TimestampItemNormalizer tags: # Priority must be higher than serializer.normalizer.field_item.hal. - { name: normalizer, priority: 20, bc: bc_timestamp_normalizer_unix, bc_config_name: 'serialization.settings' } serializer.normalizer.entity.hal: class: Drupal\hal\Normalizer\ContentEntityNormalizer arguments: ['@hal.link_manager', '@entity.manager', '@module_handler'] tags: - { name: normalizer, priority: 10 } serializer.encoder.hal: class: Drupal\hal\Encoder\JsonEncoder tags: - { name: encoder, priority: 10, format: hal_json } # Link managers. hal.link_manager: class: Drupal\hal\LinkManager\LinkManager arguments: ['@hal.link_manager.type', '@hal.link_manager.relation'] hal.link_manager.type: class: Drupal\hal\LinkManager\TypeLinkManager arguments: ['@cache.default', '@module_handler', '@config.factory', '@request_stack', '@entity_type.bundle.info'] hal.link_manager.relation: class: Drupal\hal\LinkManager\RelationLinkManager arguments: ['@cache.default', '@entity.manager', '@module_handler', '@config.factory', '@request_stack']