Code Duplication    Length = 37-42 lines in 2 locations

src/ElasticaExtraBundle/Command/AddAliasCommand.php 1 location

@@ 15-56 (lines=42) @@
12
 *
13
 * @author gbprod <[email protected]>
14
 */
15
class AddAliasCommand extends ElasticaAwareCommand
16
{
17
    /**
18
     * {@inheritdoc}
19
     */
20
    protected function configure()
21
    {
22
        $this
23
            ->setName('elasticsearch:alias:add')
24
            ->setDescription('Add alias to an index')
25
            ->addArgument('index', InputArgument::REQUIRED, 'Which index ?')
26
            ->addArgument('alias', InputArgument::REQUIRED, 'Alias name')
27
            ->addOption('replace', null, InputOption::VALUE_NONE, 'If set, an existing alias will be replaced')
28
            ->addOption('client', null, InputOption::VALUE_REQUIRED, 'Client to use (if not default)', null)
29
        ;
30
    }
31
32
    /**
33
     * {@inheritdoc}
34
     */
35
    protected function execute(InputInterface $input, OutputInterface $output)
36
    {
37
        $client  = $this->getClient($input->getOption('client'));
38
        $index   = $input->getArgument('index');
39
        $alias   = $input->getArgument('alias');
40
        $replace = $input->getOption('replace');
41
42
        $output->writeln(sprintf(
43
            '<info>Add alias <comment>%s</comment> for index <comment>%s</comment></info>',
44
            $alias,
45
            $index
46
        ));
47
48
        $this
49
            ->getContainer()
50
            ->get('gbprod.elastica_extra.add_alias_handler')
51
            ->handle($client, $index, $alias, $replace);
52
        ;
53
54
        $output->writeln('done');
55
    }
56
}
57

src/ElasticaExtraBundle/Command/PutIndexMappingsCommand.php 1 location

@@ 15-51 (lines=37) @@
12
 *
13
 * @author gbprod <[email protected]>
14
 */
15
class PutIndexMappingsCommand extends ElasticaAwareCommand
16
{
17
    protected function configure()
18
    {
19
        $this
20
            ->setName('elasticsearch:index:put_mappings')
21
            ->setDescription('Put index mappings from configuration')
22
            ->addArgument('index', InputArgument::REQUIRED, 'Which index ?')
23
            ->addArgument('type', InputArgument::REQUIRED, 'Which type ?')
24
            ->addOption('client', null, InputOption::VALUE_REQUIRED, 'Client to use (if not default)', null)
25
        ;
26
    }
27
28
    protected function execute(InputInterface $input, OutputInterface $output)
29
    {
30
        $client = $this->getClient($input->getOption('client'));
31
        $index  = $input->getArgument('index');
32
        $type   = $input->getArgument('type');
33
34
        $output->writeln(sprintf(
35
            '<info>Put type <comment>%s</comment> mappings for index <comment>%s</comment> '.
36
            'client <comment>%s</comment>...</info>',
37
            $type,
38
            $index,
39
            $input->getOption('client')
40
        ));
41
42
        $handler = $this
43
            ->getContainer()
44
            ->get('gbprod.elastica_extra.put_index_mappings_handler')
45
        ;
46
47
        $handler->handle($client, $index, $type);
48
49
        $output->writeln('done');
50
    }
51
}
52