• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

sirn-se / websocket-php / 8346487915

19 Mar 2024 04:15PM UTC coverage: 22.584% (-77.4%) from 100.0%
8346487915

push

github

sirn-se
Temp test verification

2 of 2 new or added lines in 1 file covered. (100.0%)

742 existing lines in 32 files now uncovered.

222 of 983 relevant lines covered (22.58%)

0.23 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/Middleware/ProcessStack.php
1
<?php
2

3
/**
4
 * Copyright (C) 2014-2024 Textalk and contributors.
5
 * This file is part of Websocket PHP and is free software under the ISC License.
6
 */
7

8
namespace WebSocket\Middleware;
9

10
use Stringable;
11
use WebSocket\Connection;
12
use WebSocket\Message\{
13
    Message,
14
    MessageHandler
15
};
16
use WebSocket\Trait\StringableTrait;
17

18
/**
19
 * WebSocket\Middleware\ProcessStack class.
20
 * Worker stack for middleware implementations.
21
 */
22
class ProcessStack implements Stringable
23
{
24
    use StringableTrait;
25

26
    private $connection;
27
    private $messageHandler;
28
    private $processors;
29

30
    /**
31
     * Create ProcessStack.
32
     * @param Connection $connection
33
     * @param MessageHandler $messageHandler
34
     * @param array $processors
35
     */
36
    public function __construct(Connection $connection, MessageHandler $messageHandler, array $processors)
37
    {
UNCOV
38
        $this->connection = $connection;
×
UNCOV
39
        $this->messageHandler = $messageHandler;
×
UNCOV
40
        $this->processors = $processors;
×
41
    }
42

43
    /**
44
     * Process middleware for incoming message.
45
     * @return Message
46
     */
47
    public function handleIncoming(): Message
48
    {
UNCOV
49
        $processor = array_shift($this->processors);
×
UNCOV
50
        if ($processor) {
×
UNCOV
51
            return $processor->processIncoming($this, $this->connection);
×
52
        }
UNCOV
53
        return $this->messageHandler->pull();
×
54
    }
55

56
    /**
57
     * Process middleware for outgoing message.
58
     * @param Message $message
59
     * @return Message
60
     */
61
    public function handleOutgoing(Message $message): Message
62
    {
UNCOV
63
        $processor = array_shift($this->processors);
×
UNCOV
64
        if ($processor) {
×
UNCOV
65
            return $processor->processOutgoing($this, $this->connection, $message);
×
66
        }
UNCOV
67
        return $this->messageHandler->push($message, $this->connection->getFrameSize());
×
68
    }
69
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc