Code Duplication    Length = 21-21 lines in 2 locations

PHPDaemon/IPCManager/WorkerConnection.php 1 location

@@ 95-115 (lines=21) @@
92
     * Called when new data received.
93
     * @return void
94
     */
95
    public function onRead()
96
    {
97
        start:
98
        if ($this->state === self::STATE_ROOT) {
99
            if (false === ($r = $this->readExact(4))) {
100
                return; // not ready yet
101
            }
102
            $u = unpack('N', $r);
103
            $this->packetLength = $u[1];
104
            $this->state = self::STATE_CONTENT;
105
        }
106
        if ($this->state === self::STATE_CONTENT) {
107
            if (false === ($packet = $this->readExact($this->packetLength))) {
108
                $this->setWatermark($this->packetLength, $this->packetLength);
109
                return; // not ready yet
110
            }
111
            $this->setWatermark(4, 0xFFFF);
112
            $this->state = self::STATE_ROOT;
113
            $this->onPacket(\igbinary_unserialize($packet));
114
        }
115
        goto start;
116
    }
117
}
118

PHPDaemon/IPCManager/MasterPoolConnection.php 1 location

@@ 49-69 (lines=21) @@
46
     * Called when new data received.
47
     * @return void
48
     */
49
    public function onRead()
50
    {
51
        start:
52
        if ($this->state === self::STATE_ROOT) {
53
            if (false === ($r = $this->readExact(4))) {
54
                return; // not ready yet
55
            }
56
            $u = unpack('N', $r);
57
            $this->packetLength = $u[1];
58
            $this->state = self::STATE_CONTENT;
59
        }
60
        if ($this->state === self::STATE_CONTENT) {
61
            if (false === ($packet = $this->readExact($this->packetLength))) {
62
                $this->setWatermark($this->packetLength, $this->packetLength);
63
                return; // not ready yet
64
            }
65
            $this->setWatermark(4, 0xFFFF);
66
            $this->state = self::STATE_ROOT;
67
            $this->onPacket(igbinary_unserialize($packet));
68
        }
69
        goto start;
70
    }
71
72
    /**