Code Duplication    Length = 36-36 lines in 5 locations

src/Stp/SndApi/News/Command/ArticleCommand.php 1 location

@@ 11-46 (lines=36) @@
8
use Symfony\Component\Console\Input\InputInterface;
9
use Symfony\Component\Console\Output\OutputInterface;
10
11
class ArticleCommand extends BaseCommand
12
{
13
    use NewsClientCommandTrait;
14
15
    protected function configure()
16
    {
17
        parent::configure();
18
19
        $this
20
            ->setName('news:article:id')
21
            ->addArgument(
22
                'id',
23
                InputArgument::REQUIRED,
24
                'Article ID'
25
            );
26
    }
27
28
    /**
29
     * @param InputInterface $input
30
     * @param OutputInterface $output
31
     * @return int
32
     */
33
    protected function execute(InputInterface $input, OutputInterface $output)
34
    {
35
        $newsClient = $this->getNewsClient($input);
36
37
        $articleId = $input->getArgument('id');
38
39
        $result = $newsClient->getArticle($articleId);
40
        $formatter = Formatter::make($result, Formatter::ARR);
41
42
        $output->writeln($formatter->toYaml());
43
44
        return 0;
45
    }
46
}
47

src/Stp/SndApi/News/Command/SearchCollectionCommand.php 1 location

@@ 11-46 (lines=36) @@
8
use Symfony\Component\Console\Input\InputInterface;
9
use Symfony\Component\Console\Output\OutputInterface;
10
11
class SearchCollectionCommand extends BaseCommand
12
{
13
    use NewsClientCommandTrait;
14
15
    protected function configure()
16
    {
17
        parent::configure();
18
19
        $this
20
            ->setName('news:search:collection')
21
            ->addArgument(
22
                'ids',
23
                InputArgument::REQUIRED | InputArgument::IS_ARRAY,
24
                'Content IDs'
25
            );
26
    }
27
28
    /**
29
     * @param InputInterface $input
30
     * @param OutputInterface $output
31
     * @return int
32
     */
33
    protected function execute(InputInterface $input, OutputInterface $output)
34
    {
35
        $newsClient = $this->getNewsClient($input);
36
37
        $contentIds = $input->getArgument('ids');
38
39
        $result = $newsClient->searchByCollection($contentIds);
40
        $formatter = Formatter::make($result, Formatter::ARR);
41
42
        $output->writeln($formatter->toYaml());
43
44
        return 0;
45
    }
46
}
47

src/Stp/SndApi/News/Command/SectionByIdCommand.php 1 location

@@ 11-46 (lines=36) @@
8
use Symfony\Component\Console\Input\InputInterface;
9
use Symfony\Component\Console\Output\OutputInterface;
10
11
class SectionByIdCommand extends BaseCommand
12
{
13
    use NewsClientCommandTrait;
14
15
    protected function configure()
16
    {
17
        parent::configure();
18
19
        $this
20
            ->setName('news:section:id')
21
            ->addArgument(
22
                'id',
23
                InputArgument::REQUIRED,
24
                'Section ID'
25
            );
26
    }
27
28
    /**
29
     * @param InputInterface $input
30
     * @param OutputInterface $output
31
     * @return int
32
     */
33
    protected function execute(InputInterface $input, OutputInterface $output)
34
    {
35
        $newsClient = $this->getNewsClient($input);
36
37
        $sectionId = $input->getArgument('id');
38
39
        $result = $newsClient->getSectionById($sectionId);
40
        $formatter = Formatter::make($result, Formatter::ARR);
41
42
        $output->writeln($formatter->toYaml());
43
44
        return 0;
45
    }
46
}
47

src/Stp/SndApi/News/Command/SectionByUniqueNameCommand.php 1 location

@@ 11-46 (lines=36) @@
8
use Symfony\Component\Console\Input\InputInterface;
9
use Symfony\Component\Console\Output\OutputInterface;
10
11
class SectionByUniqueNameCommand extends BaseCommand
12
{
13
    use NewsClientCommandTrait;
14
15
    protected function configure()
16
    {
17
        parent::configure();
18
19
        $this
20
            ->setName('news:section:uniquename')
21
            ->addArgument(
22
                'name',
23
                InputArgument::REQUIRED,
24
                'Unique section name'
25
            );
26
    }
27
28
    /**
29
     * @param InputInterface $input
30
     * @param OutputInterface $output
31
     * @return int
32
     */
33
    protected function execute(InputInterface $input, OutputInterface $output)
34
    {
35
        $newsClient = $this->getNewsClient($input);
36
37
        $sectionName = $input->getArgument('name');
38
39
        $result = $newsClient->getSectionByUniqueName($sectionName);
40
        $formatter = Formatter::make($result, Formatter::ARR);
41
42
        $output->writeln($formatter->toYaml());
43
44
        return 0;
45
    }
46
}
47

src/Stp/SndApi/News/Command/SubsectionsListCommand.php 1 location

@@ 11-46 (lines=36) @@
8
use Symfony\Component\Console\Input\InputInterface;
9
use Symfony\Component\Console\Output\OutputInterface;
10
11
class SubsectionsListCommand extends BaseCommand
12
{
13
    use NewsClientCommandTrait;
14
15
    protected function configure()
16
    {
17
        parent::configure();
18
19
        $this
20
            ->setName('news:subsections:list')
21
            ->addArgument(
22
                'sectionId',
23
                InputArgument::REQUIRED,
24
                'Section ID'
25
            );
26
    }
27
28
    /**
29
     * @param InputInterface $input
30
     * @param OutputInterface $output
31
     * @return int
32
     */
33
    protected function execute(InputInterface $input, OutputInterface $output)
34
    {
35
        $newsClient = $this->getNewsClient($input);
36
37
        $sectionId = $input->getArgument('sectionId');
38
39
        $result = $newsClient->getSubsectionsList($sectionId);
40
        $formatter = Formatter::make($result, Formatter::ARR);
41
42
        $output->writeln($formatter->toYaml());
43
44
        return 0;
45
    }
46
}
47