class ComplexDataDefinitionNormalizer in Schemata 8
Same name in this branch
- 8 schemata_json_schema/src/Normalizer/jsonapi/ComplexDataDefinitionNormalizer.php \Drupal\schemata_json_schema\Normalizer\jsonapi\ComplexDataDefinitionNormalizer
- 8 schemata_json_schema/src/Normalizer/json/ComplexDataDefinitionNormalizer.php \Drupal\schemata_json_schema\Normalizer\json\ComplexDataDefinitionNormalizer
- 8 schemata_json_schema/src/Normalizer/hal/ComplexDataDefinitionNormalizer.php \Drupal\schemata_json_schema\Normalizer\hal\ComplexDataDefinitionNormalizer
Normalizer for ComplexDataDefinitionInterface for HAL.
Hierarchy
- class \Drupal\serialization\Normalizer\NormalizerBase implements \Symfony\Component\Serializer\SerializerAwareInterface, CacheableNormalizerInterface uses \Symfony\Component\Serializer\SerializerAwareTrait
- class \Drupal\schemata\Normalizer\NormalizerBase implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface
- class \Drupal\schemata_json_schema\Normalizer\json\JsonNormalizerBase implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface
- class \Drupal\schemata_json_schema\Normalizer\json\DataDefinitionNormalizer
- class \Drupal\schemata_json_schema\Normalizer\json\ComplexDataDefinitionNormalizer
- class \Drupal\schemata_json_schema\Normalizer\hal\ComplexDataDefinitionNormalizer
- class \Drupal\schemata_json_schema\Normalizer\json\ComplexDataDefinitionNormalizer
- class \Drupal\schemata_json_schema\Normalizer\json\DataDefinitionNormalizer
- class \Drupal\schemata_json_schema\Normalizer\json\JsonNormalizerBase implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface
- class \Drupal\schemata\Normalizer\NormalizerBase implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface
Expanded class hierarchy of ComplexDataDefinitionNormalizer
1 string reference to 'ComplexDataDefinitionNormalizer'
- schemata_json_schema.services.yml in schemata_json_schema/
schemata_json_schema.services.yml - schemata_json_schema/schemata_json_schema.services.yml
1 service uses ComplexDataDefinitionNormalizer
File
- schemata_json_schema/
src/ Normalizer/ hal/ ComplexDataDefinitionNormalizer.php, line 10
Namespace
Drupal\schemata_json_schema\Normalizer\halView source
class ComplexDataDefinitionNormalizer extends JsonComplexDataDefinitionNormalizer {
/**
* The formats that the Normalizer can handle.
*
* @var array
*/
protected $format = 'schema_json';
/**
* The formats that the Normalizer can handle.
*
* @var array
*/
protected $describedFormat = 'hal_json';
/**
* {@inheritdoc}
*/
public function normalize($entity, $format = NULL, array $context = []) {
/* @var $entity \Drupal\Core\TypedData\ComplexDataDefinitionInterface */
// If this does not wrap a reference, revert to standard JSON behavior.
if (!$this
->isReferenceField($entity, $context)) {
return parent::normalize($entity, $format, $context);
}
// Not overriding the $context['parent'] here allows trickle-down of
// top-level field labels. However, we do need some of the field settings.
$context['settings'] = $entity
->getSettings();
return $this->serializer
->normalize($entity
->getPropertyDefinition('entity'), $format, $context);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
CacheableNormalizerInterface:: |
constant | Name of key for bubbling cacheability metadata via serialization context. | ||
ComplexDataDefinitionNormalizer:: |
protected | property |
The formats that the Normalizer can handle. Overrides JsonNormalizerBase:: |
|
ComplexDataDefinitionNormalizer:: |
protected | property |
The formats that the Normalizer can handle. Overrides JsonNormalizerBase:: |
|
ComplexDataDefinitionNormalizer:: |
protected | property |
The interface or class that this Normalizer supports. Overrides DataDefinitionNormalizer:: |
|
ComplexDataDefinitionNormalizer:: |
protected | function | Determine if the current field is a reference field. | |
ComplexDataDefinitionNormalizer:: |
public | function |
Normalizes an object into a set of arrays/scalars. Overrides ComplexDataDefinitionNormalizer:: |
|
DataDefinitionNormalizer:: |
protected | function | Extracts property details from a data definition. | |
NormalizerBase:: |
protected | function | Adds cacheability if applicable. | |
NormalizerBase:: |
protected | function |
Checks if the provided format is supported by this normalizer. Overrides NormalizerBase:: |
|
NormalizerBase:: |
public | function | Denormalizes data back into an object of the given class. | |
NormalizerBase:: |
protected | function | Normalize an array of data definitions. | |
NormalizerBase:: |
protected | function | Determine if the given property is a required element of the schema. | |
NormalizerBase:: |
public | function |
Implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface::supportsDenormalization() Overrides NormalizerBase:: |
|
NormalizerBase:: |
public | function | Checks whether the given class is supported for normalization by this normalizer. | 1 |