for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Xabbuh\XApi\Serializer\Normalizer;
use Xabbuh\XApi\Model\IRI;
use Xabbuh\XApi\Model\Verb;
/**
* Denormalizes PHP arrays to {@link Verb} objects.
*
* @author Christian Flothmann <[email protected]>
*/
final class VerbNormalizer extends Normalizer
{
* {@inheritdoc}
public function normalize($object, $format = null, array $context = array())
if (!$object instanceof Verb) {
return;
}
$data = array(
'id' => $object->getId()->getValue(),
getValue
$object->getId()
string
Methods can only be called on objects. This check looks for methods being called on variables that have been inferred to never be objects.
);
if (null !== $display = $object->getDisplay()) {
$data['display'] = $this->normalizeAttribute($display, $format, $context);
return $data;
public function supportsNormalization($data, $format = null)
return $data instanceof Verb;
public function denormalize($data, $class, $format = null, array $context = array())
$id = IRI::fromString($data['id']);
$display = null;
if (isset($data['display'])) {
$display = $this->denormalizeData($data['display'], 'Xabbuh\XApi\Model\LanguageMap', $format, $context);
return new Verb($id, $display);
public function supportsDenormalization($data, $type, $format = null)
return 'Xabbuh\XApi\Model\Verb' === $type;
Methods can only be called on objects. This check looks for methods being called on variables that have been inferred to never be objects.