SaveTranslationsAction::__invoke()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 4
c 1
b 0
f 0
nc 1
nop 1
dl 0
loc 8
rs 10
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Locastic\SymfonyTranslationBundle\Controller;
6
7
use Locastic\SymfonyTranslationBundle\Saver\TranslationValueSaverInterface;
8
use Locastic\SymfonyTranslationBundle\Transformer\TranslationValueToFormFieldTransformerInterface;
9
use Symfony\Component\HttpFoundation\Request;
10
use Symfony\Component\HttpFoundation\Response;
11
12
final class SaveTranslationsAction
13
{
14
    private TranslationValueToFormFieldTransformerInterface $translationValueToFormTransformer;
15
16
    private TranslationValueSaverInterface $translationValueSaver;
17
18
    public function __construct(
19
        TranslationValueToFormFieldTransformerInterface $translationValueToFormTransformer,
20
        TranslationValueSaverInterface $translationValueSaver
21
    ) {
22
        $this->translationValueToFormTransformer = $translationValueToFormTransformer;
23
        $this->translationValueSaver = $translationValueSaver;
24
    }
25
26
    public function __invoke(Request $request): Response
27
    {
28
        $translations = $request->request->all('translations');
29
        $translationValue = $this->translationValueToFormTransformer->reverseTransform($translations);
30
31
        $this->translationValueSaver->saveTranslationValue($translationValue);
0 ignored issues
show
Bug introduced by
It seems like $translationValue can also be of type null; however, parameter $translationValue of Locastic\SymfonyTranslat...:saveTranslationValue() does only seem to accept Locastic\SymfonyTranslat...anslationValueInterface, maybe add an additional type check? ( Ignorable by Annotation )

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

31
        $this->translationValueSaver->saveTranslationValue(/** @scrutinizer ignore-type */ $translationValue);
Loading history...
32
33
        return new Response(null, Response::HTTP_NO_CONTENT);
34
    }
35
}
36