class BooleanNormalizer
Same name in other branches
- 9 core/modules/serialization/tests/modules/test_datatype_boolean_emoji_normalizer/src/Normalizer/BooleanNormalizer.php \Drupal\test_datatype_boolean_emoji_normalizer\Normalizer\BooleanNormalizer
- 8.9.x core/modules/serialization/tests/modules/test_datatype_boolean_emoji_normalizer/src/Normalizer/BooleanNormalizer.php \Drupal\test_datatype_boolean_emoji_normalizer\Normalizer\BooleanNormalizer
- 11.x core/modules/serialization/tests/modules/test_datatype_boolean_emoji_normalizer/src/Normalizer/BooleanNormalizer.php \Drupal\test_datatype_boolean_emoji_normalizer\Normalizer\BooleanNormalizer
Normalizes boolean data weirdly: renders them as 👍 (TRUE) or 👎 (FALSE).
Hierarchy
- class \Drupal\serialization\Normalizer\NormalizerBase implements \Symfony\Component\Serializer\SerializerAwareInterface, \Drupal\serialization\Normalizer\CacheableNormalizerInterface uses \Symfony\Component\Serializer\SerializerAwareTrait
- class \Drupal\test_datatype_boolean_emoji_normalizer\Normalizer\BooleanNormalizer extends \Drupal\serialization\Normalizer\NormalizerBase implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface
Expanded class hierarchy of BooleanNormalizer
1 string reference to 'BooleanNormalizer'
- test_datatype_boolean_emoji_normalizer.services.yml in core/
modules/ serialization/ tests/ modules/ test_datatype_boolean_emoji_normalizer/ test_datatype_boolean_emoji_normalizer.services.yml - core/modules/serialization/tests/modules/test_datatype_boolean_emoji_normalizer/test_datatype_boolean_emoji_normalizer.services.yml
1 service uses BooleanNormalizer
- serializer.normalizer.boolean.datatype.emoji in 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
File
-
core/
modules/ serialization/ tests/ modules/ test_datatype_boolean_emoji_normalizer/ src/ Normalizer/ BooleanNormalizer.php, line 12
Namespace
Drupal\test_datatype_boolean_emoji_normalizer\NormalizerView source
class BooleanNormalizer extends NormalizerBase implements DenormalizerInterface {
/**
* {@inheritdoc}
*/
public function normalize($object, $format = NULL, array $context = []) : array|string|int|float|bool|\ArrayObject|null {
return $object->getValue() ? '👍' : '👎';
}
/**
* {@inheritdoc}
*/
public function denormalize($data, $class, $format = NULL, array $context = []) : mixed {
if (!in_array($data, [
'👍',
'👎',
], TRUE)) {
throw new \UnexpectedValueException('Only 👍 and 👎 are acceptable values.');
}
return $data === '👍';
}
/**
* {@inheritdoc}
*/
public function getSupportedTypes(?string $format) : array {
return [
BooleanData::class => TRUE,
];
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
BooleanNormalizer::denormalize | public | function | |||
BooleanNormalizer::getSupportedTypes | public | function | Overrides NormalizerBase::getSupportedTypes | ||
BooleanNormalizer::normalize | public | function | |||
CacheableNormalizerInterface::SERIALIZATION_CONTEXT_CACHEABILITY | constant | Name of key for bubbling cacheability metadata via serialization context. | |||
NormalizerBase::$format | protected | property | List of formats which supports (de-)normalization. | 1 | |
NormalizerBase::addCacheableDependency | protected | function | Adds cacheability if applicable. | ||
NormalizerBase::checkFormat | protected | function | Checks if the provided format is supported by this normalizer. | 1 | |
NormalizerBase::hasCacheableSupportsMethod | public | function | 16 | ||
NormalizerBase::supportsDenormalization | public | function | Implements \Symfony\Component\Serializer\Normalizer\DenormalizerInterface::supportsDenormalization() | 1 | |
NormalizerBase::supportsNormalization | public | function | 1 |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.