PHP code example of koco / messenger-kafka
1. Go to this page and download the library: Download koco/messenger-kafka library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
koco / messenger-kafka example snippets
return [
// ...
Koco\Kafka\KocoKafkaBundle::class => ['all' => true],
];
namespace App\Infrastructure\Messenger;
use App\Catalogue\Domain\Model\Event\ProductCreated;
use Symfony\Component\Messenger\Envelope;
use Symfony\Component\Messenger\Transport\Serialization\SerializerInterface;
final class MySerializer implements SerializerInterface
{
public function decode(array $encodedEnvelope): Envelope
{
$record = json_decode($encodedEnvelope['body'], true);
return new Envelope(new ProductCreated(
$record['id'],
$record['name'],
$record['description'],
));
}
public function encode(Envelope $envelope): array
{
/** @var ProductCreated $event */
$event = $envelope->getMessage();
return [
'key' => $event->getId(),
'headers' => [],
'body' => json_encode([
'id' => $event->getId(),
'name' => $event->getName(),
'description' => $event->getDescription(),
]),
];
}
}