Code Duplication    Length = 13-14 lines in 3 locations

src/Pipeline/Outgoing/OutgoingContextFactory.php 3 locations

@@ 24-37 (lines=14) @@
21
     *
22
     * @return OutgoingLogicalMessageContext
23
     */
24
    public function createLogicalMessageContextFromPublishContext(
25
        OutgoingPublishContext $parentContext
26
    ) {
27
        return new OutgoingLogicalMessageContext(
28
            $parentContext->getMessageId(),
29
            $parentContext->getHeaders(),
30
            $parentContext->getLogicalMessage(),
31
            [new MulticastAddressTag($parentContext->getLogicalMessage()->getMessageClass())],
32
            $parentContext->getPublishOptions()->isImmediateDispatchEnabled(),
33
            $parentContext->getIncomingPhysicalMessage(),
34
            $parentContext->getPendingTransportOperations(),
35
            $parentContext
36
        );
37
    }
38
39
    /**
40
     * @param AddressTagInterface[] $addressTags
@@ 67-79 (lines=13) @@
64
     *
65
     * @return OutgoingLogicalMessageContext
66
     */
67
    public function createLogicalMessageContextFromReplyContext($replyToAddress, OutgoingReplyContext $parentContext)
68
    {
69
        return new OutgoingLogicalMessageContext(
70
            $parentContext->getMessageId(),
71
            $parentContext->getHeaders(),
72
            $parentContext->getLogicalMessage(),
73
            [new UnicastAddressTag($replyToAddress)],
74
            $parentContext->getReplyOptions()->isImmediateDispatchEnabled(),
75
            $parentContext->getIncomingPhysicalMessage(),
76
            $parentContext->getPendingTransportOperations(),
77
            $parentContext
78
        );
79
    }
80
81
    /**
82
     * @param string                        $body
@@ 87-99 (lines=13) @@
84
     *
85
     * @return OutgoingPhysicalMessageContext
86
     */
87
    public function createPhysicalMessageContext($body, OutgoingLogicalMessageContext $parentContext)
88
    {
89
        return new OutgoingPhysicalMessageContext(
90
            $parentContext->getMessageId(),
91
            $parentContext->getHeaders(),
92
            new OutgoingPhysicalMessage($parentContext->getMessageId(), $parentContext->getHeaders(), $body),
93
            $parentContext->getAddressTags(),
94
            $parentContext->isImmediateDispatchEnabled(),
95
            $parentContext->getIncomingPhysicalMessage(),
96
            $parentContext->getPendingTransportOperations(),
97
            $parentContext
98
        );
99
    }
100
101
    /**
102
     * @param array                $transportOperations