SaveTranslationsAction   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 9
c 1
b 0
f 0
dl 0
loc 22
rs 10
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 6 1
A __invoke() 0 8 1
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