Code Duplication    Length = 6-9 lines in 3 locations

PHPDaemon/Clients/AMQP/Driver/Protocol/v091/Serializer/FrameSerializerTrait.php 3 locations

@@ 359-364 (lines=6) @@
356
357
                return $this->packX01Payload($frame, $payload);
358
359
            case $frame instanceof Basic\BasicAckFrame:
360
                $payload = "\x00\x3c\x00\x50"
361
                    . \pack('J', $frame->deliveryTag)
362
                    . ($frame->multiple ? "\x01" : "\x00");
363
364
                return $this->packX01Payload($frame, $payload);
365
366
            case $frame instanceof Basic\BasicRejectFrame:
367
                $payload = "\x00\x3c\x00\x5a"
@@ 366-371 (lines=6) @@
363
364
                return $this->packX01Payload($frame, $payload);
365
366
            case $frame instanceof Basic\BasicRejectFrame:
367
                $payload = "\x00\x3c\x00\x5a"
368
                    . \pack('J', $frame->deliveryTag)
369
                    . ($frame->requeue ? "\x01" : "\x00");
370
371
                return $this->packX01Payload($frame, $payload);
372
373
            case $frame instanceof Basic\BasicRecoverFrame:
374
                $payload = "\x00\x3c\x00\x6e"
@@ 379-387 (lines=9) @@
376
377
                return $this->packX01Payload($frame, $payload);
378
379
            case $frame instanceof Basic\BasicNackFrame:
380
                $payload = "\x00\x3c\x00\x78"
381
                    . \pack('J', $frame->deliveryTag)
382
                    . \chr(
383
                        $frame->multiple
384
                        | $frame->requeue << 1
385
                    );
386
387
                return $this->packX01Payload($frame, $payload);
388
389
            case $frame instanceof Tx\TxSelectFrame:
390
                return "\x01" . \pack('n', $frame->frameChannelId) . "\x00\x00\x00\x04\x00\x5a\x00\x0a\xce";