Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
CRAP | |
100.00% |
4 / 4 |
ListNormalizer | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
2 | |
100.00% |
4 / 4 |
normalize | |
100.00% |
1 / 1 |
2 | |
100.00% |
4 / 4 |
<?php | |
/** | |
* @file | |
* Contains \Drupal\serialization\Normalizer\ListNormalizer. | |
*/ | |
namespace Drupal\serialization\Normalizer; | |
/** | |
* Converts list objects to arrays. | |
* | |
* Ordinarily, this would be handled automatically by Serializer, but since | |
* there is a TypedDataNormalizer and the Field class extends TypedData, any | |
* Field will be handled by that Normalizer instead of being traversed. This | |
* class ensures that TypedData classes that also implement ListInterface are | |
* traversed instead of simply returning getValue(). | |
*/ | |
class ListNormalizer extends NormalizerBase { | |
/** | |
* The interface or class that this Normalizer supports. | |
* | |
* @var string | |
*/ | |
protected $supportedInterfaceOrClass = 'Drupal\Core\TypedData\ListInterface'; | |
/** | |
* {@inheritdoc} | |
*/ | |
public function normalize($object, $format = NULL, array $context = array()) { | |
$attributes = array(); | |
foreach ($object as $fieldItem) { | |
$attributes[] = $this->serializer->normalize($fieldItem, $format); | |
} | |
return $attributes; | |
} | |
} |