FreightTemplateListResponder::success()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 11
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 9
c 1
b 0
f 0
dl 0
loc 11
rs 9.9666
cc 2
nc 2
nop 1
1
<?php
2
declare(strict_types=1);
3
4
/**
5
 * Api Class
6
 * @category    Ticaje
7
 * @author      Max Demian <[email protected]>
8
 */
9
10
namespace Ticaje\AeSdk\Api\Artifact\Responder\Get;
11
12
use Ticaje\Contract\Patterns\Interfaces\Pool\WorkerInterface;
13
use Ticaje\Contract\Patterns\Interfaces\Decorator\Responder\ResponseInterface as ContractResponseInterface;
14
15
use Ticaje\AeSdk\Api\Interfaces\ApiResponderInterface;
16
use Ticaje\AeSdk\Api\Artifact\Responder\Responder;
17
18
/**
19
 * Class FreightTemplateListResponder
20
 * @package Ticaje\AeSdk\Api\Artifact\Responder
21
 */
22
class FreightTemplateListResponder implements ApiResponderInterface, WorkerInterface
23
{
24
    use Responder;
0 ignored issues
show
Bug introduced by
The trait Ticaje\AeSdk\Api\Artifact\Responder\Responder requires the property $msg which is not provided by Ticaje\AeSdk\Api\Artifac...htTemplateListResponder.
Loading history...
25
26
    private $count;
0 ignored issues
show
introduced by
The private property $count is not used, and could be removed.
Loading history...
27
28
    private $templates = [];
0 ignored issues
show
introduced by
The private property $templates is not used, and could be removed.
Loading history...
29
30
    /**
31
     * @inheritDoc
32
     */
33
    public function process(ContractResponseInterface $response): ApiResponderInterface
34
    {
35
        $content = json_decode($response->getContent());
36
        isset($content->error_response) ? $this->error($content->error_response) : $this->success($content->aliexpress_freight_redefining_listfreighttemplate_response);
37
        return $this;
38
    }
39
40
    protected function success(\stdClass $response)
41
    {
42
        $data = $response->aeop_freight_template_d_t_o_list;
43
        $itemsCount = count($data->aeopfreighttemplatedtolist);
44
        $message = $itemsCount ? "{$itemsCount} shipping templates fetched successfully" : 'No templates found with such criteria';
45
        $this
46
            ->setSuccess(1)
0 ignored issues
show
Bug introduced by
The method setSuccess() does not exist on Ticaje\AeSdk\Api\Artifac...htTemplateListResponder. Since you implemented __call, consider adding a @method annotation. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

46
            ->/** @scrutinizer ignore-call */ 
47
              setSuccess(1)
Loading history...
47
            ->setCount($itemsCount)
0 ignored issues
show
Bug introduced by
The method setCount() does not exist on Ticaje\AeSdk\Api\Artifac...htTemplateListResponder. Since you implemented __call, consider adding a @method annotation. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

47
            ->/** @scrutinizer ignore-call */ setCount($itemsCount)
Loading history...
48
            ->setTemplates($data->aeopfreighttemplatedtolist)
0 ignored issues
show
Bug introduced by
The method setTemplates() does not exist on Ticaje\AeSdk\Api\Artifac...htTemplateListResponder. Since you implemented __call, consider adding a @method annotation. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

48
            ->/** @scrutinizer ignore-call */ setTemplates($data->aeopfreighttemplatedtolist)
Loading history...
49
            ->setCode(200)
0 ignored issues
show
Bug introduced by
The method setCode() does not exist on Ticaje\AeSdk\Api\Artifac...htTemplateListResponder. Since you implemented __call, consider adding a @method annotation. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

49
            ->/** @scrutinizer ignore-call */ setCode(200)
Loading history...
50
            ->setMessage($message);
0 ignored issues
show
Bug introduced by
The method setMessage() does not exist on Ticaje\AeSdk\Api\Artifac...htTemplateListResponder. Since you implemented __call, consider adding a @method annotation. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

50
            ->/** @scrutinizer ignore-call */ setMessage($message);
Loading history...
51
    }
52
}
53