Passed
Push — bugfix/supesc-213-is-capture-a... ( b6d348...db0ba1 )
by Anton
16:04
created

BaseHeidelpayController   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 33
Duplicated Lines 0 %

Importance

Changes 3
Bugs 3 Features 0
Metric Value
wmc 4
eloc 9
dl 0
loc 33
rs 10
c 3
b 3
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A streamedResponse() 0 6 1
A getUrldecodedRequestBody() 0 11 3
1
<?php
2
3
/**
4
 * MIT License
5
 * For full license information, please view the LICENSE file that was distributed with this source code.
6
 */
7
8
namespace SprykerEco\Yves\Heidelpay\Controller;
9
10
use Spryker\Yves\Kernel\Controller\AbstractController;
11
use Symfony\Component\HttpFoundation\Request;
12
use Symfony\Component\HttpFoundation\StreamedResponse;
13
14
/**
15
 * @method \SprykerEco\Yves\Heidelpay\HeidelpayFactory getFactory()
16
 */
17
class BaseHeidelpayController extends AbstractController
18
{
19
    /**
20
     * @param \Symfony\Component\HttpFoundation\Request $request
21
     *
22
     * @return array
23
     */
24
    protected function getUrldecodedRequestBody(Request $request): array
25
    {
26
        $allRequestParameters = $request->request->all();
27
28
        foreach ($allRequestParameters as $key => $value) {
29
            if (is_string($value)) {
30
                $allRequestParameters[$key] = urldecode($value);
31
            }
32
        }
33
34
        return $allRequestParameters;
35
    }
36
37
    /**
38
     * @param callable|null $callback
39
     * @param int $status
40
     * @param array $headers
41
     *
42
     * @return \Symfony\Component\HttpFoundation\StreamedResponse
43
     */
44
    protected function streamedResponse($callback = null, $status = 200, $headers = []): StreamedResponse
45
    {
46
        $streamedResponse = new StreamedResponse($callback, $status, $headers);
47
        $streamedResponse->send();
48
49
        return $streamedResponse;
50
    }
51
}
52