for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace EventSauce\EventSourcing\Serialization;
class ConstructingPayloadSerializer implements PayloadSerializer
{
/**
* @param SerializablePayload $event
*
* @return array
*/
public function serializePayload(object $event): array
return $event->toPayload();
}
public function unserializePayload(string $className, array $payload): object
/* @var SerializablePayload $className */
return $className::fromPayload($payload);