81 lines
3.2 KiB
YAML
81 lines
3.2 KiB
YAML
services:
|
|
jsonapi_extras.resource_type.repository:
|
|
public: false
|
|
class: Drupal\jsonapi_extras\ResourceType\ConfigurableResourceTypeRepository
|
|
decorates: jsonapi.resource_type.repository
|
|
parent: jsonapi.resource_type.repository
|
|
calls:
|
|
- [setEntityRepository, ['@entity.repository']]
|
|
- [setEnhancerManager, ['@plugin.manager.resource_field_enhancer']]
|
|
- [setConfigFactory, ['@config.factory']]
|
|
|
|
serializer.normalizer.field_item.jsonapi_extras:
|
|
class: Drupal\jsonapi\Normalizer\ImpostorFrom\jsonapi_extras\FieldItemNormalizerImpostor
|
|
decorates: serializer.normalizer.field_item.jsonapi
|
|
arguments:
|
|
- '@serializer.normalizer.field_item.jsonapi_extras.inner'
|
|
- '@entity_type.manager'
|
|
- '@plugin.manager.resource_field_enhancer'
|
|
|
|
serializer.normalizer.resource_identifier.jsonapi_extras:
|
|
class: Drupal\jsonapi\Normalizer\ImpostorFrom\jsonapi_extras\ResourceIdentifierNormalizerImpostor
|
|
decorates: serializer.normalizer.resource_identifier.jsonapi
|
|
arguments:
|
|
- '@serializer.normalizer.resource_identifier.jsonapi_extras.inner'
|
|
- '@jsonapi.resource_type.repository'
|
|
|
|
serializer.normalizer.resource_object.jsonapi_extras:
|
|
class: Drupal\jsonapi\Normalizer\ImpostorFrom\jsonapi_extras\ResourceObjectNormalizerImpostor
|
|
decorates: serializer.normalizer.resource_object.jsonapi
|
|
arguments: ['@serializer.normalizer.resource_object.jsonapi_extras.inner']
|
|
|
|
serializer.normalizer.content_entity.jsonapi_extras:
|
|
class: Drupal\jsonapi\Normalizer\ImpostorFrom\jsonapi_extras\ContentEntityDenormalizerImpostor
|
|
decorates: serializer.normalizer.content_entity.jsonapi
|
|
arguments: ['@serializer.normalizer.content_entity.jsonapi_extras.inner']
|
|
|
|
serializer.normalizer.config_entity.jsonapi_extras:
|
|
class: Drupal\jsonapi\Normalizer\ImpostorFrom\jsonapi_extras\ConfigEntityDenormalizerImpostor
|
|
decorates: serializer.normalizer.config_entity.jsonapi
|
|
arguments: ['@serializer.normalizer.config_entity.jsonapi_extras.inner']
|
|
|
|
plugin.manager.resource_field_enhancer:
|
|
class: Drupal\jsonapi_extras\Plugin\ResourceFieldEnhancerManager
|
|
parent: default_plugin_manager
|
|
|
|
# Event subscribers.
|
|
jsonapi_extras.config_subscriber:
|
|
class: Drupal\jsonapi_extras\EventSubscriber\ConfigSubscriber
|
|
arguments: ['@kernel', '@router.builder']
|
|
tags:
|
|
- { name: event_subscriber }
|
|
|
|
jsonapi_extras.entity.to_jsonapi:
|
|
class: Drupal\jsonapi_extras\EntityToJsonApi
|
|
arguments:
|
|
- '@http_kernel.basic'
|
|
- '@jsonapi.resource_type.repository'
|
|
- '@session'
|
|
- '@request_stack'
|
|
|
|
jsonapi_extras.jsonapi_build_subscriber:
|
|
class: Drupal\jsonapi_extras\EventSubscriber\JsonApiBuildSubscriber
|
|
arguments:
|
|
- '@jsonapi_extras.resource_type.repository'
|
|
- '@config.factory'
|
|
tags:
|
|
- { name: event_subscriber }
|
|
|
|
jsonapi_extras.config_import_validate_subscriber:
|
|
arguments:
|
|
- '@config.manager'
|
|
- '@entity_type.manager'
|
|
- '@jsonapi_extras.resource_type.repository'
|
|
class: Drupal\jsonapi_extras\EventSubscriber\FieldConfigIntegrityValidation
|
|
tags:
|
|
- { name: event_subscriber }
|
|
|
|
logger.channel.jsonapi_extras:
|
|
parent: logger.channel_base
|
|
arguments: ['jsonapi_extras']
|